Page MenuHomeSoftware Heritage

Jenkins > .tox.py3.lib.python3.7.site-packages.swh.loader.package.tests.test_loader::test_load_extids
Failed

TEST RESULT

Run At
Aug 31 2021, 10:42 AM
Details
def test_load_extids() -> None: """Checks PackageLoader.load() skips iff it should, and writes (only) the new ExtIDs""" storage = get_storage("memory") origin = "http://example.org" rev1_swhid = CoreSWHID(object_type=ObjectType.REVISION, object_id=b"a" * 20) rev2_swhid = CoreSWHID(object_type=ObjectType.REVISION, object_id=b"b" * 20) rev3_swhid = CoreSWHID(object_type=ObjectType.REVISION, object_id=b"c" * 20) rev4_swhid = CoreSWHID(object_type=ObjectType.REVISION, object_id=b"d" * 20) dir_swhid = CoreSWHID(object_type=ObjectType.DIRECTORY, object_id=b"e" * 20) # Results of a previous load storage.extid_add( [ ExtID("extid-type1", b"extid-of-v1.0", rev1_swhid), ExtID("extid-type2", b"extid-of-v2.0", rev2_swhid), ] ) last_snapshot = Snapshot( branches={ b"v1.0": SnapshotBranch( target_type=TargetType.REVISION, target=rev1_swhid.object_id ), b"v2.0": SnapshotBranch( target_type=TargetType.REVISION, target=rev2_swhid.object_id ), b"v3.0": SnapshotBranch( target_type=TargetType.REVISION, target=rev3_swhid.object_id ), } ) storage.snapshot_add([last_snapshot]) date = datetime.datetime.now(tz=datetime.timezone.utc) storage.origin_add([Origin(url=origin)]) storage.origin_visit_add( [OriginVisit(origin="http://example.org", visit=1, date=date, type="tar")] ) storage.origin_visit_status_add( [ OriginVisitStatus( origin=origin, visit=1, status="full", date=date, snapshot=last_snapshot.id, ) ] ) loader = StubPackageLoader(storage, "http://example.org") patch.object( loader, "_load_revision", return_value=(rev4_swhid.object_id, dir_swhid.object_id), autospec=True, ).start() > assert loader._load_revision.mock_calls == [ # type: ignore # v1.0: not loaded because there is already its (extid_type, extid, rev) # in the storage. # v2.0: loaded, because there is already a similar extid, but different type call(StubPackageInfo(origin, "example-v2.0.tar"), Origin(url=origin)), # v3.0: loaded despite having an (extid_type, extid) in storage, because # the target of the extid is not in the previous snapshot call(StubPackageInfo(origin, "example-v3.0.tar"), Origin(url=origin)), # v4.0: loaded, because there isn't its extid call(StubPackageInfo(origin, "example-v4.0.tar"), Origin(url=origin)), ] E AssertionError: assert [] == [call(StubPac...xample.org'))] E Right contains 3 more items, first extra item: call(StubPackageInfo(url='http://example.org', filename='example-v2.0.tar', directory_extrinsic_metadata=[]), Origin(url='http://example.org')) E Full diff: E [ E + , E - call(StubPackageInfo(url='http://example.org', filename='example-v2.0.tar', directory_extrinsic_metadata=[]), Origin(url='http://example.org')), E - call(StubPackageInfo(url='http://example.org', filename='example-v3.0.tar', directory_extrinsic_metadata=[]), Origin(url='http://example.org')), E - call(StubPackageInfo(url='http://example.org', filename='example-v4.0.tar', directory_extrinsic_meta... E E ...Full output truncated (2 lines hidden), use '-vv' to show .tox/py3/lib/python3.7/site-packages/swh/loader/package/tests/test_loader.py:218: AssertionError