def test_isStandardTimezone(self): """ L{TimezoneDatabase.isStandardTimezone} returns correct result when the database cache is initially empty. """ data = ( ("America/New_York", True), ("America/Los_Angeles", True), ("America/Cupertino", False), ("America/FooBar", False), ) TimezoneDatabase.getTimezoneDatabase().clear() # Do twice to excersise the cache for _ in range(2): for tzid, result in data: self.assertEqual(TimezoneDatabase.isStandardTimezone(tzid), result, "Failed {}".format(tzid)) self.assertTrue("America/New_York" in TimezoneDatabase.getTimezoneDatabase().stdtzcache) self.assertTrue("America/Los_Angeles" in TimezoneDatabase.getTimezoneDatabase().stdtzcache) self.assertFalse("America/Cupertino" in TimezoneDatabase.getTimezoneDatabase().stdtzcache) self.assertFalse("America/FooBar" in TimezoneDatabase.getTimezoneDatabase().stdtzcache) self.assertFalse("America/New_York" in TimezoneDatabase.getTimezoneDatabase().notstdtzcache) self.assertFalse("America/Los_Angeles" in TimezoneDatabase.getTimezoneDatabase().notstdtzcache) self.assertTrue("America/Cupertino" in TimezoneDatabase.getTimezoneDatabase().notstdtzcache) self.assertTrue("America/FooBar" in TimezoneDatabase.getTimezoneDatabase().notstdtzcache)
def setUp(self): super(TestTimezoneDB, self).setUp() # Standard components explicitly added for vtz in StandardTZs: cal = Calendar() TimezoneDatabase.getTimezoneDatabase()._addStandardTimezone(cal.parseComponent(StringIO(vtz))) # Just parsing will add as non-standard for vtz in NonStandardTZs: Calendar.parseData(vtz)