def test_passing_kwargs(self): # Test passing kwargs expected = common_timezone.datetime(2014, 1, 1) date_string = "Jan 2014" default = datetime.datetime(2014, 1, 1) outcome = common_timezone.parse(date_string, default=default) self.assertEqual(expected, outcome)
def test_months_in_wrong_order(self): start = common_timezone.datetime(2014, 11, 1) end = common_timezone.math(start, operator.sub, datetime.timedelta(days=33)) count = len(list(common_timezone.monthly_iter(start, end))) # No error is thrown, and no iteration happens self.assertEqual(count, 0)
def test_dst_changing_month(self): time = common_timezone.datetime(2014, 11, 1) end_of_month = common_timezone.to_end_of_month(time) self.do_basic_tests(time, end_of_month) time_offset = common_timezone.get_timezone_offset(time) converted_offset = common_timezone.get_timezone_offset(end_of_month) self.assertEqual(time_offset, '-0700') self.assertEqual(converted_offset, '-0800')
def test_passing_by_kwargs(self): # Test passing by kwargs expected = datetime.datetime(2014, 1, 2, 3, 4, microsecond=5, second=6) outcome = common_timezone.datetime(2014, 1, 2, 3, 4, microsecond=5, second=6) self.assertEqual(expected, outcome.replace(tzinfo=None)) self.assertTrue(common_timezone.is_aware(outcome))
def test_multiple_months(self): start = common_timezone.datetime(2014, 11, 1) end = common_timezone.math(start, operator.add, datetime.timedelta(days=33)) count = 0 for date in common_timezone.monthly_iter(start, end): if count == 0: # On the first month self.assertEqual(date.month, start.month) self.assertEqual(date.month, start.month) else: # On the second month self.assertEqual(date.month, end.month) self.assertEqual(date.month, end.month) count += 1 self.assertEqual(count, 2)
def test_leap_year(self): time = common_timezone.datetime(2000, 2, 3) last_day = common_timezone.get_last_day_of_month(time) self.assertEqual(last_day, 29)
def test_normal_month(self): time = common_timezone.datetime(2014, 7, 5) last_day = common_timezone.get_last_day_of_month(time) self.assertEqual(last_day, 31)
def test_to_end_of_week(self): day = common_timezone.datetime(2014, 7, 1) saturday = common_timezone.to_end_of_week(day) self.assertEqual(saturday.isoweekday(), 7)
def test_get_timezone_offset_non_dst(self): # Test getting the timezone offset outside of daylight savings time expected = '-0800' outcome = common_timezone.get_timezone_offset( common_timezone.datetime(2014, 1, 1)) self.assertEqual(expected, outcome)
def test_get_timezone_name_non_dst(self): # Test getting timezone name outside of daylight savings time expected = 'PST' outcome = common_timezone.get_timezone_name( common_timezone.datetime(2014, 1, 1)) self.assertEqual(expected, outcome)
def test_passing_with_tzinfo(self): # Test passing tzinfo expected = datetime.datetime(2013, 1, 2, tzinfo=pytz.utc) outcome = common_timezone.datetime(2013, 1, 2, tzinfo=pytz.utc) self.assertEqual(expected, outcome)
def test_passing_args_in_order(self): # Test passing args in order expected = datetime.datetime(2014, 1, 2, 3, 4, 5, 6) outcome = common_timezone.datetime(2014, 1, 2, 3, 4, 5, 6) self.assertEqual(expected, outcome.replace(tzinfo=None)) self.assertTrue(common_timezone.is_aware(outcome))
def test_basic_construction(self): # Test default behaviour expected = datetime.datetime(2014, 1, 1) outcome = common_timezone.datetime(2014, 1, 1) self.assertEqual(expected, outcome.replace(tzinfo=None)) self.assertTrue(common_timezone.is_aware(outcome))
def test_holiday(self): time = common_timezone.datetime(2014, 7, 4) # July 4th is_business_day = common_timezone.is_business_day(time) self.assertFalse(is_business_day)
def test_iso_javascript_format(self): expected = '2014-01-01T12:05:04Z' outcome = common_timezone.javascript_iso_format( common_timezone.datetime(2014, 1, 1, 12, 5, 4, tzinfo=pytz.utc)) self.assertEqual(expected, outcome)
def test_to_start_of_week(self): day = common_timezone.datetime(2014, 7, 1) sunday = common_timezone.to_start_of_week(day) self.assertEqual(sunday.isoweekday(), 1)
def test_normal_month(self): time = common_timezone.datetime(2014, 7, 5) end_of_month = common_timezone.to_end_of_month(time) self.do_basic_tests(time, end_of_month) self.assertEqual(common_timezone.get_timezone_offset(time), common_timezone.get_timezone_offset(end_of_month))
def setUp(self): self.dst_time = common_timezone.datetime(2014, 7, 1)
def test_always_returning_aware_datetime(self): # Test always returning timezone information base = datetime.datetime(2014, 1, 1) expected = common_timezone.datetime(2014, 1, 1) outcome = common_timezone.parse(str(base)) self.assertEqual(expected, outcome)