Skip to content

Commit

Permalink
Add managed-access integration test for verbatim manifests (#6098)
Browse files Browse the repository at this point in the history
  • Loading branch information
nadove-ucsc committed May 1, 2024
1 parent ba1b8b0 commit 6073a24
Showing 1 changed file with 23 additions and 0 deletions.
23 changes: 23 additions & 0 deletions test/integration_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -1572,6 +1572,29 @@ def test_compact_manifest(expected_bundles):
# Without credentials, only the public bundle should be represented
test_compact_manifest({public_bundle})

def dump_verbatim_manifest(bundles: Iterable[str]) -> set[str]:
manifest_url = furl(url=endpoint, path='/manifest/files', args={
'catalog': catalog,
'format': ManifestFormat.verbatim_jsonl.value,
'filters': json.dumps({special_fields.bundle_uuid: {'is': list(bundles)}})
})
manifest_lines = BytesIO(self._get_url_content(PUT, manifest_url)).readlines()
manifest_content = {
json.dumps(json.loads(replica), sort_keys=True)
for replica in manifest_lines
}
self.assertEqual(len(manifest_lines), len(manifest_content))
return manifest_content

for manifest_format in ManifestFormat.verbatim_jsonl, ManifestFormat.verbatim_pfb:
if manifest_format in metadata_plugin.manifest_formats:
with self.subTest(format=manifest_format):
unauthorized = dump_verbatim_manifest(all_bundles)
with self._service_account_credentials:
authorized = dump_verbatim_manifest(all_bundles)
private_only = dump_verbatim_manifest(managed_access_bundles)
self.assertSetEqual(private_only, authorized - unauthorized)

if ManifestFormat.curl in metadata_plugin.manifest_formats:
# Create a single-file curl manifest and verify that the OAuth2
# token is present on the command line
Expand Down

0 comments on commit 6073a24

Please sign in to comment.