Page MenuHomeSoftware Heritage

Jenkins > .tox.py3.lib.python3.7.site-packages.swh.storage.tests.migrate_extrinsic_metadata.test_debian::test_debian_origins_from_row__check_revisions
Failed

TEST RESULT

Run At
Sep 11 2020, 11:55 AM
Details
def test_debian_origins_from_row__check_revisions(): """Tests debian_origins_from_row errors when the revision at the head of a branch is a DSC and has no parents """ storage = Mock() origin_url = "deb://Debian/packages/kalgebra" revision_row = { "id": b"\x00\x00\x03l1\x1e\xf3:(\x1b\x05h\x8fn\xad\xcf\xc0\x94:\xee", "metadata": {"original_artifact": [{"filename": "kalgebra_19.12.1-1.dsc",},]}, } visit = OriginVisit( origin=origin_url, date=datetime.datetime.now(tz=datetime.timezone.utc), type="deb", visit=280, ) status = OriginVisitStatus( origin=origin_url, visit=280, date=datetime.datetime.now(tz=datetime.timezone.utc), status="full", snapshot=b"42" * 10, metadata=None, ) snapshot = Snapshot( id=b"42" * 10, branches={ b"foo": SnapshotBranch(target_type=TargetType.REVISION, target=b"21" * 10) }, ) revision = Revision( id=b"\x00\x00\x03l1\x1e\xf3:(\x1b\x05h\x8fn\xad\xcf\xc0\x94:\xee", message=b"foo", author=Person.from_fullname(b"foo"), committer=Person.from_fullname(b"foo"), date=TimestampWithTimezone( timestamp=Timestamp(seconds=1580076204, microseconds=0), offset=60, negative_utc=False, ), committer_date=TimestampWithTimezone( timestamp=Timestamp(seconds=1580076204, microseconds=0), offset=60, negative_utc=False, ), type=RevisionType.DSC, directory=b"\xd5\x9a\x1f\x9c\x80\x9d\x8c}19P\xf6\xc8\xa2\x0f^%H\xcd\xdb", synthetic=True, metadata=None, parents=(b"parent " * 2,), extra_headers=(), ) storage.revision_get.return_value = [revision] with patch("iter_origin_visits", return_value=[visit]): with patch("iter_origin_visit_statuses", return_value=[status]): with patch("snapshot_get_all_branches", return_value=snapshot): with pytest.raises(AssertionError, match="DSC revision with parents"): > debian_origins_from_row(revision_row, storage) .tox/py3/lib/python3.7/site-packages/swh/storage/tests/migrate_extrinsic_metadata/test_debian.py:315: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ row = {'id': b'\x00\x00\x03l1\x1e\xf3:(\x1b\x05h\x8fn\xad\xcf\xc0\x94:\xee', 'metadata': {'original_artifact': [{'filename': 'kalgebra_19.12.1-1.dsc'}]}} storage = <Mock id='140634324014920'> def debian_origins_from_row(row, storage): """Guesses a Debian origin from a row. May return an empty list if it cannot reliably guess it, but all results are guaranteed to be correct.""" filenames = [entry["filename"] for entry in row["metadata"]["original_artifact"]] package_names = {filename.split("_")[0] for filename in filenames} assert len(package_names) == 1, package_names > package_name = package_names[0] E TypeError: 'set' object is not subscriptable .tox/py3/lib/python3.7/site-packages/swh/storage/migrate_extrinsic_metadata.py:210: TypeError