From 6d2edd8a7637b20d92766965e6ab19a77f5ae7ca Mon Sep 17 00:00:00 2001 From: Noa Aviel Dove Date: Fri, 12 Apr 2024 17:23:43 -0700 Subject: [PATCH] fixup! Include `replica_type` in JSONL manifest --- test/service/test_manifest.py | 35 +++++++++++++++++++++-------------- 1 file changed, 21 insertions(+), 14 deletions(-) diff --git a/test/service/test_manifest.py b/test/service/test_manifest.py index 592a131f6..560b0d19a 100644 --- a/test/service/test_manifest.py +++ b/test/service/test_manifest.py @@ -1295,24 +1295,27 @@ def test_manifest_content_disposition_header(self): def test_verbatim_jsonl_manifest(self): bundle = self._load_canned_bundle(one(self.bundles())) expected = [ - bundle.metadata_files[d] - for d in [ - 'cell_suspension_0.json', - 'project_0.json', - 'sequence_file_0.json', - 'sequence_file_1.json', - 'specimen_from_organism_0.json' + { + 'type': replica_type, + 'contents': bundle.metadata_files[key], + } + for replica_type, key in [ + ('cell_suspension', 'cell_suspension_0.json'), + ('project', 'project_0.json'), + ('file', 'sequence_file_0.json'), + ('file', 'sequence_file_1.json'), + ('sample', 'specimen_from_organism_0.json') ] ] response = self._get_manifest(ManifestFormat.verbatim_jsonl, {}) self.assertEqual(200, response.status_code) response = [ - json.loads(row)['contents'] + json.loads(row) for row in response.content.decode().splitlines() ] def sort_key(hca_doc: JSON) -> str: - return hca_doc['provenance']['document_id'] + return hca_doc['contents']['provenance']['document_id'] expected.sort(key=sort_key) response.sort(key=sort_key) @@ -2044,20 +2047,24 @@ def test_jsonl_manifest(self): response = self._get_manifest(ManifestFormat.verbatim_jsonl, filters={}) self.assertEqual(200, response.status_code) manifest = [ - json.loads(row)['contents'] + json.loads(row) for row in response.content.decode().splitlines() ] expected = [ - entity + { + 'type': 'anvil_' + entity_ref.entity_type, + 'contents': entity, + } for bundle in self.bundles() - for entity in self._load_canned_bundle(bundle).entities.values() + for entity_ref, entity in self._load_canned_bundle(bundle).entities.items() ] def sort_key(anvil_doc): + contents = anvil_doc['contents'] try: - return anvil_doc['datarepo_row_id'] + return contents['datarepo_row_id'] except KeyError: - return anvil_doc['description'] + return contents['description'] manifest.sort(key=sort_key) expected.sort(key=sort_key)