vc-jose-cose-test-suite

Approach

We generate testcases that cover the core data model and securing specification normative statements.

We generate inputs and outputes for each case, so that implementations can consume the test cases when demonstrating conformance.

The structure of each test case is captured in a single yaml file, of the form:

testcases/test-case-name/spec.yml

This file describes the test case, and provides all required inputs and expected outputs.

This file is a reference document, it may contain structures that look like conforming documents, and representation of the results of validation rules against those documents, specifically schema or status validation results.

The validation results are meant to assist implementers and provide clarity regarding the differences between verifification and validation.

testcases/test-case-name/payload.json

This file represents the verifiable credential or presentation.

Examples are hosted via github pages:

testcases/test-case-name/payload.yaml

This file represents the verifiable credential or presentation with selective disclosure

Examples are hosted via github pages:

testcases/test-case-name/payload-disclosure.yaml

This file represents a holder’s preference for disclosing claims:

Examples are hosted via github pages:

testcases/test-case-name/protected-header.json

This file represents the verifiable credential or presentation metadata, including hints related to discovering key material and content types.

Examples are hosted via github pages:

testcases/test-case-name/schema.json

This file represents a json schema, per https://github.com/w3c/vc-json-schema

Example schema is hoested for testing purposes:

testcases/test-case-name/schema.jwt

This file represents a json schema credential, per https://github.com/w3c/vc-json-schema

Example schema credential is hostes for testing purposes:

testcases/test-case-name/status-list.jwt

Example status list is hosted for testing purposes:

This file represents a status list credential, per https://github.com/w3c/vc-status-list-2021