提交 0a2e980d 编写于 作者: J Jeremy Kemper

Fix migration test when run in GMT zone. Closes #11477 [thechrisoshow]


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@9175 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
上级 d950addb
......@@ -357,10 +357,16 @@ def test_native_types
# Test DateTime column and defaults, including timezone.
# FIXME: moment of truth may be Time on 64-bit platforms.
if bob.moment_of_truth.is_a?(DateTime)
assert_equal DateTime.local_offset, bob.moment_of_truth.offset
assert_not_equal 0, bob.moment_of_truth.offset
assert_not_equal "Z", bob.moment_of_truth.zone
assert_equal DateTime::ITALY, bob.moment_of_truth.start
with_env_tz 'US/Eastern' do
assert_equal DateTime.local_offset, bob.moment_of_truth.offset
assert_not_equal 0, bob.moment_of_truth.offset
assert_not_equal "Z", bob.moment_of_truth.zone
# US/Eastern is -5 hours from GMT
assert_equal Rational(-5, 24), bob.moment_of_truth.offset
assert_equal "-05:00", bob.moment_of_truth.zone
assert_equal DateTime::ITALY, bob.moment_of_truth.start
end
end
assert_equal TrueClass, bob.male?.class
......@@ -960,6 +966,15 @@ def test_create_table_with_custom_sequence_name
Person.connection.execute("select suitably_short_seq.nextval from dual")
end
end
protected
def with_env_tz(new_tz = 'US/Eastern')
old_tz, ENV['TZ'] = ENV['TZ'], new_tz
yield
ensure
old_tz ? ENV['TZ'] = old_tz : ENV.delete('TZ')
end
end
uses_mocha 'Sexy migration tests' do
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册