diff --git a/unittests/test_identified_cache.py b/unittests/test_identified_cache.py index a2fe70f8f3ec4bc5206036fe6dbdeefd99fce24e..535751723dbb88202f5be6a59c4b316a404172aa 100644 --- a/unittests/test_identified_cache.py +++ b/unittests/test_identified_cache.py @@ -36,44 +36,38 @@ from caoscrawler.identified_cache import _create_hashable_string as create_hash_ import pytest -@pytest.mark.xfail() def test_create_hash(): assert _create_hashable_string( - db.Record("A").add_parent("B")) == "P<B>N<A>" - assert _create_hashable_string(db.Record("A") - .add_parent("B").add_property('a', 5)) == "P<B>N<A>a:5" + Identifiable(name="A", record_type="B")) == "P<B>N<A>Path<None>" + assert _create_hashable_string( + Identifiable(name="A", record_type="B", properties={'a': 5})) == "P<B>N<A>Path<None>a:5" + assert (_create_hashable_string( + Identifiable(name="A", record_type="B", properties={'a': 4, 'b': 5} + )) == _create_hashable_string( + Identifiable(name="A", record_type="B", properties={'b': 5, 'a': 4}))) + assert (_create_hashable_string(Identifiable(name="A", record_type="B", + properties={'a': db.Record(id=12)})) == "P<B>N<A>Path<None>a:12") assert (_create_hashable_string( - db.Record("A").add_parent("B") - .add_property('a', 4).add_property('b', 5)) == _create_hashable_string( - db.Record("A").add_parent("B") - .add_property('b', 5).add_property('a', 4))) - assert (_create_hashable_string(db.Record("A") - .add_parent("B") - .add_property('a', db.Record(id=12))) == "P<B>N<A>a:12") - assert (_create_hashable_string(db.Record("A") - .add_parent("B") - .add_property('a', [db.Record(id=12)])) == "P<B>N<A>a:[12]") - assert (_create_hashable_string(db.Record("A") - .add_parent("B").add_property('a', [12])) == "P<B>N<A>a:[12]") + Identifiable(name="A", record_type="B", properties={'a': [db.Record(id=12)]}) + ) == "P<B>N<A>Path<None>a:[12]") + assert (_create_hashable_string(Identifiable(name="A", record_type="B", properties={'a': [12]}) + ) == "P<B>N<A>Path<None>a:[12]") assert (_create_hashable_string( - db.Record("A") - .add_parent("B") - .add_property('a', [db.Record(id=12), 11])) == "P<B>N<A>a:[12, 11]") + Identifiable(name="A", record_type="B", properties={'a': [db.Record(id=12), 11]}) + ) == "P<B>N<A>Path<None>a:[12, 11]") assert (_create_hashable_string( - db.Record().add_parent("B").add_property('a', [db.Record()])) + Identifiable(record_type="B", properties={'a': [db.Record()]})) != _create_hashable_string( - db.Record().add_parent("B").add_property('a', [db.Record()]))) + Identifiable(record_type="B", properties={'a': [db.Record()]}))) -@pytest.mark.xfail() def test_IdentifiedCache(): - ident = db.Record("A").add_parent("B") + ident = Identifiable(name="A", record_type="B") record = db.Record("A").add_parent("B").add_property('b', 5) cache = IdentifiedCache() assert ident not in cache cache.add(record=record, identifiable=ident) assert ident in cache - assert record not in cache assert cache[ident] is record