aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/date_time_test.rb
diff options
context:
space:
mode:
Diffstat (limited to 'activerecord/test/cases/date_time_test.rb')
-rw-r--r--activerecord/test/cases/date_time_test.rb37
1 files changed, 37 insertions, 0 deletions
diff --git a/activerecord/test/cases/date_time_test.rb b/activerecord/test/cases/date_time_test.rb
new file mode 100644
index 0000000000..20020b24cc
--- /dev/null
+++ b/activerecord/test/cases/date_time_test.rb
@@ -0,0 +1,37 @@
+require 'abstract_unit'
+require 'fixtures/topic'
+require 'fixtures/task'
+
+class DateTimeTest < ActiveSupport::TestCase
+ def test_saves_both_date_and_time
+ time_values = [1807, 2, 10, 15, 30, 45]
+ now = DateTime.civil(*time_values)
+
+ task = Task.new
+ task.starting = now
+ task.save!
+
+ # check against Time.local_time, since some platforms will return a Time instead of a DateTime
+ assert_equal Time.local_time(*time_values), Task.find(task.id).starting
+ end
+
+ def test_assign_empty_date_time
+ task = Task.new
+ task.starting = ''
+ task.ending = nil
+ assert_nil task.starting
+ assert_nil task.ending
+ end
+
+ def test_assign_empty_date
+ topic = Topic.new
+ topic.last_read = ''
+ assert_nil topic.last_read
+ end
+
+ def test_assign_empty_time
+ topic = Topic.new
+ topic.bonus_time = ''
+ assert_nil topic.bonus_time
+ end
+end