示例#1
0
def test_tables():
    md = MetaData()
    assert md._tables == {}

    md.add(DummyMapper('a'))
    md.add(DummyMapper('b'))
    md.add(DummyMapper('c'))
    md.add(DummyMapper('d'))

    with pytest.raises(InvalidRequestError):
        md.add(DummyMapper('a'))

    assert DummyMapper('a') in md
    md.remove(DummyMapper('a'))
    assert DummyMapper('a') not in md

    assert set(md) == set(['b', 'c', 'd'])
    assert len(list(md.values())) == 3
    assert len(list(md.items())) == 3

    md.clear()
    assert len(list(md)) == 0