A (now-fixed) bug in the ingest was accidentally converting the payload's interior files array to a string:
{... files: [ { files: "[ {} ]" } ] ...}
Because this conversion was happening after the ingest's validations, the payload was being accepted by avalon as an empty interior files array.
Done when:
We write tests that verify the structure of the payload just before submitting to avalon. This could use the FakeManifest functionality to create a payload, and then verify that all its pieces are present and agree with the input data.
A (now-fixed) bug in the ingest was accidentally converting the payload's interior files array to a string:
{... files: [ { files: "[ {} ]" } ] ...}
Because this conversion was happening after the ingest's validations, the payload was being accepted by avalon as an empty interior files array.
Done when: We write tests that verify the structure of the payload just before submitting to avalon. This could use the FakeManifest functionality to create a payload, and then verify that all its pieces are present and agree with the input data.