Page MenuHomeSoftware Heritage

D5237.diff
No OneTemporary

D5237.diff

diff --git a/swh/model/model.py b/swh/model/model.py
--- a/swh/model/model.py
+++ b/swh/model/model.py
@@ -1098,6 +1098,13 @@
return super().from_dict(d)
+ def swhid(self) -> ExtendedSWHID:
+ """Returns a SWHID representing this RawExtrinsicMetadata object."""
+ return ExtendedSWHID(
+ object_type=SwhidExtendedObjectType.RAW_EXTRINSIC_METADATA,
+ object_id=self.id,
+ )
+
@attr.s(frozen=True, slots=True)
class ExtID(HashableObject, BaseModel):
diff --git a/swh/model/tests/test_model.py b/swh/model/tests/test_model.py
--- a/swh/model/tests/test_model.py
+++ b/swh/model/tests/test_model.py
@@ -21,6 +21,7 @@
content_identifier,
directory_identifier,
origin_identifier,
+ raw_extrinsic_metadata_identifier,
release_identifier,
revision_identifier,
snapshot_identifier,
@@ -802,6 +803,14 @@
assert str(ori_model.swhid()) == "swh:1:ori:" + ori_id_str
+def test_raw_extrinsic_metadata_model_id_computation():
+ emd_dict = metadata_example.copy()
+
+ emd_id_str = raw_extrinsic_metadata_identifier(emd_dict)
+ emd_model = RawExtrinsicMetadata.from_dict(emd_dict)
+ assert str(emd_model.swhid()) == "swh:1:emd:" + emd_id_str
+
+
@given(strategies.objects(split_content=True))
def test_object_type(objtype_and_obj):
obj_type, obj = objtype_and_obj

File Metadata

Mime Type
text/plain
Expires
Dec 21 2024, 2:46 PM (11 w, 4 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
3221947

Event Timeline