Skip to content

Commit 31de013

Browse files
committed
manifest schema: add tests for the subject field
Signed-off-by: Vincent Batts <[email protected]>
1 parent 7a9efbd commit 31de013

File tree

1 file changed

+52
-0
lines changed

1 file changed

+52
-0
lines changed

schema/manifest_test.go

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -215,6 +215,58 @@ func TestManifest(t *testing.T) {
215215
`,
216216
},
217217

218+
// expected success: subject field with a valid descriptor
219+
{
220+
manifest: `
221+
{
222+
"schemaVersion": 2,
223+
"mediaType" : "application/vnd.oci.image.manifest.v1+json",
224+
"subject" : {
225+
"mediaType": "application/vnd.oci.image.manifest.v1+json",
226+
"size": 1234,
227+
"digest": "sha256:220a60ecd4a3c32c282622a625a54db9ba0ff55b5ba9c29c7064a2bc358b6a3e"
228+
},
229+
"config": {
230+
"mediaType": "application/vnd.oci.image.config.v1+json",
231+
"size": 1470,
232+
"digest": "sha256:c86f7763873b6c0aae22d963bab59b4f5debbed6685761b5951584f6efb0633b"
233+
},
234+
"layers": [
235+
{
236+
"mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
237+
"size": 1470,
238+
"digest": "sha256:c86f7763873b6c0aae22d963bab59b4f5debbed6685761b5951584f6efb0633b"
239+
}
240+
]
241+
}
242+
`,
243+
fail: false,
244+
},
245+
246+
// expected failure: subject field with invalid value (something that is not a descriptor)
247+
{
248+
manifest: `
249+
{
250+
"schemaVersion": 2,
251+
"mediaType" : "application/vnd.oci.image.manifest.v1+json",
252+
"subject" : ".nope",
253+
"config": {
254+
"mediaType": "application/vnd.oci.image.config.v1+json",
255+
"size": 1470,
256+
"digest": "sha256:c86f7763873b6c0aae22d963bab59b4f5debbed6685761b5951584f6efb0633b"
257+
},
258+
"layers": [
259+
{
260+
"mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
261+
"size": 1470,
262+
"digest": "sha256:c86f7763873b6c0aae22d963bab59b4f5debbed6685761b5951584f6efb0633b"
263+
}
264+
]
265+
}
266+
`,
267+
fail: true,
268+
},
269+
218270
// expected failure: push bounds of algorithm field in digest too far.
219271
{
220272
manifest: `

0 commit comments

Comments
 (0)