def test_interval_repr(): assert_eq(repr(interval()), 'interval()') assert_eq(repr(interval(seconds=42)), 'interval(seconds=42)') assert_eq(repr(interval(years=7, seconds=42)), 'interval(years=7, seconds=42)')
def test_interval_eq(): assert interval(seconds=42) == interval(seconds=42) assert interval(seconds=42) <> interval(days=42, seconds=42) assert interval(seconds=42) <> interval(days=42) assert not interval(seconds=42) == 42 assert interval(seconds=42) <> 42 assert interval(days=42) <> 42 assert interval(years=42) <> 42
def test_interval(): assert_eq(typecast_interval(None, '1 day'), interval(days=1)) assert_eq(typecast_interval(None, '12:34:56'), interval(hours=12, minutes=34, seconds=56)) assert_eq(typecast_interval(None, '12:34:56.789'), interval(hours=12, minutes=34, seconds=56, microseconds=789000)) assert_eq(typecast_interval(None, '123 days 12:34:56'), interval(days=123, hours=12, minutes=34, seconds=56)) assert_eq(typecast_interval(None, '1 year -3 days'), interval(years=1, days=-3))
def test_interval_to_timedelta(): assert_eq(interval(days=1).to_timedelta(), timedelta(days=1)) assert_eq(interval(seconds=1).to_timedelta(), timedelta(seconds=1)) assert_eq(interval(days=1, minutes=3, seconds=1).to_timedelta(), timedelta(days=1, seconds=181)) try: interval(years=42).to_timedelta() raise AssertionError('Should fail converting year interval.') except ValueError: pass
def test_interval(): value, = cu.execute("SELECT '42 days'::interval").fetchone() assert value == interval(days=42)
def test_get_interval(): value, = cu.execute("SELECT '1 year'::interval").fetchone() assert isinstance(value, interval) assert value == interval(years=1)
def test_roundtrip_interval(): roundtrip_value(cu, 'z', interval()) roundtrip_value(cu, 'z', interval(seconds=1)) roundtrip_value(cu, 'z', interval(years=1, months=2, days=3))