Skip to content

Commit c64dc7f

Browse files
committed
Further abstract conformance.
1 parent b182b0a commit c64dc7f

File tree

1 file changed

+34
-12
lines changed

1 file changed

+34
-12
lines changed

tests/suites/conformance.js

Lines changed: 34 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,38 @@
33
* SPDX-License-Identifier: BSD-3-Clause
44
*/
55

6-
describe('Conformance', function() {
7-
beforeEach(function() {
8-
9-
});
10-
it('Specifically, all relevant normative statements in Sections 2. Data ' +
11-
'Model and 3. Algorithms of this document MUST be enforced.', function() {
12-
this.test.link = 'https://w3c.github.io/vc-di-ecdsa/#:~:text=Specifically%2C%20all%20relevant%20normative%20statements%20in%20Sections%202.%20Data%20Model%20and%203.%20Algorithms%20of%20this%20document%20MUST%20be%20enforced.';
6+
export function assertConformance({
7+
issuers,
8+
verifiers,
9+
suiteName,
10+
keyType,
11+
vcVersion,
12+
credentials
13+
}) {
14+
describe(`${suiteName} - Conformance - VC ${vcVersion}`, function() {
15+
this.matrix = true;
16+
this.report = true;
17+
this.implemented = [...issuers];
18+
this.rowLabel = 'Test Name';
19+
this.columnLabel = 'Implementation';
20+
for(const [name, {endpoints}] of issuers) {
21+
describe(`${name} ${keyType}`, function() {
22+
beforeEach(function() {
23+
this.currentTest.cell = {
24+
rowId: this.currentTest.title,
25+
columnId: `${name} ${keyType}`
26+
};
27+
});
28+
it('Specifically, all relevant normative statements in Sections 2. Data ' +
29+
'Model and 3. Algorithms of this document MUST be enforced.', function() {
30+
this.test.link = 'https://w3c.github.io/vc-di-ecdsa/#:~:text=Specifically%2C%20all%20relevant%20normative%20statements%20in%20Sections%202.%20Data%20Model%20and%203.%20Algorithms%20of%20this%20document%20MUST%20be%20enforced.';
31+
});
32+
it('Conforming processors MUST produce errors when non-conforming ' +
33+
'documents are consumed.', function() {
34+
this.test.link = 'https://w3c.github.io/vc-di-ecdsa/#:~:text=Conforming%20processors%20MUST%20produce%20errors%20when%20non%2Dconforming%20documents%20are%20consumed.';
35+
});
36+
});
37+
}
1338
});
14-
it('Conforming processors MUST produce errors when non-conforming ' +
15-
'documents are consumed.', function() {
16-
this.test.link = 'https://w3c.github.io/vc-di-ecdsa/#:~:text=Conforming%20processors%20MUST%20produce%20errors%20when%20non%2Dconforming%20documents%20are%20consumed.';
17-
});
18-
});
39+
}
40+

0 commit comments

Comments
 (0)