def test_unfake(self): # This test will fail when run exactly on 2011/11/11! datetime = fake_datetime.fake_datetime() try: t = datetime.datetime.now() self.assertTrue(t.year == 2011 and t.month == 11 and t.day == 11, t) t = time.time() self.assertEqual(1320998400, int(time.time() / 3600) * 3600) finally: datetime = fake_datetime.unfake_datetime() t = datetime.datetime.now() self.assertTrue(t.year != 2011 or t.month != 11 or t.day != 11, t) t = time.time() self.assertNotEqual(1320998400, int(time.time() / 3600) * 3600)
def test_helper_module_now_with_no_local_fake(self): """Even if the fake is turned off here, the helper should use it.""" global datetime datetime = fake_datetime.unfake_datetime() self.assert_is_fake_now(fake_datetime_test_helper.global_now) self.assert_is_fake_now(fake_datetime_test_helper.now_fn())
def tearDown(self): global datetime datetime = fake_datetime.unfake_datetime()
# Do this first so everyone sees the faked version of datetime. Also # to verify that the 'import datetime' below doesn't override our # fake. from testutil import fake_datetime fake_datetime.fake_datetime() # Verify this gives us the fake datetime. import datetime global_now = datetime.datetime.now() # Now import another module and verify it gets the fake datetime too. import fake_datetime_test_helper # Now undo the fake so other tests being run by the test-runner don't # see the fake datetime. fake_datetime.unfake_datetime() import os import time try: import unittest2 as unittest # python 2.5 except ImportError: import unittest # python 2.6+ orig_timezone = None def setUpModule(): """All these tests assume we're running in pacific time. Make it so.""" global orig_timezone