Lines Matching refs:dt

135     def utcoffset(self, dt):
137 def tzname(self, dt):
139 def dst(self, dt):
167 dt = datetime.max
168 self.assertRaises(NotImplementedError, useless.tzname, dt)
169 self.assertRaises(NotImplementedError, useless.utcoffset, dt)
170 self.assertRaises(NotImplementedError, useless.dst, dt)
181 dt = datetime.now()
182 self.assertRaises(NotImplementedError, ne.tzname, dt)
183 self.assertRaises(NotImplementedError, ne.utcoffset, dt)
184 self.assertRaises(NotImplementedError, ne.dst, dt)
189 for dt in datetime.now(), None:
190 self.assertEqual(fo.utcoffset(dt), timedelta(minutes=3))
191 self.assertEqual(fo.tzname(dt), "Three")
192 self.assertEqual(fo.dst(dt), timedelta(minutes=42))
236 def utcoffset(self, dt):
239 def dst(self, dt):
242 def tzname(self, dt):
1069 dt = date(2000, 1, 2)
1075 dt2 = dt + delta
1076 self.assertEqual(dt2, dt + days)
1078 dt2 = delta + dt
1079 self.assertEqual(dt2, dt + days)
1081 dt2 = dt - delta
1082 self.assertEqual(dt2, dt - days)
1088 dt2 = dt + delta
1089 self.assertEqual(dt2, dt + days)
1091 dt2 = delta + dt
1092 self.assertEqual(dt2, dt + days)
1094 dt2 = dt - delta
1095 self.assertEqual(dt2, dt - days)
1107 dt = self.theclass(2002, 3, 1)
1108 self.assertEqual(dt.year, 2002)
1109 self.assertEqual(dt.month, 3)
1110 self.assertEqual(dt.day, 1)
1113 for dt in (self.theclass(1, 2, 3),
1115 # Verify dt -> string -> date identity.
1116 s = repr(dt)
1120 self.assertEqual(dt, dt2)
1123 dt2 = self.theclass(dt.year, dt.month, dt.day)
1124 self.assertEqual(dt, dt2)
1299 dt = self.theclass.min + delta
1300 dt -= delta # no problem
1301 self.assertRaises(OverflowError, dt.__sub__, delta)
1302 self.assertRaises(OverflowError, dt.__add__, -delta)
1304 dt = self.theclass.max - delta
1305 dt += delta # no problem
1306 self.assertRaises(OverflowError, dt.__add__, delta)
1307 self.assertRaises(OverflowError, dt.__sub__, -delta)
1510 dt = self.theclass(2007, 9, 10)
1511 self.assertEqual(dt.__format__(''), str(dt))
1514 dt.__format__(123)
1528 self.assertEqual(b.__format__(''), str(dt))
1534 self.assertEqual(dt.__format__(fmt), dt.strftime(fmt))
1535 self.assertEqual(a.__format__(fmt), dt.strftime(fmt))
1715 dt = DateSubclass(2012, 1, 1)
1716 self.assertIs(type(dt.replace(year=2013)), DateSubclass)
1777 dt = constr(*constr_args)
1780 self.assertIsInstance(dt, DateSubclass)
1783 self.assertEqual(dt, base_d)
1786 self.assertEqual(dt.extra, 7)
1837 dt = self.theclass(*dt_tuple)
1838 dt_str = dt.isoformat()
1840 dt_rt = self.theclass.fromisoformat(dt.isoformat())
1842 self.assertEqual(dt, dt_rt)
1883 dt = DateSubclass(2014, 12, 14)
1885 dt_rt = DateSubclass.fromisoformat(dt.isoformat())
2004 dt = self.theclass(2002, 3, 1, 12, 0)
2005 self.assertEqual(dt.year, 2002)
2006 self.assertEqual(dt.month, 3)
2007 self.assertEqual(dt.day, 1)
2008 self.assertEqual(dt.hour, 12)
2009 self.assertEqual(dt.minute, 0)
2010 self.assertEqual(dt.second, 0)
2011 self.assertEqual(dt.microsecond, 0)
2016 dt = self.theclass(2002, 3, 1, 12, 59, 59, 8000)
2017 self.assertEqual(dt.year, 2002)
2018 self.assertEqual(dt.month, 3)
2019 self.assertEqual(dt.day, 1)
2020 self.assertEqual(dt.hour, 12)
2021 self.assertEqual(dt.minute, 59)
2022 self.assertEqual(dt.second, 59)
2023 self.assertEqual(dt.microsecond, 8000)
2026 for dt in (self.theclass(1, 2, 3, 4, 5, 6, 7),
2028 # Verify dt -> string -> datetime identity.
2029 s = repr(dt)
2033 self.assertEqual(dt, dt2)
2036 dt2 = self.theclass(dt.year, dt.month, dt.day,
2037 dt.hour, dt.minute, dt.second,
2038 dt.microsecond)
2039 self.assertEqual(dt, dt2)
2110 dt = dt_base.replace(tzinfo=tzi)
2113 assert dt.isoformat() == exp
2116 dt = self.theclass(2007, 9, 10, 4, 5, 1, 123)
2117 self.assertEqual(dt.__format__(''), str(dt))
2120 dt.__format__(123)
2134 self.assertEqual(b.__format__(''), str(dt))
2140 self.assertEqual(dt.__format__(fmt), dt.strftime(fmt))
2141 self.assertEqual(a.__format__(fmt), dt.strftime(fmt))
2181 def tzname(self, dt):
2698 dt = strptime(dtstr, "%z %Z")
2699 self.assertEqual(dt.utcoffset(), timedelta(seconds=tzseconds))
2700 self.assertEqual(dt.tzname(), tzname)
2703 dt = strptime(dtstr, fmt)
2704 self.assertEqual(dt.utcoffset(), 12 * HOUR + 34 * MINUTE)
2705 self.assertEqual(dt.tzname(), 'UTC')
2707 self.assertEqual(dt.strftime(fmt), dtstr)
2789 dt = self.theclass(2002, 3, 4, 18, 45, 3, 1234)
2790 self.assertEqual(dt.date(), date(2002, 3, 4))
2791 self.assertEqual(dt.time(), time(18, 45, 3, 1234))
2798 dt = combine(d, t)
2799 self.assertEqual(dt, expected)
2801 dt = combine(time=t, date=d)
2802 self.assertEqual(dt, expected)
2804 self.assertEqual(d, dt.date())
2805 self.assertEqual(t, dt.time())
2806 self.assertEqual(dt, combine(dt.date(), dt.time()))
2818 dt = combine(d, t, timezone.utc)
2819 self.assertIs(dt.tzinfo, timezone.utc)
2820 dt = combine(d, t, tzinfo=timezone.utc)
2821 self.assertIs(dt.tzinfo, timezone.utc)
2823 dt = combine(dt, t)
2824 self.assertEqual(dt.date(), d)
2825 self.assertEqual(dt.time(), t)
2854 dt = self.theclass.now()
2856 dt_utc = dt.replace(tzinfo=timezone(timedelta(hours=-4), 'EDT'))
2857 self.assertEqual(dt.astimezone(), dt_utc) # naive
2858 self.assertRaises(TypeError, dt.astimezone, f, f) # too many args
2859 self.assertRaises(TypeError, dt.astimezone, dt) # arg wrong type
2860 dt_f = dt.replace(tzinfo=f) + timedelta(hours=4, minutes=44)
2861 self.assertEqual(dt.astimezone(f), dt_f) # naive
2862 self.assertEqual(dt.astimezone(tz=f), dt_f) # naive
2865 def utcoffset(self, dt): return None
2866 def dst(self, dt): return timedelta(0)
2868 self.assertRaises(ValueError, dt.astimezone, bog) # naive
2869 self.assertEqual(dt.replace(tzinfo=bog).astimezone(f), dt_f)
2872 def utcoffset(self, dt): return timedelta(0)
2873 def dst(self, dt): return None
2875 self.assertRaises(ValueError, dt.astimezone, alsobog) # also naive
2878 def utcoffset(self, dt): return 1
2879 def dst(self, dt): return 1
2881 dt_broken = dt.replace(tzinfo=broken)
2950 dt = constructor(*constr_args)
2953 self.assertIsInstance(dt, DateTimeSubclass)
2956 self.assertEqual(dt, expected)
2959 self.assertEqual(dt.extra, 7)
2980 dt = constr(**kwargs)
2982 self.assertIsInstance(dt, DateTimeSubclass)
2983 self.assertEqual(dt.extra, 7)
3012 for dt in dts:
3014 dtstr = dt.isoformat(sep=sep)
3018 self.assertEqual(dt, dt_rt)
3038 dt = base_dt.replace(tzinfo=tzi)
3039 dtstr = dt.isoformat()
3043 assert dt == dt_rt, dt_rt
3055 dt = self.theclass(2018, 1, 31, 23, 59, 47, 124789)
3056 dtstr = dt.isoformat(sep=sep)
3060 self.assertEqual(dt, dt_rt)
3066 dt = self.theclass(2018, 1, 31, 12, 15)
3067 dtstr = dt.isoformat(sep=sep)
3071 self.assertEqual(dt, dt_rt)
3093 dt = self.theclass(*(dt_tuple[0:(4 + ip)]), tzinfo=tzi)
3094 dtstr = dt.isoformat(timespec=ts)
3097 self.assertEqual(dt, dt_rt)
3279 dt = self.theclass.fromisoformat(dt_str)
3281 self.assertIs(dt.tzinfo, timezone.utc)
3287 dt = DateTimeSubclass(2014, 12, 14, 9, 30, 45, 457390,
3290 dt_rt = DateTimeSubclass.fromisoformat(dt.isoformat())
3292 self.assertEqual(dt, dt_rt)
3708 def tzname(self, dt): return dt and "real" or "none"
3709 def utcoffset(self, dt):
3710 return timedelta(minutes = dt and 42 or -42)
3728 def utcoffset(self, dt): pass
3733 def utcoffset(self, dt): pass
3742 def utcoffset(self, dt):
3769 def utcoffset(self, dt): return None
3770 def dst(self, dt): return None
3771 def tzname(self, dt): return None
3780 def utcoffset(self, dt): return timedelta(minutes=-1439)
3781 def dst(self, dt): return timedelta(minutes=1439)
3782 def tzname(self, dt): return "aname"
3790 def utcoffset(self, dt): return "aname"
3791 def dst(self, dt): return 7
3792 def tzname(self, dt): return 0
3800 def utcoffset(self, dt): return timedelta(hours=-24)
3801 def dst(self, dt): return timedelta(hours=24)
3808 def utcoffset(self, dt): return timedelta(microseconds=61)
3809 def dst(self, dt): return timedelta(microseconds=-81)
3951 def tzname(self, dt): return self.tz
4343 dt = self.theclass(1, 2, 3, 4, 5, 6, 7)
4344 self.assertEqual(dt.year, 1)
4345 self.assertEqual(dt.month, 2)
4346 self.assertEqual(dt.day, 3)
4347 self.assertEqual(dt.hour, 4)
4348 self.assertEqual(dt.minute, 5)
4349 self.assertEqual(dt.second, 6)
4350 self.assertEqual(dt.microsecond, 7)
4351 self.assertEqual(dt.tzinfo, None)
4404 def utcoffset(self, dt): return None
4416 def utcoffset(self, dt):
4530 dt = datetime.combine(d, tz)
4531 self.assertEqual(dt, datetime(2002, 3, 4, 18, 45, 3, 1234,
4536 dt = self.theclass(2002, 3, 4, 18, 45, 3, 1234, tzinfo=met)
4537 self.assertEqual(dt.date(), date(2002, 3, 4))
4538 self.assertEqual(dt.time(), time(18, 45, 3, 1234))
4539 self.assertEqual(dt.timetz(), time(18, 45, 3, 1234, tzinfo=met))
4708 def dst(self, dt):
4742 def dst(self, dt):
4754 def utcoffset(self, dt):
4780 def utcoffset(self, dt):
4788 def utcoffset(self, dt):
4882 dt = self.theclass.now(tz=f44m)
4883 self.assertIs(dt.tzinfo, f44m)
4885 self.assertRaises(ValueError, dt.astimezone, fnone)
4887 x = dt.astimezone(dt.tzinfo)
4889 self.assertEqual(x.date(), dt.date())
4890 self.assertEqual(x.time(), dt.time())
4893 got = dt.astimezone(fm5h)
4896 expected = dt - dt.utcoffset() # in effect, convert to UTC
4897 expected += fm5h.utcoffset(dt) # and from there to local time
4907 dt = self.theclass.now(timezone.utc)
4908 self.assertEqual(dt.astimezone(None), dt)
4909 self.assertEqual(dt.astimezone(), dt)
4915 dt = self.theclass(2012, 11, 4, 6, 30, tzinfo=timezone.utc)
4916 local = dt.astimezone()
4917 self.assertEqual(dt, local)
4919 dt = self.theclass(2012, 11, 4, 5, 30, tzinfo=timezone.utc)
4920 local = dt.astimezone()
4921 self.assertEqual(dt, local)
5034 def first_sunday_on_or_after(dt):
5035 days_to_go = 6 - dt.weekday()
5037 dt += timedelta(days_to_go)
5038 return dt
5063 def tzname(self, dt):
5064 if self.dst(dt):
5069 def utcoffset(self, dt):
5070 return self.stdoffset + self.dst(dt)
5072 def dst(self, dt):
5073 if dt is None or dt.tzinfo is None:
5077 assert dt.tzinfo is self
5080 start = first_sunday_on_or_after(DSTSTART.replace(year=dt.year))
5084 end = first_sunday_on_or_after(DSTEND.replace(year=dt.year))
5088 # dt first.
5089 if start <= dt.replace(tzinfo=None) < end:
5111 def checkinside(self, dt, tz, utc, dston, dstoff):
5112 self.assertEqual(dt.dst(), HOUR)
5115 self.assertEqual(dt.astimezone(tz), dt)
5117 asutc = dt.astimezone(utc)
5128 if dt.date() == dston.date() and dt.hour == 2:
5131 self.assertEqual(there_and_back + HOUR, dt)
5137 dt.astimezone(utc))
5140 self.assertEqual(dt, there_and_back)
5152 if dt.date() == dstoff.date() and dt.hour == 0:
5155 self.assertEqual(nexthour_tz, dt.replace(hour=1))
5158 self.assertEqual(nexthour_tz, dt.replace(hour=1))
5160 self.assertEqual(nexthour_tz - dt, HOUR)
5163 def checkoutside(self, dt, tz, utc):
5164 self.assertEqual(dt.dst(), ZERO)
5167 self.assertEqual(dt.astimezone(tz), dt)
5170 asutc = dt.astimezone(utc)
5172 self.assertEqual(dt, there_and_back)
5273 def utcoffset(self, dt): return HOUR
5274 def dst(self, dt): return HOUR
5282 def dst(self, dt): return None
5290 def dst(self, dt):
5291 if dt.year == 2000:
5295 dt = self.theclass(2001, 1, 1).replace(tzinfo=utc_real)
5296 self.assertRaises(ValueError, dt.astimezone, tricky_notok())
5310 def fromutc(self, dt):
5311 return dt + self.stdoffset
5441 def fromutc(self, dt):
5444 if not isinstance(dt, datetime):
5446 if dt.tzinfo is not self:
5447 raise ValueError("dt.tzinfo is not self")
5449 # dt + ldt.utcoffset() = ldt
5450 off0 = dt.replace(fold=0).utcoffset()
5451 off1 = dt.replace(fold=1).utcoffset()
5452 if off0 is None or off1 is None or dt.dst() is None:
5455 ldt = dt + off0
5462 ldt = dt + off
5484 def tzname(self, dt):
5485 if self.dst(dt):
5490 def utcoffset(self, dt):
5491 return self.stdoffset + self.dst(dt)
5493 def dst(self, dt):
5494 if dt is None or dt.tzinfo is None:
5498 assert dt.tzinfo is self
5501 start = first_sunday_on_or_after(DSTSTART.replace(year=dt.year))
5505 end = first_sunday_on_or_after(DSTEND.replace(year=dt.year))
5509 # dt first.
5510 dt = dt.replace(tzinfo=None)
5511 if start + HOUR <= dt < end:
5514 elif end <= dt < end + HOUR:
5515 # Fold (an ambiguous hour): use dt.fold to disambiguate.
5516 return ZERO if dt.fold else HOUR
5517 elif start <= dt < start + HOUR:
5519 return HOUR if dt.fold else ZERO
5550 def utcoffset(self, dt):
5552 if dt < fold_start:
5554 if dt < fold_stop:
5555 return (2 if dt.fold else 3) * HOUR
5556 # if dt >= fold_stop
5559 def dst(self, dt):
5561 if dt < fold_start:
5563 if dt < fold_stop:
5564 return (1 if dt.fold else 0) * HOUR
5565 # if dt >= fold_stop
5568 def tzname(self, dt):
5570 if dt < fold_start:
5572 if dt < fold_stop:
5573 return ('MSK', 'CEST')[dt.fold]
5574 # if dt >= fold_stop
5577 def fromutc(self, dt):
5578 assert dt.fold == 0
5579 assert dt.tzinfo is self
5580 if dt.year != 1941:
5583 if dt < fold_start:
5584 return dt + 3 * HOUR
5585 if dt < fold_stop:
5586 return (dt + 2 * HOUR).replace(fold=1)
5587 # if dt >= fold_stop
5588 return dt + 2 * HOUR
5642 dt = datetime(1, 1, 1, fold=1)
5644 self.assertEqual(dt.fold, 1)
5649 dt = datetime(1, 1, 1, fold=1)
5650 t = dt.time()
5652 t = dt.timetz()
5657 dt = datetime(1, 1, 1)
5659 self.assertEqual(dt.replace(fold=1).fold, 1)
5661 self.assertEqual(dt.replace(fold=0).fold, 0)
5664 dt = dt.replace(fold=1, tzinfo=Eastern)
5666 self.assertEqual(dt.replace(tzinfo=None).fold, 1)
5671 dt.replace(fold=2)
5676 dt.replace(1, 1, 1, 1, 1, 1, 1, None, 1)
5680 dt = datetime(1, 1, 1)
5682 self.assertEqual(dt, dt.replace(fold=1))
5686 dt = datetime(1, 1, 1)
5688 self.assertEqual(hash(dt), hash(dt.replace(fold=1)))
5753 dt = datetime(1, 1, 1, fold=1)
5755 for x in [t, dt]:
5763 dt = datetime(1, 1, 1, fold=1)
5765 self.assertEqual(repr(dt),
5780 dt = datetime(2002, 10, 27, 1, minute, tzinfo=Eastern2)
5782 self.assertEqual(dt.dst(), HOUR)
5784 self.assertEqual(dt.replace(fold=1).dst(), ZERO)
5788 dt = datetime(2002, 4, 7, 2, minute, tzinfo=Eastern2)
5790 self.assertEqual(dt.dst(), ZERO)
5792 self.assertEqual(dt.replace(fold=1).dst(), HOUR)
5943 def fromutc(self, dt):
5946 if not isinstance(dt, datetime):
5948 if dt.tzinfo is not self:
5949 raise ValueError("dt.tzinfo is not self")
5951 timestamp = ((dt.toordinal() - self.EPOCHORDINAL) * 86400
5952 + dt.hour * 3600
5953 + dt.minute * 60
5954 + dt.second)
5967 dt += tti[0]
5969 return dt.replace(fold=1)
5971 return dt
5973 def _find_ti(self, dt, i):
5974 timestamp = ((dt.toordinal() - self.EPOCHORDINAL) * 86400
5975 + dt.hour * 3600
5976 + dt.minute * 60
5977 + dt.second)
5978 lt = self.lt[dt.fold]
5983 def utcoffset(self, dt):
5984 return self._find_ti(dt, 0)
5986 def dst(self, dt):
5987 isdst = self._find_ti(dt, 1)
5994 def tzname(self, dt):
5995 return self._find_ti(dt, 2)
6025 for dt, shift in tz.transitions():
6026 if dt < stats_since:
6030 if (shift, dt) > (max_gap, max_gap_datetime):
6033 max_gap_datetime = dt
6034 if (shift, datetime.max - dt) < (min_gap, datetime.max - min_gap_datetime):
6037 min_gap_datetime = dt
6041 if (shift, dt) > (max_fold, max_fold_datetime):
6044 max_fold_datetime = dt
6045 if (shift, datetime.max - dt) < (min_fold, datetime.max - min_fold_datetime):
6048 min_fold_datetime = dt
6078 for dt, shift, prev_abbr, abbr in tz.nondst_folds():
6079 if dt.year < start_year or same_abbr and prev_abbr != abbr:
6083 (count, zonename, dt, shift, prev_abbr, abbr))
6120 for dt, shift in tz.folds():
6122 udt = dt + x
6135 udt = dt + x
6142 for dt, shift in tz.gaps():
6144 udt = dt + x
6153 ldt = tz.fromutc(dt.replace(tzinfo=tz)) - shift + x
6159 udt = dt + x
6198 dt = datetime.fromtimestamp(s0) - shift / 2
6199 ts0 = dt.timestamp()
6200 ts1 = dt.replace(fold=1).timestamp()
6365 dt = datetime(2011, 1, 1)
6371 self.assertTrue(is_date(dt))
6376 self.assertFalse(is_date(dt, True))
6417 dt = datetime(2011, 1, 1, 12, 30)
6423 self.assertTrue(is_datetime(dt))
6425 self.assertTrue(is_datetime(dt, True))