fix: enforce approved media publication closure
This commit is contained in:
@@ -147,6 +147,18 @@ describe('content schemas', () => {
|
||||
.toThrow(/unmanifested asset/i);
|
||||
});
|
||||
|
||||
it('requires duplicate-free set equality between content references and manifest assets', () => {
|
||||
const duplicateReference = cloneContent();
|
||||
duplicateReference.projects.selected[1]!.assetIds = ['selected-build-one'];
|
||||
expect(() => validateProductionInputs(duplicateReference, validManifest, validSite, new URL('file:///prepared/')))
|
||||
.toThrow(/duplicate public asset reference/i);
|
||||
|
||||
const unreferencedManifestAsset = cloneContent();
|
||||
unreferencedManifestAsset.projects.selected[0]!.assetIds = [];
|
||||
expect(() => validateProductionInputs(unreferencedManifestAsset, validManifest, validSite, new URL('file:///prepared/')))
|
||||
.toThrow(/unreferenced manifest asset/i);
|
||||
});
|
||||
|
||||
it('rejects duplicate manifest asset IDs and unsafe generated filenames', () => {
|
||||
const manifest = structuredClone(validManifest) as { assets: Array<{ id: string; fileName: string }> };
|
||||
manifest.assets[1]!.id = manifest.assets[0]!.id;
|
||||
|
||||
Reference in New Issue
Block a user