Пример #1
0
def test_dump_key(engine):
    user = User(id="foo")
    user_key = {"id": {"S": "foo"}}
    assert dump_key(engine, user) == user_key

    obj = HashAndRange(foo=4, bar=5)
    obj_key = {"bar": {"N": "5"}, "foo": {"N": "4"}}
    assert dump_key(engine, obj) == obj_key
Пример #2
0
def test_dump_key_missing(engine):
    class HashAndRange(BaseModel):
        foo = Column(Integer, hash_key=True)
        bar = Column(Integer, range_key=True)

    engine.bind(HashAndRange)

    obj = HashAndRange()
    with pytest.raises(MissingKey):
        dump_key(engine, obj)
Пример #3
0
def test_dump_key(engine):
    class HashAndRange(BaseModel):
        foo = Column(Integer, hash_key=True)
        bar = Column(Integer, range_key=True)

    engine.bind(HashAndRange)

    user = User(id="foo")
    user_key = {"id": {"S": "foo"}}
    assert dump_key(engine, user) == user_key

    obj = HashAndRange(foo=4, bar=5)
    obj_key = {"bar": {"N": "5"}, "foo": {"N": "4"}}
    assert dump_key(engine, obj) == obj_key
Пример #4
0
def test_dump_invalid_key_action(engine, action_type):
    obj = HashAndRange(foo=action_type.new_action(2), bar=3)
    with pytest.raises(ValueError):
        dump_key(engine, obj)
Пример #5
0
def test_dump_key_missing(engine):
    obj = HashAndRange()
    with pytest.raises(MissingKey):
        dump_key(engine, obj)