Commit e021f7019f269a3e98f262676689ff9966c64701

Authored by Leandro Santos
1 parent 180ad529

change event start date and ende date to datetime

app/controllers/public/search_controller.rb
... ... @@ -92,10 +92,10 @@ class SearchController < PublicController
92 92  
93 93 def events
94 94 if params[:year].blank? && params[:year].blank? && params[:day].blank?
95   - @date = Date.today
  95 + @date = DateTime.now
96 96 else
97   - year = (params[:year] ? params[:year].to_i : Date.today.year)
98   - month = (params[:month] ? params[:month].to_i : Date.today.month)
  97 + year = (params[:year] ? params[:year].to_i : DateTime.now.year)
  98 + month = (params[:month] ? params[:month].to_i : DateTime.now.month)
99 99 day = (params[:day] ? params[:day].to_i : 1)
100 100 @date = build_date(year, month, day)
101 101 end
... ... @@ -106,9 +106,7 @@ class SearchController < PublicController
106 106 @events = @category ?
107 107 environment.events.by_day(@date).in_category(Category.find(@category_id)).paginate(:per_page => per_page, :page => params[:page]) :
108 108 environment.events.by_day(@date).paginate(:per_page => per_page, :page => params[:page])
109   - end
110   -
111   - if params[:year] || params[:month]
  109 + elsif params[:year] || params[:month]
112 110 @events = @category ?
113 111 environment.events.by_month(@date).in_category(Category.find(@category_id)).paginate(:per_page => per_page, :page => params[:page]) :
114 112 environment.events.by_month(@date).paginate(:per_page => per_page, :page => params[:page])
... ...
app/helpers/dates_helper.rb
... ... @@ -43,9 +43,14 @@ module DatesHelper
43 43 end
44 44  
45 45 # formats a datetime for displaying.
46   - def show_time(time)
47   - if time
  46 + def show_time(time, use_numbers = true, year = true, left_time = false)
  47 + if time && use_numbers
48 48 _('%{day} %{month} %{year}, %{hour}:%{minutes}') % { :year => time.year, :month => month_name(time.month), :day => time.day, :hour => time.hour, :minutes => time.strftime("%M") }
  49 + elsif time && left_time
  50 + date_format = time_ago_in_words(time)
  51 + elsif time
  52 + date_format = year ? _('%{month_name} %{day}, %{year} %{hour}:%{minutes}') : _('%{month_name} %{day} %{hour}:%{minutes}')
  53 + date_format % { :day => time.day, :month_name => month_name(time.month), :year => time.year, :hour => time.hour, :minutes => time.strftime("%M") }
49 54 else
50 55 ''
51 56 end
... ... @@ -53,7 +58,7 @@ module DatesHelper
53 58  
54 59 def show_period(date1, date2 = nil, use_numbers = false)
55 60 if (date1 == date2) || (date2.nil?)
56   - show_date(date1, use_numbers)
  61 + show_time(date1, use_numbers)
57 62 else
58 63 if date1.year == date2.year
59 64 if date1.month == date2.month
... ... @@ -106,18 +111,18 @@ module DatesHelper
106 111  
107 112 def build_date(year, month, day = 1)
108 113 if year.blank? and month.blank? and day.blank?
109   - Date.today
  114 + DateTime.now
110 115 else
111 116 if year.blank?
112   - year = Date.today.year
  117 + year = DateTime.now.year
113 118 end
114 119 if month.blank?
115   - month = Date.today.month
  120 + month = DateTime.now.month
116 121 end
117 122 if day.blank?
118 123 day = 1
119 124 end
120   - Date.new(year.to_i, month.to_i, day.to_i)
  125 + DateTime.new(year.to_i, month.to_i, day.to_i)
121 126 end
122 127 end
123 128  
... ...
app/helpers/events_helper.rb
... ... @@ -16,7 +16,7 @@ module EventsHelper
16 16  
17 17 content_tag( 'tr',
18 18 content_tag('td',
19   - content_tag('div', show_date(article.start_date) + ( article.end_date.nil? ? '' : (_(" to ") + show_date(article.end_date))),:class => 'event-date' ) +
  19 + content_tag('div', show_time(article.start_date) + ( article.end_date.nil? ? '' : (_(" to ") + show_time(article.end_date))),:class => 'event-date' ) +
20 20 content_tag('div',link_to(article.name,article.url),:class => 'event-title') +
21 21 content_tag('div',(article.address.nil? or article.address == '') ? '' : (_('Place: ') + article.address),:class => 'event-place')
22 22 )
... ...
app/models/event.rb
... ... @@ -23,7 +23,7 @@ class Event < Article
23 23  
24 24 def initialize(*args)
25 25 super(*args)
26   - self.start_date ||= Date.today
  26 + self.start_date ||= DateTime.now
27 27 end
28 28  
29 29 validates_presence_of :title, :start_date
... ... @@ -35,7 +35,7 @@ class Event < Article
35 35 end
36 36  
37 37 scope :by_day, lambda { |date|
38   - { :conditions => ['start_date = :date AND end_date IS NULL OR (start_date <= :date AND end_date >= :date)', {:date => date}],
  38 + { :conditions => [' start_date >= :start_date AND start_date <= :end_date AND end_date IS NULL OR (start_date <= :end_date AND end_date >= :start_date)', {:start_date => date.beginning_of_day, :end_date => date.end_of_day}],
39 39 :order => 'start_date ASC'
40 40 }
41 41 }
... ... @@ -80,7 +80,7 @@ class Event &lt; Article
80 80  
81 81 def self.date_range(year, month)
82 82 if year.nil? || month.nil?
83   - today = Date.today
  83 + today = DateTime.now
84 84 year = today.year
85 85 month = today.month
86 86 else
... ... @@ -88,7 +88,7 @@ class Event &lt; Article
88 88 month = month.to_i
89 89 end
90 90  
91   - first_day = Date.new(year, month, 1)
  91 + first_day = DateTime.new(year, month, 1)
92 92 last_day = first_day + 1.month - 1.day
93 93  
94 94 first_day..last_day
... ...
app/views/cms/_event.html.erb
... ... @@ -8,9 +8,9 @@
8 8 <%= render :partial => 'general_fields' %>
9 9 <%= render :partial => 'translatable' %>
10 10  
11   -<%= labelled_form_field(_('Start date'), pick_date(:article, :start_date)) %>
  11 +<%= labelled_form_field(_('Start date'), date_field('article[start_date]', @article.start_date,_('%Y-%m-%d'), {:time => true}, {:id => 'article_start_date'} )) %>
12 12  
13   -<%= labelled_form_field(_('End date'), pick_date(:article, :end_date)) %>
  13 +<%= labelled_form_field(_('End date'), date_field('article[end_date]', @article.end_date, _('%Y-%m-%d'), {:time => true}, {:id => 'article_end_date'})) %>
14 14  
15 15 <%= labelled_form_field(_('Event website:'), text_field(:article, :link)) %>
16 16  
... ...
db/migrate/20150722042714_change_article_date_to_datetime.rb 0 → 100644
... ... @@ -0,0 +1,27 @@
  1 +class ChangeArticleDateToDatetime < ActiveRecord::Migration
  2 +
  3 + def up
  4 + change_table :articles do |t|
  5 + t.change :start_date, :datetime
  6 + t.change :end_date, :datetime
  7 + end
  8 +
  9 + change_table :article_versions do |t|
  10 + t.change :start_date, :datetime
  11 + t.change :end_date, :datetime
  12 + end
  13 + end
  14 +
  15 + def down
  16 + change_table :articles do |t|
  17 + t.change :start_date, :date
  18 + t.change :end_date, :date
  19 + end
  20 +
  21 + change_table :article_versions do |t|
  22 + t.change :start_date, :date
  23 + t.change :end_date, :date
  24 + end
  25 + end
  26 +
  27 +end
... ...
public/designs/themes/base/style.scss
... ... @@ -1505,7 +1505,8 @@ table#recaptcha_table tr:hover td {
1505 1505  
1506 1506 .event-date {
1507 1507 background: url('/images/calendar_date_select/calendar-icon.png') no-repeat left center;
1508   - padding: 5px;
  1508 + padding: 2px;
  1509 + padding-left: 15px;
1509 1510 }
1510 1511  
1511 1512 .event-link {
... ...
test/functional/events_controller_test.rb
... ... @@ -8,12 +8,12 @@ class EventsControllerTest &lt; ActionController::TestCase
8 8 attr_reader :profile
9 9  
10 10 should 'list today events by default' do
11   - profile.events << Event.new(:name => 'Joao Birthday', :start_date => Date.today)
12   - profile.events << Event.new(:name => 'Maria Birthday', :start_date => Date.today)
  11 + profile.events << Event.new(:name => 'Joao Birthday', :start_date => DateTime.now)
  12 + profile.events << Event.new(:name => 'Maria Birthday', :start_date => DateTime.now)
13 13  
14 14 get :events, :profile => profile.identifier
15 15  
16   - today = Date.today.strftime("%B %d, %Y")
  16 + today = DateTime.now.strftime("%B %d, %Y")
17 17 assert_tag :tag => 'div', :attributes => {:id => "agenda-items"},
18 18 :descendant => {:tag => 'h3', :content => "Events for #{today}"},
19 19 :descendant => {:tag => 'tr', :content => "Joao Birthday"},
... ... @@ -23,15 +23,15 @@ class EventsControllerTest &lt; ActionController::TestCase
23 23 should 'display calendar of current month' do
24 24 get :events, :profile => profile.identifier
25 25  
26   - month = Date.today.strftime("%B %Y")
  26 + month = DateTime.now.strftime("%B %Y")
27 27 assert_tag :tag => 'table', :attributes => {:class => /current-month/}, :descendant => {:tag => 'caption', :content => /#{month}/}
28 28 end
29 29  
30 30 should 'display links to previous and next month' do
31 31 get :events, :profile => profile.identifier
32 32  
33   - prev_month = Date.today - 1.month
34   - next_month = Date.today + 1.month
  33 + prev_month = DateTime.now - 1.month
  34 + next_month = DateTime.now + 1.month
35 35 prev_month_name = prev_month.strftime("%B")
36 36 next_month_name = next_month.strftime("%B")
37 37 assert_tag :tag =>'a', :attributes => {:href => "/profile/#{profile.identifier}/events/#{prev_month.year}/#{prev_month.month}"}, :content => prev_month_name
... ... @@ -40,14 +40,14 @@ class EventsControllerTest &lt; ActionController::TestCase
40 40  
41 41 should 'see the events paginated' do
42 42 30.times do |i|
43   - profile.events << Event.new(:name => "Lesson #{i}", :start_date => Date.today)
  43 + profile.events << Event.new(:name => "Lesson #{i}", :start_date => DateTime.now)
44 44 end
45 45 get :events, :profile => profile.identifier
46 46 assert_equal 20, assigns(:events).size
47 47 end
48 48  
49 49 should 'show events of specific day' do
50   - profile.events << Event.new(:name => 'Joao Birthday', :start_date => Date.new(2009, 10, 28))
  50 + profile.events << Event.new(:name => 'Joao Birthday', :start_date => DateTime.new(2009, 10, 28))
51 51  
52 52 get :events_by_day, :profile => profile.identifier, :year => 2009, :month => 10, :day => 28
53 53  
... ...
test/functional/search_controller_test.rb
... ... @@ -305,7 +305,7 @@ class SearchControllerTest &lt; ActionController::TestCase
305 305  
306 306 should 'search for events' do
307 307 person = create_user('teste').person
308   - event = create_event(person, :name => 'an event to be found', :start_date => Date.today)
  308 + event = create_event(person, :name => 'an event to be found', :start_date => DateTime.now)
309 309  
310 310 get :events, :query => 'event to be found'
311 311  
... ... @@ -314,10 +314,10 @@ class SearchControllerTest &lt; ActionController::TestCase
314 314  
315 315 should 'return events of the day' do
316 316 person = create_user('someone').person
317   - ten_days_ago = Date.today - 10.day
  317 + ten_days_ago = DateTime.now - 10.day
318 318  
319 319 ev1 = create_event(person, :name => 'event 1', :category_ids => [@category.id], :start_date => ten_days_ago)
320   - ev2 = create_event(person, :name => 'event 2', :category_ids => [@category.id], :start_date => Date.today - 2.month)
  320 + ev2 = create_event(person, :name => 'event 2', :category_ids => [@category.id], :start_date => DateTime.now - 2.month)
321 321  
322 322 get :events, :day => ten_days_ago.day, :month => ten_days_ago.month, :year => ten_days_ago.year
323 323 assert_equal [ev1], assigns(:events)
... ... @@ -325,9 +325,11 @@ class SearchControllerTest &lt; ActionController::TestCase
325 325  
326 326 should 'return events of the day with category' do
327 327 person = create_user('someone').person
328   - ten_days_ago = Date.today - 10.day
  328 + ten_days_ago = DateTime.now - 10.day
329 329  
330   - ev1 = create_event(person, :name => 'event 1', :category_ids => [@category.id], :start_date => ten_days_ago)
  330 + ev1 = create_event(person, :name => 'event 1', :start_date => ten_days_ago)
  331 + ev1.categories = [@category]
  332 +
331 333 ev2 = create_event(person, :name => 'event 2', :start_date => ten_days_ago)
332 334  
333 335 get :events, :day => ten_days_ago.day, :month => ten_days_ago.month, :year => ten_days_ago.year, :category_path => @category.path.split('/')
... ... @@ -337,8 +339,8 @@ class SearchControllerTest &lt; ActionController::TestCase
337 339  
338 340 should 'return events of today when no date specified' do
339 341 person = create_user('someone').person
340   - ev1 = create_event(person, :name => 'event 1', :category_ids => [@category.id], :start_date => Date.today)
341   - ev2 = create_event(person, :name => 'event 2', :category_ids => [@category.id], :start_date => Date.today - 2.month)
  342 + ev1 = create_event(person, :name => 'event 1', :category_ids => [@category.id], :start_date => DateTime.now)
  343 + ev2 = create_event(person, :name => 'event 2', :category_ids => [@category.id], :start_date => DateTime.now - 2.month)
342 344  
343 345 get :events
344 346  
... ... @@ -349,9 +351,9 @@ class SearchControllerTest &lt; ActionController::TestCase
349 351 person = create_user('someone').person
350 352  
351 353 ev1 = create_event(person, :name => 'event 1', :category_ids => [@category.id],
352   - :start_date => Date.today + 2.month)
  354 + :start_date => DateTime.now + 2.month)
353 355 ev2 = create_event(person, :name => 'event 2', :category_ids => [@category.id],
354   - :start_date => Date.today + 2.day)
  356 + :start_date => DateTime.now + 2.day)
355 357  
356 358 get :events
357 359  
... ... @@ -362,8 +364,8 @@ class SearchControllerTest &lt; ActionController::TestCase
362 364 should 'list events for a given month' do
363 365 person = create_user('testuser').person
364 366  
365   - create_event(person, :name => 'upcoming event 1', :category_ids => [@category.id], :start_date => Date.new(2008, 1, 25))
366   - create_event(person, :name => 'upcoming event 2', :category_ids => [@category.id], :start_date => Date.new(2008, 4, 27))
  367 + create_event(person, :name => 'upcoming event 1', :category_ids => [@category.id], :start_date => DateTime.new(2008, 1, 25))
  368 + create_event(person, :name => 'upcoming event 2', :category_ids => [@category.id], :start_date => DateTime.new(2008, 4, 27))
367 369  
368 370 get :events, :year => '2008', :month => '1'
369 371  
... ... @@ -373,7 +375,7 @@ class SearchControllerTest &lt; ActionController::TestCase
373 375 should 'see the events paginated' do
374 376 person = create_user('testuser').person
375 377 30.times do |i|
376   - create_event(person, :name => "Event #{i}", :start_date => Date.today)
  378 + create_event(person, :name => "Event #{i}", :start_date => DateTime.now)
377 379 end
378 380 get :events
379 381 assert_equal 20, assigns(:events).size
... ... @@ -416,7 +418,7 @@ class SearchControllerTest &lt; ActionController::TestCase
416 418 end
417 419  
418 420 should 'display current year/month by default as caption of current month' do
419   - Date.expects(:today).returns(Date.new(2008, 8, 1)).at_least_once
  421 + DateTime.expects(:now).returns(DateTime.new(2008, 8, 1)).at_least_once
420 422  
421 423 get :events
422 424 assert_tag :tag => 'table', :attributes => {:class => /current-month/}, :descendant => {:tag => 'caption', :content => /August 2008/}
... ... @@ -475,7 +477,7 @@ class SearchControllerTest &lt; ActionController::TestCase
475 477  
476 478 should 'show events of specific day' do
477 479 person = create_user('anotheruser').person
478   - event = create_event(person, :name => 'Joao Birthday', :start_date => Date.new(2009, 10, 28))
  480 + event = create_event(person, :name => 'Joao Birthday', :start_date => DateTime.new(2009, 10, 28))
479 481  
480 482 get :events_by_day, :year => 2009, :month => 10, :day => 28
481 483  
... ... @@ -484,8 +486,8 @@ class SearchControllerTest &lt; ActionController::TestCase
484 486  
485 487 should 'ignore filter of events if category not exists' do
486 488 person = create_user('anotheruser').person
487   - create_event(person, :name => 'Joao Birthday', :start_date => Date.new(2009, 10, 28), :category_ids => [@category.id])
488   - create_event(person, :name => 'Maria Birthday', :start_date => Date.new(2009, 10, 28))
  489 + create_event(person, :name => 'Joao Birthday', :start_date => DateTime.new(2009, 10, 28), :category_ids => [@category.id])
  490 + create_event(person, :name => 'Maria Birthday', :start_date => DateTime.new(2009, 10, 28))
489 491  
490 492 id_of_unexistent_category = Category.last.id + 10
491 493  
... ... @@ -772,7 +774,7 @@ class SearchControllerTest &lt; ActionController::TestCase
772 774 protected
773 775  
774 776 def create_event(profile, options)
775   - ev = build(Event, { :name => 'some event', :start_date => Date.new(2008,1,1) }.merge(options))
  777 + ev = build(Event, { :name => 'some event', :start_date => DateTime.new(2008,1,1) }.merge(options))
776 778 ev.profile = profile
777 779 ev.save!
778 780 ev
... ...
test/unit/dates_helper_test.rb
... ... @@ -84,7 +84,7 @@ class DatesHelperTest &lt; ActiveSupport::TestCase
84 84 end
85 85  
86 86 should 'fallback to current year/month in show_month' do
87   - Date.expects(:today).returns(Date.new(2008,11,1)).at_least_once
  87 + DateTime.expects(:now).returns(DateTime.new(2008,11,1)).at_least_once
88 88 assert_equal 'November 2008', show_month(nil, nil)
89 89 assert_equal 'November 2008', show_month('', '')
90 90 end
... ...
test/unit/event_test.rb
... ... @@ -29,15 +29,9 @@ class EventTest &lt; ActiveSupport::TestCase
29 29 assert_equal 'South Noosfero street, 88', e.address
30 30 end
31 31  
32   - should 'have a start date' do
33   - e = Event.new
34   - e.start_date = Date.today
35   - assert_kind_of Date, e.start_date
36   - end
37   -
38 32 should 'set start date default value as today' do
39 33 e = Event.new
40   - assert_equal Date.today, e.start_date
  34 + assert_in_delta DateTime.now.to_i, e.start_date.to_i, 1
41 35 end
42 36  
43 37 should 'require start date' do
... ... @@ -45,38 +39,32 @@ class EventTest &lt; ActiveSupport::TestCase
45 39 e.start_date = nil
46 40 e.valid?
47 41 assert e.errors[:start_date.to_s].present?
48   - e.start_date = Date.today
  42 + e.start_date = DateTime.now
49 43 e.valid?
50 44 refute e.errors[:start_date.to_s].present?
51 45 end
52 46  
53   - should 'have a end date' do
54   - e = Event.new
55   - e.end_date = Date.today
56   - assert_kind_of Date, e.end_date
57   - end
58   -
59 47 should 'use its own icon' do
60 48 assert_equal 'event', Event.icon_name
61 49 end
62 50  
63 51 should 'not allow end date before start date' do
64   - e = build(Event, :start_date => Date.new(2008, 01, 01), :end_date => Date.new(2007,01,01))
  52 + e = build(Event, :start_date => DateTime.new(2008, 01, 01), :end_date => DateTime.new(2007,01,01))
65 53 e.valid?
66 54 assert e.errors[:start_date.to_s].present?
67 55  
68   - e.end_date = Date.new(2008,01,05)
  56 + e.end_date = DateTime.new(2008,01,05)
69 57 e.valid?
70 58 refute e.errors[:start_date.to_s].present?
71 59 end
72 60  
73 61 should 'find by range of dates' do
74 62 profile = create_user('testuser').person
75   - e1 = create(Event, :name => 'e1', :start_date => Date.new(2008,1,1), :profile => profile)
76   - e2 = create(Event, :name => 'e2', :start_date => Date.new(2008,2,1), :profile => profile)
77   - e3 = create(Event, :name => 'e3', :start_date => Date.new(2008,3,1), :profile => profile)
  63 + e1 = create(Event, :name => 'e1', :start_date => DateTime.new(2008,1,1), :profile => profile)
  64 + e2 = create(Event, :name => 'e2', :start_date => DateTime.new(2008,2,1), :profile => profile)
  65 + e3 = create(Event, :name => 'e3', :start_date => DateTime.new(2008,3,1), :profile => profile)
78 66  
79   - found = Event.by_range(Date.new(2008, 1, 1)..Date.new(2008, 2, 28))
  67 + found = Event.by_range(DateTime.new(2008, 1, 1)..DateTime.new(2008, 2, 28))
80 68 assert_includes found, e1
81 69 assert_includes found, e2
82 70 assert_not_includes found, e3
... ... @@ -84,32 +72,32 @@ class EventTest &lt; ActiveSupport::TestCase
84 72  
85 73 should 'filter events by range' do
86 74 profile = create_user('testuser').person
87   - e1 = create(Event, :name => 'e1', :start_date => Date.new(2008,1,15), :profile => profile)
88   - assert_includes profile.events.by_range(Date.new(2008, 1, 10)..Date.new(2008, 1, 20)), e1
  75 + e1 = create(Event, :name => 'e1', :start_date => DateTime.new(2008,1,15), :profile => profile)
  76 + assert_includes profile.events.by_range(DateTime.new(2008, 1, 10)..DateTime.new(2008, 1, 20)), e1
89 77 end
90 78  
91 79 should 'provide period for searching in month' do
92   - assert_equal Date.new(2008, 1, 1)..Date.new(2008,1,31), Event.date_range(2008, 1)
93   - assert_equal Date.new(2008, 2, 1)..Date.new(2008,2,29), Event.date_range(2008, 2)
94   - assert_equal Date.new(2007, 2, 1)..Date.new(2007,2,28), Event.date_range(2007, 2)
  80 + assert_equal DateTime.new(2008, 1, 1)..DateTime.new(2008,1,31), Event.date_range(2008, 1)
  81 + assert_equal DateTime.new(2008, 2, 1)..DateTime.new(2008,2,29), Event.date_range(2008, 2)
  82 + assert_equal DateTime.new(2007, 2, 1)..DateTime.new(2007,2,28), Event.date_range(2007, 2)
95 83 end
96 84  
97 85 should 'support string arguments to Event#date_range' do
98   - assert_equal Date.new(2008,1,1)..Date.new(2008,1,31), Event.date_range('2008', '1')
  86 + assert_equal DateTime.new(2008,1,1)..DateTime.new(2008,1,31), Event.date_range('2008', '1')
99 87 end
100 88  
101 89 should 'provide range of dates for event with both dates filled' do
102   - e = build(Event, :start_date => Date.new(2008, 1, 1), :end_date => Date.new(2008, 1, 5))
103   - assert_equal (Date.new(2008,1,1)..Date.new(2008,1,5)), e.date_range
  90 + e = build(Event, :start_date => DateTime.new(2008, 1, 1), :end_date => DateTime.new(2008, 1, 5))
  91 + assert_equal (DateTime.new(2008,1,1)..DateTime.new(2008,1,5)), e.date_range
104 92 end
105 93  
106 94 should 'provide range of dates for event with only start date' do
107   - e = build(Event, :start_date => Date.new(2008, 1, 1))
108   - assert_equal (Date.new(2008,1,1)..Date.new(2008,1,1)), e.date_range
  95 + e = build(Event, :start_date => DateTime.new(2008, 1, 1))
  96 + assert_equal (DateTime.new(2008,1,1)..DateTime.new(2008,1,1)), e.date_range
109 97 end
110 98  
111 99 should 'provide nice display format' do
112   - event = build(Event, :start_date => Date.new(2008,1,1), :end_date => Date.new(2008,1,1), :link => 'http://www.myevent.org', :body => '<p>my somewhat short description</p>')
  100 + event = build(Event, :start_date => DateTime.new(2008,1,1), :end_date => DateTime.new(2008,1,1), :link => 'http://www.myevent.org', :body => '<p>my somewhat short description</p>')
113 101 display = instance_eval(&event.to_html)
114 102  
115 103 assert_tag_in_string display, :content => Regexp.new("January 1, 2008")
... ... @@ -148,7 +136,7 @@ class EventTest &lt; ActiveSupport::TestCase
148 136 profile = create_user('testuser').person
149 137 event = create(Event, :profile => profile, :name => 'test',
150 138 :body => '<p>first paragraph </p><p>second paragraph </p>',
151   - :link => 'www.colivre.coop.br', :start_date => Date.today)
  139 + :link => 'www.colivre.coop.br', :start_date => DateTime.now)
152 140  
153 141 assert_match '<p>first paragraph </p>', event.first_paragraph
154 142 end
... ... @@ -161,7 +149,7 @@ class EventTest &lt; ActiveSupport::TestCase
161 149  
162 150 should 'filter HTML in body' do
163 151 profile = create_user('testuser').person
164   - e = create(Event, :profile => profile, :name => 'test', :body => '<p>a paragraph (valid)</p><script type="text/javascript">/* this is invalid */</script>"', :link => 'www.colivre.coop.br', :start_date => Date.today)
  152 + e = create(Event, :profile => profile, :name => 'test', :body => '<p>a paragraph (valid)</p><script type="text/javascript">/* this is invalid */</script>"', :link => 'www.colivre.coop.br', :start_date => DateTime.now)
165 153  
166 154 assert_tag_in_string e.body, :tag => 'p', :content => 'a paragraph (valid)'
167 155 assert_no_tag_in_string e.body, :tag => 'script'
... ... @@ -169,7 +157,7 @@ class EventTest &lt; ActiveSupport::TestCase
169 157  
170 158 should 'filter HTML in name' do
171 159 profile = create_user('testuser').person
172   - e = create(Event, :profile => profile, :name => '<p>a paragraph (valid)</p><script type="text/javascript">/* this is invalid */</script>"', :link => 'www.colivre.coop.br', :start_date => Date.today)
  160 + e = create(Event, :profile => profile, :name => '<p>a paragraph (valid)</p><script type="text/javascript">/* this is invalid */</script>"', :link => 'www.colivre.coop.br', :start_date => DateTime.now)
173 161  
174 162 assert_tag_in_string e.name, :tag => 'p', :content => 'a paragraph (valid)'
175 163 assert_no_tag_in_string e.name, :tag => 'script'
... ... @@ -184,8 +172,8 @@ class EventTest &lt; ActiveSupport::TestCase
184 172  
185 173 should 'list all events' do
186 174 profile = fast_create(Profile)
187   - event1 = build(Event, :name => 'Ze Birthday', :start_date => Date.today)
188   - event2 = build(Event, :name => 'Mane Birthday', :start_date => Date.today >> 1)
  175 + event1 = build(Event, :name => 'Ze Birthday', :start_date => DateTime.now)
  176 + event2 = build(Event, :name => 'Mane Birthday', :start_date => DateTime.now >> 1)
189 177 profile.events << [event1, event2]
190 178 assert_includes profile.events, event1
191 179 assert_includes profile.events, event2
... ... @@ -194,7 +182,7 @@ class EventTest &lt; ActiveSupport::TestCase
194 182 should 'list events by day' do
195 183 profile = fast_create(Profile)
196 184  
197   - today = Date.today
  185 + today = DateTime.now
198 186 yesterday_event = build(Event, :name => 'Joao Birthday', :start_date => today - 1.day)
199 187 today_event = build(Event, :name => 'Ze Birthday', :start_date => today)
200 188 tomorrow_event = build(Event, :name => 'Mane Birthday', :start_date => today + 1.day)
... ... @@ -207,7 +195,7 @@ class EventTest &lt; ActiveSupport::TestCase
207 195 should 'list events by month' do
208 196 profile = fast_create(Profile)
209 197  
210   - today = Date.new(2013, 10, 6)
  198 + today = DateTime.new(2013, 10, 6)
211 199  
212 200 last_month_event = Event.new(:name => 'Joao Birthday', :start_date => today - 1.month)
213 201  
... ... @@ -230,7 +218,7 @@ class EventTest &lt; ActiveSupport::TestCase
230 218 should 'event by month ordered by start date'do
231 219 profile = fast_create(Profile)
232 220  
233   - today = Date.new(2013, 10, 6)
  221 + today = DateTime.new(2013, 10, 6)
234 222  
235 223 event_1 = Event.new(:name => 'Maria Birthday', :start_date => today + 1.day)
236 224 event_2 = Event.new(:name => 'Joana Birthday', :start_date => today - 1.day)
... ... @@ -248,7 +236,7 @@ class EventTest &lt; ActiveSupport::TestCase
248 236 should 'list events in a range' do
249 237 profile = fast_create(Profile)
250 238  
251   - today = Date.today
  239 + today = DateTime.now
252 240 event_in_range = build(Event, :name => 'Noosfero Conference', :start_date => today - 2.day, :end_date => today + 2.day)
253 241 event_in_day = build(Event, :name => 'Ze Birthday', :start_date => today)
254 242  
... ... @@ -262,7 +250,7 @@ class EventTest &lt; ActiveSupport::TestCase
262 250 should 'not list events out of range' do
263 251 profile = fast_create(Profile)
264 252  
265   - today = Date.today
  253 + today = DateTime.now
266 254 event_in_range1 = build(Event, :name => 'Foswiki Conference', :start_date => today - 2.day, :end_date => today + 2.day)
267 255 event_in_range2 = build(Event, :name => 'Debian Conference', :start_date => today - 2.day, :end_date => today + 3.day)
268 256 event_out_of_range = build(Event, :name => 'Ze Birthday', :start_date => today - 5.day, :end_date => today - 3.day)
... ...
test/unit/profile_test.rb
... ... @@ -1573,7 +1573,7 @@ class ProfileTest &lt; ActiveSupport::TestCase
1573 1573 should 'list events by day' do
1574 1574 profile = fast_create(Profile)
1575 1575  
1576   - today = Date.today
  1576 + today = DateTime.now
1577 1577 yesterday_event = Event.new(:name => 'Joao Birthday', :start_date => today - 1.day)
1578 1578 today_event = Event.new(:name => 'Ze Birthday', :start_date => today)
1579 1579 tomorrow_event = Event.new(:name => 'Mane Birthday', :start_date => today + 1.day)
... ... @@ -1599,7 +1599,7 @@ class ProfileTest &lt; ActiveSupport::TestCase
1599 1599 should 'list events in a range' do
1600 1600 profile = fast_create(Profile)
1601 1601  
1602   - today = Date.today
  1602 + today = DateTime.now
1603 1603 event_in_range = Event.new(:name => 'Noosfero Conference', :start_date => today - 2.day, :end_date => today + 2.day)
1604 1604 event_in_day = Event.new(:name => 'Ze Birthday', :start_date => today)
1605 1605  
... ...