コード例 #1
0
ファイル: test_interval.py プロジェクト: kirkeby/python-pgsql
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)')
コード例 #2
0
ファイル: test_interval.py プロジェクト: kirkeby/python-pgsql
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
コード例 #3
0
ファイル: test_typecast.py プロジェクト: kirkeby/python-pgsql
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))
コード例 #4
0
ファイル: test_interval.py プロジェクト: kirkeby/python-pgsql
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
コード例 #5
0
def test_interval():
    value, = cu.execute("SELECT '42 days'::interval").fetchone()
    assert value == interval(days=42)
コード例 #6
0
def test_get_interval():
    value, = cu.execute("SELECT '1 year'::interval").fetchone()
    assert isinstance(value, interval)
    assert value == interval(years=1)
コード例 #7
0
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))