diff --git a/index.html b/index.html index 1eda463..f14b701 100644 --- a/index.html +++ b/index.html @@ -169,22 +169,22 @@

Conformance Testing Results

- Tests passed 147/183 80% + Tests passed 185/223 82%

- Tests failed 36/183 20% + Tests failed 38/223 18%

- Failures 36 + Failures 38

- Tests skipped 13 + Tests skipped 15

- Total tests 196 + Total tests 238

- These tests were run on + These tests were run on

Key

@@ -257,8 +257,10 @@

Issue Credential - Data Integrity

Gen Digital LearnCard Mavennet + Procivis One Core SecureKey SpruceID + Trential Trinsic @@ -339,6 +341,19 @@

Issue Credential - Data Integrity

+ +
+
+
+ Expected no error, got Request failed with status code 400 Bad Request: expected HTTPError: Request failed with status cod… { …(6) } to not exist +
AssertionError: Expected no error, got Request failed with status code 400 Bad Request: expected HTTPError: Request failed with status cod… { …(6) } to not exist
+                        at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)
+                        at shouldReturnResult (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:19:14)
+                        at Context.<anonymous> (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:41:9)
+                        at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
+
+
+
@@ -362,6 +377,11 @@

Issue Credential - Data Integrity

+ +
+
+
+ @@ -439,6 +459,11 @@

Issue Credential - Data Integrity

+ +
+
+
+
@@ -462,6 +487,11 @@

Issue Credential - Data Integrity

+ +
+
+
+ @@ -532,6 +562,11 @@

Issue Credential - Data Integrity

+ +
+
+
+
@@ -555,6 +590,11 @@

Issue Credential - Data Integrity

+ +
+
+
+ @@ -625,6 +665,11 @@

Issue Credential - Data Integrity

+ +
+
+
+
@@ -648,6 +693,11 @@

Issue Credential - Data Integrity

+ +
+
+
+ @@ -718,6 +768,11 @@

Issue Credential - Data Integrity

+ +
+
+
+
@@ -741,6 +796,11 @@

Issue Credential - Data Integrity

+ +
+
+
+ @@ -811,6 +871,11 @@

Issue Credential - Data Integrity

+ +
+
+
+
@@ -834,6 +899,11 @@

Issue Credential - Data Integrity

+ +
+
+
+ @@ -904,6 +974,11 @@

Issue Credential - Data Integrity

+ +
+
+
+
@@ -927,6 +1002,11 @@

Issue Credential - Data Integrity

+ +
+
+
+ @@ -997,6 +1077,11 @@

Issue Credential - Data Integrity

+ +
+
+
+
@@ -1020,6 +1105,11 @@

Issue Credential - Data Integrity

+ +
+
+
+ @@ -1046,8 +1136,8 @@

Issue Credential - Data Integrity

- Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'cache-control': 'no-cache, no-store, must-revalidate', pragma: 'no-cache', expires: '0', vary: 'X-HTTP-Method-Override, Accept-Encoding', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', etag: 'W/"2eb-lsaWNjAi8+F2iz+1xw3D265CKO4"', 'x-cloud-trace-context': 'b1a39279b3ea5c488911db0acff2e197', date: 'Fri, 06 Dec 2024 15:12:23 GMT', server: 'Google Frontend', 'content-length': '747', via: '1.1 google', 'alt-svc': 'h3=":443"; ma=2592000,h3-29=":443"; ma=2592000', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist -
AssertionError: Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'cache-control': 'no-cache, no-store, must-revalidate', pragma: 'no-cache', expires: '0', vary: 'X-HTTP-Method-Override, Accept-Encoding', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', etag: 'W/"2eb-lsaWNjAi8+F2iz+1xw3D265CKO4"', 'x-cloud-trace-context': 'b1a39279b3ea5c488911db0acff2e197', date: 'Fri, 06 Dec 2024 15:12:23 GMT', server: 'Google Frontend', 'content-length': '747', via: '1.1 google', 'alt-svc': 'h3=":443"; ma=2592000,h3-29=":443"; ma=2592000', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist
+                        Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'cache-control': 'no-cache, no-store, must-revalidate', pragma: 'no-cache', expires: '0', vary: 'X-HTTP-Method-Override, Accept-Encoding', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', etag: 'W/"2ec-5wZqxjKYgsD91t8kCbRrPumXaig"', 'x-cloud-trace-context': 'fd8b322cba2959b371e8f4f8e0168818', date: 'Fri, 06 Dec 2024 18:26:04 GMT', server: 'Google Frontend', 'content-length': '748', via: '1.1 google', 'alt-svc': 'h3=":443"; ma=2592000,h3-29=":443"; ma=2592000', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist
+                        
AssertionError: Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'cache-control': 'no-cache, no-store, must-revalidate', pragma: 'no-cache', expires: '0', vary: 'X-HTTP-Method-Override, Accept-Encoding', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', etag: 'W/"2ec-5wZqxjKYgsD91t8kCbRrPumXaig"', 'x-cloud-trace-context': 'fd8b322cba2959b371e8f4f8e0168818', date: 'Fri, 06 Dec 2024 18:26:04 GMT', server: 'Google Frontend', 'content-length': '748', via: '1.1 google', 'alt-svc': 'h3=":443"; ma=2592000,h3-29=":443"; ma=2592000', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist
                         at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)
                         at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:9:14)
                         at Context.<anonymous> (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:131:9)
@@ -1098,6 +1188,11 @@ 

Issue Credential - Data Integrity

+ +
+
+
+
@@ -1121,6 +1216,11 @@

Issue Credential - Data Integrity

+ +
+
+
+ @@ -1154,8 +1254,8 @@

Issue Credential - Data Integrity

- Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'cache-control': 'no-cache, no-store, must-revalidate', pragma: 'no-cache', expires: '0', vary: 'X-HTTP-Method-Override, Accept-Encoding', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', etag: 'W/"2f3-QMu1z8Klqbk7b1IDRSqskckG+9I"', 'x-cloud-trace-context': 'b753580c00bdcc9285e618f150bbc2d3', date: 'Fri, 06 Dec 2024 15:12:23 GMT', server: 'Google Frontend', 'content-length': '755', via: '1.1 google', 'alt-svc': 'h3=":443"; ma=2592000,h3-29=":443"; ma=2592000', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist -
AssertionError: Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'cache-control': 'no-cache, no-store, must-revalidate', pragma: 'no-cache', expires: '0', vary: 'X-HTTP-Method-Override, Accept-Encoding', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', etag: 'W/"2f3-QMu1z8Klqbk7b1IDRSqskckG+9I"', 'x-cloud-trace-context': 'b753580c00bdcc9285e618f150bbc2d3', date: 'Fri, 06 Dec 2024 15:12:23 GMT', server: 'Google Frontend', 'content-length': '755', via: '1.1 google', 'alt-svc': 'h3=":443"; ma=2592000,h3-29=":443"; ma=2592000', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist
+                        Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'cache-control': 'no-cache, no-store, must-revalidate', pragma: 'no-cache', expires: '0', vary: 'X-HTTP-Method-Override, Accept-Encoding', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', etag: 'W/"2f3-k8g0ZOF8gEcXfWa8N6UhyBOPz0o"', 'x-cloud-trace-context': '3334cc6fd3de1460cdaf4f097e449233', date: 'Fri, 06 Dec 2024 18:26:04 GMT', server: 'Google Frontend', 'content-length': '755', via: '1.1 google', 'alt-svc': 'h3=":443"; ma=2592000,h3-29=":443"; ma=2592000', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist
+                        
AssertionError: Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'cache-control': 'no-cache, no-store, must-revalidate', pragma: 'no-cache', expires: '0', vary: 'X-HTTP-Method-Override, Accept-Encoding', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', etag: 'W/"2f3-k8g0ZOF8gEcXfWa8N6UhyBOPz0o"', 'x-cloud-trace-context': '3334cc6fd3de1460cdaf4f097e449233', date: 'Fri, 06 Dec 2024 18:26:04 GMT', server: 'Google Frontend', 'content-length': '755', via: '1.1 google', 'alt-svc': 'h3=":443"; ma=2592000,h3-29=":443"; ma=2592000', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist
                         at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)
                         at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:9:14)
                         at Context.<anonymous> (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:143:11)
@@ -1206,6 +1306,11 @@ 

Issue Credential - Data Integrity

+ +
+
+
+
@@ -1229,6 +1334,11 @@

Issue Credential - Data Integrity

+ +
+
+
+ @@ -1306,6 +1416,11 @@

Issue Credential - Data Integrity

+ +
+
+
+
@@ -1329,6 +1444,11 @@

Issue Credential - Data Integrity

+ +
+
+
+ @@ -1352,8 +1472,8 @@

Issue Credential - Data Integrity

- Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'content-type': 'application/ld+json', 'x-cloud-trace-context': 'bcb5c28f403e99f0280dee8ee8154c4f', date: 'Fri, 06 Dec 2024 15:12:19 GMT', server: 'Google Frontend', 'content-length': '681', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist -
AssertionError: Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'content-type': 'application/ld+json', 'x-cloud-trace-context': 'bcb5c28f403e99f0280dee8ee8154c4f', date: 'Fri, 06 Dec 2024 15:12:19 GMT', server: 'Google Frontend', 'content-length': '681', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist
+                        Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'content-type': 'application/ld+json', 'x-cloud-trace-context': '9cb57378cce9cf3373b111c6a63dfec0', date: 'Fri, 06 Dec 2024 18:25:59 GMT', server: 'Google Frontend', 'content-length': '681', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist
+                        
AssertionError: Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'content-type': 'application/ld+json', 'x-cloud-trace-context': '9cb57378cce9cf3373b111c6a63dfec0', date: 'Fri, 06 Dec 2024 18:25:59 GMT', server: 'Google Frontend', 'content-length': '681', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist
                         at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)
                         at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:9:14)
                         at Context.<anonymous> (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:168:11)
@@ -1421,6 +1541,11 @@ 

Issue Credential - Data Integrity

+ +
+
+
+
@@ -1444,6 +1569,11 @@

Issue Credential - Data Integrity

+ +
+
+
+ @@ -1522,6 +1652,19 @@

Issue Credential - Data Integrity

+ +
+
+
+ Expected no error, got Request failed with status code 400 Bad Request: expected HTTPError: Request failed with status cod… { …(6) } to not exist +
AssertionError: Expected no error, got Request failed with status code 400 Bad Request: expected HTTPError: Request failed with status cod… { …(6) } to not exist
+                        at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)
+                        at shouldReturnResult (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:19:14)
+                        at Context.<anonymous> (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:193:9)
+                        at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
+
+
+
@@ -1545,6 +1688,11 @@

Issue Credential - Data Integrity

+ +
+
+
+ @@ -1572,9 +1720,10 @@

Issue Credential - JWT

SpruceID + Trential - + MUST successfully issue a credential. @@ -1585,23 +1734,16 @@

Issue Credential - JWT

- - - - - Request body MUST have property "credential". - -
- + - credential MUST have property "@context". + Request body MUST have property "credential". @@ -1609,23 +1751,16 @@

Issue Credential - JWT

- - - - - credential "@context" MUST be an array. - -
- + - credential "@context" items MUST be strings. + credential MUST have property "@context". @@ -1633,23 +1768,16 @@

Issue Credential - JWT

- - - - - credential MUST have property "type" - -
- + - "credential.type" MUST be an array. + credential "@context" MUST be an array. @@ -1657,23 +1785,16 @@

Issue Credential - JWT

- - - - - "credential.type" items MUST be strings - -
- + - credential MUST have property "issuer" + credential "@context" items MUST be strings. @@ -1681,23 +1802,16 @@

Issue Credential - JWT

- - - - - "credential.issuer" MUST be a string or an object - -
- + - credential MUST have property "credentialSubject" + credential MUST have property "type" @@ -1705,23 +1819,16 @@

Issue Credential - JWT

- - - - - "credential.credentialSubject" MUST be an object - -
- + - credential MAY have property "issuanceDate" + "credential.type" MUST be an array. @@ -1729,211 +1836,127 @@

Issue Credential - JWT

- - - - - credential MAY have property "expirationDate" - -
- - -
-
-
-
-
-
-
-
-
-
-
-

At Risk

-
- - - - - - - + - - - - - - - - + - - - - - - - - + - - - - - - - - + - - - - - - - - + - - - - - - - - + - - - - - - - - + - - - - - - - diff --git a/index.json b/index.json index 71823ed..6a84093 100644 --- a/index.json +++ b/index.json @@ -22,9 +22,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "7r5GdTOboJDTtendLaUie", "ctx": null, - "_testId": "urn:uuid:03454759-52c8-45f7-b641-dd07851294f3", + "_testId": "urn:uuid:951ee26e-9e7e-497a-bfc0-4073cbeee1be", "_events": {}, "_eventsCount": 1, "cell": { @@ -35,12 +35,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 313, + "_idleStart": 300, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 958, + "duration": 781, "state": "passed", "speed": "slow" }, @@ -57,9 +57,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "7r5GdTOboJDTtendLaUie", "ctx": null, - "_testId": "urn:uuid:a0046aed-515f-4892-9828-217abc341f43", + "_testId": "urn:uuid:817dff0f-e8a7-4773-aa39-4010e9f949f9", "_events": {}, "_eventsCount": 1, "cell": { @@ -70,12 +70,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 1274, + "_idleStart": 1081, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 76, + "duration": 83, "state": "failed", "err": { "name": "AssertionError", @@ -103,9 +103,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "7r5GdTOboJDTtendLaUie", "ctx": null, - "_testId": "urn:uuid:bbc25d06-cd62-44ec-810a-ad4b5c184a34", + "_testId": "urn:uuid:5deb7e9b-ed27-4230-803f-ac4d8f2f111f", "_events": {}, "_eventsCount": 1, "cell": { @@ -116,12 +116,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 1353, + "_idleStart": 1168, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 126, + "duration": 161, "state": "passed", "speed": "slow" }, @@ -138,9 +138,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "7r5GdTOboJDTtendLaUie", "ctx": null, - "_testId": "urn:uuid:21cacf70-2581-4428-9ba3-93d14ec2db72", + "_testId": "urn:uuid:7f28fe1e-e8e0-4873-8d51-0295ccafa15f", "_events": {}, "_eventsCount": 1, "cell": { @@ -151,12 +151,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 1480, + "_idleStart": 1329, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 67, + "duration": 70, "state": "passed", "speed": "medium" }, @@ -173,9 +173,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "7r5GdTOboJDTtendLaUie", "ctx": null, - "_testId": "urn:uuid:dd27876e-700c-4c9f-ae89-4feedab3c802", + "_testId": "urn:uuid:1bc6c1a4-2e43-41ba-bf49-d95180ef11e5", "_events": {}, "_eventsCount": 1, "cell": { @@ -186,12 +186,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 1548, + "_idleStart": 1399, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 841, + "duration": 593, "state": "passed", "speed": "slow" }, @@ -208,9 +208,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "7r5GdTOboJDTtendLaUie", "ctx": null, - "_testId": "urn:uuid:63a698e1-87a2-4489-bbcd-6f0cb834bc37", + "_testId": "urn:uuid:e9ed149d-c4d0-4d40-ad48-c6500c2434e2", "_events": {}, "_eventsCount": 1, "cell": { @@ -221,12 +221,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 2390, + "_idleStart": 1993, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 67, + "duration": 69, "state": "passed", "speed": "medium" }, @@ -243,9 +243,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "7r5GdTOboJDTtendLaUie", "ctx": null, - "_testId": "urn:uuid:355d8716-3cc3-499b-b276-ca934eed70b1", + "_testId": "urn:uuid:add6e264-5dad-4fcb-aa2f-07e8bb18c19d", "_events": {}, "_eventsCount": 1, "cell": { @@ -256,12 +256,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 2457, + "_idleStart": 2063, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 80, + "duration": 103, "state": "passed", "speed": "slow" }, @@ -278,9 +278,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "7r5GdTOboJDTtendLaUie", "ctx": null, - "_testId": "urn:uuid:4aeea521-03e8-4c99-a21c-93a9437d1235", + "_testId": "urn:uuid:406c1196-1941-44de-86f2-1f11ec8e9e54", "_events": {}, "_eventsCount": 1, "cell": { @@ -291,12 +291,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 2538, + "_idleStart": 2166, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 280, + "duration": 347, "state": "passed", "speed": "slow" }, @@ -313,9 +313,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "7r5GdTOboJDTtendLaUie", "ctx": null, - "_testId": "urn:uuid:5adbb624-3cd6-4381-9f25-d8a256416713", + "_testId": "urn:uuid:9ef857cc-0756-4c8e-92eb-56dde69cf587", "_events": {}, "_eventsCount": 1, "cell": { @@ -326,7 +326,7 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 2819, + "_idleStart": 2513, "_onTimeout": null, "_repeat": null, "_destroyed": true @@ -348,9 +348,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "7r5GdTOboJDTtendLaUie", "ctx": null, - "_testId": "urn:uuid:36bbd891-96f2-4bd4-8563-5107c4dc3f2a", + "_testId": "urn:uuid:1cfe9a1f-b660-4ffe-9756-319f1450b5a0", "_events": {}, "_eventsCount": 1, "cell": { @@ -361,12 +361,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 2888, + "_idleStart": 2582, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 294, + "duration": 287, "state": "passed", "speed": "slow" }, @@ -383,9 +383,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "7r5GdTOboJDTtendLaUie", "ctx": null, - "_testId": "urn:uuid:5d64f735-b164-46e0-b1ab-1c63512745da", + "_testId": "urn:uuid:5343e97a-6956-4836-a969-8e6e8760d219", "_events": {}, "_eventsCount": 1, "cell": { @@ -396,12 +396,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 3182, + "_idleStart": 2869, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 65, + "duration": 70, "state": "passed", "speed": "medium" }, @@ -418,9 +418,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "7r5GdTOboJDTtendLaUie", "ctx": null, - "_testId": "urn:uuid:ec91d01f-dd7b-4047-a9ed-0872a585b5b2", + "_testId": "urn:uuid:7c8ffd92-577b-442b-9736-3714438e156c", "_events": {}, "_eventsCount": 1, "cell": { @@ -431,12 +431,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 3247, + "_idleStart": 2938, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 276, + "duration": 292, "state": "failed", "err": { "name": "AssertionError", @@ -463,7 +463,7 @@ "_currentRetry": 0, "pending": true, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "7r5GdTOboJDTtendLaUie", "ctx": null, "state": "pending" }, @@ -480,9 +480,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "7r5GdTOboJDTtendLaUie", "ctx": null, - "_testId": "urn:uuid:7ea1885a-1981-42a7-ac4e-a4cdfbfc9e2e", + "_testId": "urn:uuid:3fa4b155-997a-4e2c-b8db-bcbde67c1756", "_events": {}, "_eventsCount": 1, "cell": { @@ -493,12 +493,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 3523, + "_idleStart": 3231, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 99, + "duration": 149, "state": "passed", "speed": "slow" } @@ -516,9 +516,9 @@ "_onlyTests": [], "_onlySuites": [], "delayed": false, - "parent": "uGyJV-_eEt_hXf3_UYi8t", + "parent": "RufV3R04HvjutDLotPzra", "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "_testId": "urn:uuid:a9894cb9-7954-4319-a12f-98dc92aad32c" + "_testId": "urn:uuid:0c69f173-58f3-4901-9dcf-c3c26502cc9e" }, { "title": "apicatalog.com", @@ -538,9 +538,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "OGy1YBvexRzvm4E4rogkf", "ctx": null, - "_testId": "urn:uuid:592a2ffd-3b2d-4c21-a687-cf3e86c463c7", + "_testId": "urn:uuid:eee27d59-d76b-41f7-88dd-ae111af9bd2a", "_events": {}, "_eventsCount": 1, "cell": { @@ -551,12 +551,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 3623, + "_idleStart": 3380, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 1124, + "duration": 4854, "state": "passed", "speed": "slow" }, @@ -573,9 +573,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "OGy1YBvexRzvm4E4rogkf", "ctx": null, - "_testId": "urn:uuid:6be414c2-37c5-432a-b792-3ddbafdaf74a", + "_testId": "urn:uuid:786ee349-7da7-4ec6-992c-000ff0ebfb1f", "_events": {}, "_eventsCount": 1, "cell": { @@ -586,12 +586,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 4748, + "_idleStart": 8234, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 43, + "duration": 49, "state": "passed", "speed": "medium" }, @@ -608,9 +608,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "OGy1YBvexRzvm4E4rogkf", "ctx": null, - "_testId": "urn:uuid:55a13bc4-300e-4a9b-bcf9-2763c4284e9c", + "_testId": "urn:uuid:047302b5-23ce-4d73-a411-92cb8fdfc0d0", "_events": {}, "_eventsCount": 1, "cell": { @@ -621,12 +621,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 4791, + "_idleStart": 8284, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 42, + "duration": 48, "state": "passed", "speed": "medium" }, @@ -643,9 +643,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "OGy1YBvexRzvm4E4rogkf", "ctx": null, - "_testId": "urn:uuid:bf6ea61e-fc4b-47c8-b593-365915c0fbc1", + "_testId": "urn:uuid:f1f0e552-0bee-47f2-b2c5-6129912fbbdc", "_events": {}, "_eventsCount": 1, "cell": { @@ -656,12 +656,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 4833, + "_idleStart": 8332, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 46, + "duration": 51, "state": "passed", "speed": "medium" }, @@ -678,9 +678,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "OGy1YBvexRzvm4E4rogkf", "ctx": null, - "_testId": "urn:uuid:f8bc1b53-459e-4730-bcf8-9469c373f595", + "_testId": "urn:uuid:7dcaa1e1-af28-432d-a7f7-f6a7502caeff", "_events": {}, "_eventsCount": 1, "cell": { @@ -691,12 +691,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 4879, + "_idleStart": 8384, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 194, + "duration": 227, "state": "passed", "speed": "slow" }, @@ -713,9 +713,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "OGy1YBvexRzvm4E4rogkf", "ctx": null, - "_testId": "urn:uuid:e6f8b480-d810-4ca8-88bc-0fd3a74c98dc", + "_testId": "urn:uuid:fbdbf39a-3632-41eb-a8f8-a7d022cae452", "_events": {}, "_eventsCount": 1, "cell": { @@ -726,12 +726,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 5074, + "_idleStart": 8611, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 48, + "duration": 60, "state": "passed", "speed": "medium" }, @@ -748,9 +748,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "OGy1YBvexRzvm4E4rogkf", "ctx": null, - "_testId": "urn:uuid:155fabb8-b7be-4fd7-b424-ac5ae0dc9a88", + "_testId": "urn:uuid:517be617-3895-4b01-98d3-8c30d413c1c9", "_events": {}, "_eventsCount": 1, "cell": { @@ -761,12 +761,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 5122, + "_idleStart": 8671, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 46, + "duration": 50, "state": "passed", "speed": "medium" }, @@ -783,9 +783,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "OGy1YBvexRzvm4E4rogkf", "ctx": null, - "_testId": "urn:uuid:6b1c1c96-bba5-4722-beb2-0a7d78cf7a72", + "_testId": "urn:uuid:1f4b8dd3-b7c3-4a45-b331-b5fa11fd0990", "_events": {}, "_eventsCount": 1, "cell": { @@ -796,12 +796,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 5169, + "_idleStart": 8721, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 177, + "duration": 200, "state": "passed", "speed": "slow" }, @@ -818,9 +818,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "OGy1YBvexRzvm4E4rogkf", "ctx": null, - "_testId": "urn:uuid:fbcbcbf1-6c2f-4e33-bb19-deec324a9915", + "_testId": "urn:uuid:b141c5f1-5c31-48ab-aa2d-1ab014c23e51", "_events": {}, "_eventsCount": 1, "cell": { @@ -831,12 +831,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 5346, + "_idleStart": 8921, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 45, + "duration": 49, "state": "passed", "speed": "medium" }, @@ -853,9 +853,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "OGy1YBvexRzvm4E4rogkf", "ctx": null, - "_testId": "urn:uuid:1ca23c03-f97a-4b51-841e-cac43d2ae549", + "_testId": "urn:uuid:cbe6a52e-26d5-4d25-a7b1-600f860a8918", "_events": {}, "_eventsCount": 1, "cell": { @@ -866,12 +866,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 5390, + "_idleStart": 8970, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 173, + "duration": 208, "state": "passed", "speed": "slow" }, @@ -888,9 +888,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "OGy1YBvexRzvm4E4rogkf", "ctx": null, - "_testId": "urn:uuid:2ec96422-a7e1-453b-b597-f8d4402b56cf", + "_testId": "urn:uuid:2c6d4dc0-6232-4018-b977-ce5289debe0b", "_events": {}, "_eventsCount": 1, "cell": { @@ -901,12 +901,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 5564, + "_idleStart": 9178, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 43, + "duration": 52, "state": "passed", "speed": "medium" }, @@ -923,9 +923,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "OGy1YBvexRzvm4E4rogkf", "ctx": null, - "_testId": "urn:uuid:cd34495e-5fd3-4e98-8859-d3bec40300e6", + "_testId": "urn:uuid:2fd5fa51-7655-46dc-b541-949293b4c4dc", "_events": {}, "_eventsCount": 1, "cell": { @@ -936,20 +936,20 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 5606, + "_idleStart": 9230, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 274, + "duration": 315, "state": "failed", "err": { "name": "AssertionError", - "message": "Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'content-type': 'application/ld+json', 'x-cloud-trace-context': 'bcb5c28f403e99f0280dee8ee8154c4f', date: 'Fri, 06 Dec 2024 15:12:19 GMT', server: 'Google Frontend', 'content-length': '681', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist", + "message": "Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'content-type': 'application/ld+json', 'x-cloud-trace-context': '9cb57378cce9cf3373b111c6a63dfec0', date: 'Fri, 06 Dec 2024 18:25:59 GMT', server: 'Google Frontend', 'content-length': '681', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist", "showDiff": false, "actual": {}, "operator": "notStrictEqual", - "stack": "AssertionError: Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'content-type': 'application/ld+json', 'x-cloud-trace-context': 'bcb5c28f403e99f0280dee8ee8154c4f', date: 'Fri, 06 Dec 2024 15:12:19 GMT', server: 'Google Frontend', 'content-length': '681', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:9:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:168:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + "stack": "AssertionError: Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'content-type': 'application/ld+json', 'x-cloud-trace-context': '9cb57378cce9cf3373b111c6a63dfec0', date: 'Fri, 06 Dec 2024 18:25:59 GMT', server: 'Google Frontend', 'content-length': '681', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:9:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:168:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" } }, { @@ -964,7 +964,7 @@ "_currentRetry": 0, "pending": true, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "OGy1YBvexRzvm4E4rogkf", "ctx": null, "state": "pending" }, @@ -981,9 +981,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "OGy1YBvexRzvm4E4rogkf", "ctx": null, - "_testId": "urn:uuid:f0f71f14-60b1-494d-9fde-9e879184a399", + "_testId": "urn:uuid:f85a074f-8649-45a2-9742-84d476642fd8", "_events": {}, "_eventsCount": 1, "cell": { @@ -994,12 +994,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 5882, + "_idleStart": 9546, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 90, + "duration": 95, "state": "passed", "speed": "slow" } @@ -1017,9 +1017,9 @@ "_onlyTests": [], "_onlySuites": [], "delayed": false, - "parent": "uGyJV-_eEt_hXf3_UYi8t", + "parent": "RufV3R04HvjutDLotPzra", "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "_testId": "urn:uuid:c43fe404-2ebb-4682-96db-ad741ec99845" + "_testId": "urn:uuid:33a50825-8f8f-4ec2-85ac-994bb93addef" }, { "title": "Danube Tech", @@ -1039,9 +1039,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "W4GKczJeEHTLOnDWS6bAa", "ctx": null, - "_testId": "urn:uuid:f37b9867-d73e-4e7b-9376-07f979ddd7b9", + "_testId": "urn:uuid:95d73744-564f-491c-8931-89ff63c08046", "_events": {}, "_eventsCount": 1, "cell": { @@ -1052,12 +1052,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 5972, + "_idleStart": 9642, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 634, + "duration": 679, "state": "passed", "speed": "slow" }, @@ -1074,9 +1074,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "W4GKczJeEHTLOnDWS6bAa", "ctx": null, - "_testId": "urn:uuid:297ab179-a4a8-41cd-814b-f7a239c17c2c", + "_testId": "urn:uuid:1ef18fb6-3b14-49db-bb10-ae3fd302673c", "_events": {}, "_eventsCount": 1, "cell": { @@ -1087,12 +1087,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 6606, + "_idleStart": 10321, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 108, + "duration": 109, "state": "passed", "speed": "slow" }, @@ -1109,9 +1109,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "W4GKczJeEHTLOnDWS6bAa", "ctx": null, - "_testId": "urn:uuid:cf16d108-dc8f-4d8b-b9bc-f7dc6a7b76cf", + "_testId": "urn:uuid:4b824638-97c3-486f-bfd3-b85d34fa0619", "_events": {}, "_eventsCount": 1, "cell": { @@ -1122,12 +1122,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 6715, + "_idleStart": 10430, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 113, + "duration": 109, "state": "passed", "speed": "slow" }, @@ -1144,9 +1144,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "W4GKczJeEHTLOnDWS6bAa", "ctx": null, - "_testId": "urn:uuid:73566455-ff49-42b2-86f6-ba11332b70e7", + "_testId": "urn:uuid:07b93b8f-f908-4b30-a647-d5af00dfd6fc", "_events": {}, "_eventsCount": 1, "cell": { @@ -1157,12 +1157,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 6828, + "_idleStart": 10539, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 121, + "duration": 108, "state": "passed", "speed": "slow" }, @@ -1179,9 +1179,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "W4GKczJeEHTLOnDWS6bAa", "ctx": null, - "_testId": "urn:uuid:d18d273d-f55e-4293-b851-0aff82cbe308", + "_testId": "urn:uuid:c3710621-c3ea-4d01-b566-eb38f3b90a87", "_events": {}, "_eventsCount": 1, "cell": { @@ -1192,12 +1192,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 6949, + "_idleStart": 10648, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 741, + "duration": 748, "state": "passed", "speed": "slow" }, @@ -1214,9 +1214,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "W4GKczJeEHTLOnDWS6bAa", "ctx": null, - "_testId": "urn:uuid:772194cd-1bea-45f2-929e-5521775b7019", + "_testId": "urn:uuid:0c2a1e15-7c7f-459d-8f8f-38f41a907175", "_events": {}, "_eventsCount": 1, "cell": { @@ -1227,12 +1227,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 7691, + "_idleStart": 11395, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 111, + "duration": 108, "state": "passed", "speed": "slow" }, @@ -1249,9 +1249,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "W4GKczJeEHTLOnDWS6bAa", "ctx": null, - "_testId": "urn:uuid:b1208a15-40f6-4721-9bc0-c0343325b821", + "_testId": "urn:uuid:b5aef532-fb39-42f4-aef6-866527a999c1", "_events": {}, "_eventsCount": 1, "cell": { @@ -1262,12 +1262,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 7802, + "_idleStart": 11504, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 115, + "duration": 110, "state": "passed", "speed": "slow" }, @@ -1284,9 +1284,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "W4GKczJeEHTLOnDWS6bAa", "ctx": null, - "_testId": "urn:uuid:6cf9fae1-ef99-45e4-be5e-2906cde72ba8", + "_testId": "urn:uuid:6b681080-5e70-4e12-8230-cb87b1906360", "_events": {}, "_eventsCount": 1, "cell": { @@ -1297,12 +1297,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 7918, + "_idleStart": 11613, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 440, + "duration": 445, "state": "passed", "speed": "slow" }, @@ -1319,9 +1319,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "W4GKczJeEHTLOnDWS6bAa", "ctx": null, - "_testId": "urn:uuid:7124df3a-0ef0-4b89-a425-e69ee4b470b5", + "_testId": "urn:uuid:1f081a6e-529b-4f9c-8c12-64afc56bf520", "_events": {}, "_eventsCount": 1, "cell": { @@ -1332,7 +1332,7 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 8358, + "_idleStart": 12059, "_onTimeout": null, "_repeat": null, "_destroyed": true @@ -1354,9 +1354,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "W4GKczJeEHTLOnDWS6bAa", "ctx": null, - "_testId": "urn:uuid:a539180e-5357-4b2b-9024-39895e4eda25", + "_testId": "urn:uuid:f1faccad-0e6a-4e65-9424-798747a678c1", "_events": {}, "_eventsCount": 1, "cell": { @@ -1367,12 +1367,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 8466, + "_idleStart": 12167, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 239, + "duration": 221, "state": "failed", "err": { "name": "AssertionError", @@ -1400,9 +1400,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "W4GKczJeEHTLOnDWS6bAa", "ctx": null, - "_testId": "urn:uuid:3b308952-5b3c-46be-93f6-a0878b960ce5", + "_testId": "urn:uuid:e25ee4cb-ac98-48d5-b12e-c40aef5932d3", "_events": {}, "_eventsCount": 1, "cell": { @@ -1413,12 +1413,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 8707, + "_idleStart": 12389, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 116, + "duration": 108, "state": "passed", "speed": "slow" }, @@ -1435,9 +1435,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "W4GKczJeEHTLOnDWS6bAa", "ctx": null, - "_testId": "urn:uuid:d8577473-7c93-4d75-88af-88cc7ba4c5af", + "_testId": "urn:uuid:424caf4b-519f-4952-b34f-8e026caa5d63", "_events": {}, "_eventsCount": 1, "cell": { @@ -1448,7 +1448,7 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 8823, + "_idleStart": 12498, "_onTimeout": null, "_repeat": null, "_destroyed": true @@ -1469,7 +1469,7 @@ "_currentRetry": 0, "pending": true, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "W4GKczJeEHTLOnDWS6bAa", "ctx": null, "state": "pending" }, @@ -1486,9 +1486,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "W4GKczJeEHTLOnDWS6bAa", "ctx": null, - "_testId": "urn:uuid:b6c72726-09f3-4991-a51c-790cc5cda7c9", + "_testId": "urn:uuid:371a5b9a-2b78-4924-bc44-7249ed8dce7b", "_events": {}, "_eventsCount": 1, "cell": { @@ -1499,12 +1499,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 9376, + "_idleStart": 13052, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 165, + "duration": 171, "state": "passed", "speed": "slow" } @@ -1522,9 +1522,9 @@ "_onlyTests": [], "_onlySuites": [], "delayed": false, - "parent": "uGyJV-_eEt_hXf3_UYi8t", + "parent": "RufV3R04HvjutDLotPzra", "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "_testId": "urn:uuid:80d07a13-8f29-44d4-be4c-d50b14782744" + "_testId": "urn:uuid:65d05769-e2c0-4c97-a673-6543f2aee97b" }, { "title": "Digital Bazaar", @@ -1544,9 +1544,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", "ctx": null, - "_testId": "urn:uuid:be854829-7ae4-47b3-9401-9ef3a593d8d1", + "_testId": "urn:uuid:201ca648-fb14-46d4-a6e2-cf2622a9c9af", "_events": {}, "_eventsCount": 1, "cell": { @@ -1557,12 +1557,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 9542, + "_idleStart": 13223, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 455, + "duration": 662, "state": "passed", "speed": "slow" }, @@ -1579,9 +1579,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", "ctx": null, - "_testId": "urn:uuid:a8b584e9-e8de-4d60-8b53-60a0fe9373dc", + "_testId": "urn:uuid:5ea9f53c-1831-4611-83e1-ffc17f76bde7", "_events": {}, "_eventsCount": 1, "cell": { @@ -1592,12 +1592,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 9997, + "_idleStart": 13884, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 47, + "duration": 39, "state": "passed", "speed": "medium" }, @@ -1614,9 +1614,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", "ctx": null, - "_testId": "urn:uuid:a1de1c20-ef0f-4e8c-a78c-3d7145e698ff", + "_testId": "urn:uuid:f0b467c5-0f9e-43b7-ada9-66519caa7a35", "_events": {}, "_eventsCount": 1, "cell": { @@ -1627,14 +1627,14 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 10044, + "_idleStart": 13924, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 31, + "duration": 45, "state": "passed", - "speed": "fast" + "speed": "medium" }, { "type": "test", @@ -1649,9 +1649,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", "ctx": null, - "_testId": "urn:uuid:cacc7a90-496b-41df-a585-5aede0efae94", + "_testId": "urn:uuid:3930c66a-21ea-4a1d-b862-9df309149d16", "_events": {}, "_eventsCount": 1, "cell": { @@ -1662,12 +1662,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 10076, + "_idleStart": 13969, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 35, + "duration": 36, "state": "passed", "speed": "fast" }, @@ -1684,9 +1684,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", "ctx": null, - "_testId": "urn:uuid:6eade2c9-865c-491f-8cfa-d2d46236f401", + "_testId": "urn:uuid:be639cb9-cb1a-44f2-a546-1ca4d40f56ac", "_events": {}, "_eventsCount": 1, "cell": { @@ -1697,12 +1697,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 10111, + "_idleStart": 14005, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 133, + "duration": 146, "state": "passed", "speed": "slow" }, @@ -1719,9 +1719,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", "ctx": null, - "_testId": "urn:uuid:a592a930-8e32-4485-97a7-2b7bfcecb322", + "_testId": "urn:uuid:33ee88db-bd9b-47f2-8e84-3a47e6d1b28e", "_events": {}, "_eventsCount": 1, "cell": { @@ -1732,12 +1732,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 10245, + "_idleStart": 14151, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 33, + "duration": 36, "state": "passed", "speed": "fast" }, @@ -1754,9 +1754,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", "ctx": null, - "_testId": "urn:uuid:226a7d37-c733-4a7e-a735-1c12788d1458", + "_testId": "urn:uuid:0ee5b96f-1628-4f2c-af13-65f0427a97c4", "_events": {}, "_eventsCount": 1, "cell": { @@ -1767,7 +1767,7 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 10278, + "_idleStart": 14188, "_onTimeout": null, "_repeat": null, "_destroyed": true @@ -1789,9 +1789,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", "ctx": null, - "_testId": "urn:uuid:950ce732-093d-4fbc-ba73-462f18f56455", + "_testId": "urn:uuid:12d44609-3ac7-4b80-8981-812826e97bdc", "_events": {}, "_eventsCount": 1, "cell": { @@ -1802,12 +1802,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 10314, + "_idleStart": 14223, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 250, + "duration": 153, "state": "passed", "speed": "slow" }, @@ -1824,9 +1824,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", "ctx": null, - "_testId": "urn:uuid:85fe179e-fb9d-482b-9e22-1fef6b6fcc97", + "_testId": "urn:uuid:6d5df37c-091c-43fb-8616-43c0ffad0ea7", "_events": {}, "_eventsCount": 1, "cell": { @@ -1837,20 +1837,20 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 10565, + "_idleStart": 14377, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 87, + "duration": 492, "state": "failed", "err": { "name": "AssertionError", - "message": "Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'cache-control': 'no-cache, no-store, must-revalidate', pragma: 'no-cache', expires: '0', vary: 'X-HTTP-Method-Override, Accept-Encoding', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', etag: 'W/\"2eb-lsaWNjAi8+F2iz+1xw3D265CKO4\"', 'x-cloud-trace-context': 'b1a39279b3ea5c488911db0acff2e197', date: 'Fri, 06 Dec 2024 15:12:23 GMT', server: 'Google Frontend', 'content-length': '747', via: '1.1 google', 'alt-svc': 'h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist", + "message": "Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'cache-control': 'no-cache, no-store, must-revalidate', pragma: 'no-cache', expires: '0', vary: 'X-HTTP-Method-Override, Accept-Encoding', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', etag: 'W/\"2ec-5wZqxjKYgsD91t8kCbRrPumXaig\"', 'x-cloud-trace-context': 'fd8b322cba2959b371e8f4f8e0168818', date: 'Fri, 06 Dec 2024 18:26:04 GMT', server: 'Google Frontend', 'content-length': '748', via: '1.1 google', 'alt-svc': 'h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist", "showDiff": false, "actual": {}, "operator": "notStrictEqual", - "stack": "AssertionError: Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'cache-control': 'no-cache, no-store, must-revalidate', pragma: 'no-cache', expires: '0', vary: 'X-HTTP-Method-Override, Accept-Encoding', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', etag: 'W/\"2eb-lsaWNjAi8+F2iz+1xw3D265CKO4\"', 'x-cloud-trace-context': 'b1a39279b3ea5c488911db0acff2e197', date: 'Fri, 06 Dec 2024 15:12:23 GMT', server: 'Google Frontend', 'content-length': '747', via: '1.1 google', 'alt-svc': 'h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:9:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:131:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + "stack": "AssertionError: Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'cache-control': 'no-cache, no-store, must-revalidate', pragma: 'no-cache', expires: '0', vary: 'X-HTTP-Method-Override, Accept-Encoding', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', etag: 'W/\"2ec-5wZqxjKYgsD91t8kCbRrPumXaig\"', 'x-cloud-trace-context': 'fd8b322cba2959b371e8f4f8e0168818', date: 'Fri, 06 Dec 2024 18:26:04 GMT', server: 'Google Frontend', 'content-length': '748', via: '1.1 google', 'alt-svc': 'h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:9:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:131:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" } }, { @@ -1866,9 +1866,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", "ctx": null, - "_testId": "urn:uuid:90bdd138-8043-4d22-9096-5d61e4d8fb95", + "_testId": "urn:uuid:b9ed63af-3064-4d90-84ba-65d8a5d03410", "_events": {}, "_eventsCount": 1, "cell": { @@ -1879,20 +1879,20 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 10653, + "_idleStart": 14870, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 92, + "duration": 76, "state": "failed", "err": { "name": "AssertionError", - "message": "Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'cache-control': 'no-cache, no-store, must-revalidate', pragma: 'no-cache', expires: '0', vary: 'X-HTTP-Method-Override, Accept-Encoding', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', etag: 'W/\"2f3-QMu1z8Klqbk7b1IDRSqskckG+9I\"', 'x-cloud-trace-context': 'b753580c00bdcc9285e618f150bbc2d3', date: 'Fri, 06 Dec 2024 15:12:23 GMT', server: 'Google Frontend', 'content-length': '755', via: '1.1 google', 'alt-svc': 'h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist", + "message": "Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'cache-control': 'no-cache, no-store, must-revalidate', pragma: 'no-cache', expires: '0', vary: 'X-HTTP-Method-Override, Accept-Encoding', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', etag: 'W/\"2f3-k8g0ZOF8gEcXfWa8N6UhyBOPz0o\"', 'x-cloud-trace-context': '3334cc6fd3de1460cdaf4f097e449233', date: 'Fri, 06 Dec 2024 18:26:04 GMT', server: 'Google Frontend', 'content-length': '755', via: '1.1 google', 'alt-svc': 'h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist", "showDiff": false, "actual": {}, "operator": "notStrictEqual", - "stack": "AssertionError: Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'cache-control': 'no-cache, no-store, must-revalidate', pragma: 'no-cache', expires: '0', vary: 'X-HTTP-Method-Override, Accept-Encoding', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', etag: 'W/\"2f3-QMu1z8Klqbk7b1IDRSqskckG+9I\"', 'x-cloud-trace-context': 'b753580c00bdcc9285e618f150bbc2d3', date: 'Fri, 06 Dec 2024 15:12:23 GMT', server: 'Google Frontend', 'content-length': '755', via: '1.1 google', 'alt-svc': 'h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:9:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:143:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + "stack": "AssertionError: Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'cache-control': 'no-cache, no-store, must-revalidate', pragma: 'no-cache', expires: '0', vary: 'X-HTTP-Method-Override, Accept-Encoding', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', etag: 'W/\"2f3-k8g0ZOF8gEcXfWa8N6UhyBOPz0o\"', 'x-cloud-trace-context': '3334cc6fd3de1460cdaf4f097e449233', date: 'Fri, 06 Dec 2024 18:26:04 GMT', server: 'Google Frontend', 'content-length': '755', via: '1.1 google', 'alt-svc': 'h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:9:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:143:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" } }, { @@ -1908,9 +1908,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", "ctx": null, - "_testId": "urn:uuid:d68fe5bd-8a63-4e98-b62d-66b26528ddd5", + "_testId": "urn:uuid:6027d7b5-1ccd-483f-bafe-61ec1e2dfcb3", "_events": {}, "_eventsCount": 1, "cell": { @@ -1921,12 +1921,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 10746, + "_idleStart": 14947, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 44, + "duration": 54, "state": "passed", "speed": "medium" }, @@ -1943,9 +1943,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", "ctx": null, - "_testId": "urn:uuid:845477c8-22b3-485b-b969-604db36558a5", + "_testId": "urn:uuid:efbf8659-bd7e-4dbf-ad9d-336f76bd1669", "_events": {}, "_eventsCount": 1, "cell": { @@ -1956,12 +1956,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 10790, + "_idleStart": 15002, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 189, + "duration": 197, "state": "passed", "speed": "slow" }, @@ -1977,7 +1977,7 @@ "_currentRetry": 0, "pending": true, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", "ctx": null, "state": "pending" }, @@ -1994,9 +1994,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", "ctx": null, - "_testId": "urn:uuid:cc011cca-3673-4747-85e3-d7581bd5cf49", + "_testId": "urn:uuid:72d523a2-7862-46dd-89d7-45e7e3400cb9", "_events": {}, "_eventsCount": 1, "cell": { @@ -2007,12 +2007,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 10979, + "_idleStart": 15198, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 80, + "duration": 78, "state": "passed", "speed": "slow" } @@ -2030,9 +2030,9 @@ "_onlyTests": [], "_onlySuites": [], "delayed": false, - "parent": "uGyJV-_eEt_hXf3_UYi8t", + "parent": "RufV3R04HvjutDLotPzra", "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "_testId": "urn:uuid:bf0682df-b914-4185-bbfc-dc86f5b07706" + "_testId": "urn:uuid:6016f1e4-e511-4d75-b681-d918d815a381" }, { "title": "Digital Credentials Consortium", @@ -2052,9 +2052,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "9VXOGVr_lsKA13N3NMHmU", "ctx": null, - "_testId": "urn:uuid:ca1a68ea-1ce7-431e-b83e-cf2e134187e6", + "_testId": "urn:uuid:c7579176-d281-4890-8978-be317985ff93", "_events": {}, "_eventsCount": 1, "cell": { @@ -2065,12 +2065,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11060, + "_idleStart": 15277, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 212, + "duration": 229, "state": "passed", "speed": "slow" }, @@ -2087,9 +2087,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "9VXOGVr_lsKA13N3NMHmU", "ctx": null, - "_testId": "urn:uuid:eaa644cf-8bd3-4932-8054-0db06011f6a5", + "_testId": "urn:uuid:1220e092-acc8-45a3-aac5-33a7bb89264f", "_events": {}, "_eventsCount": 1, "cell": { @@ -2100,12 +2100,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11273, + "_idleStart": 15506, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 6, + "duration": 9, "state": "passed", "speed": "fast" }, @@ -2122,9 +2122,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "9VXOGVr_lsKA13N3NMHmU", "ctx": null, - "_testId": "urn:uuid:ef4b8f69-fcc4-4ded-8bee-9f1b54309643", + "_testId": "urn:uuid:049d3957-7ad0-41cd-8621-69a6dbb383d2", "_events": {}, "_eventsCount": 1, "cell": { @@ -2135,12 +2135,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11279, + "_idleStart": 15516, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 5, + "duration": 9, "state": "passed", "speed": "fast" }, @@ -2157,9 +2157,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "9VXOGVr_lsKA13N3NMHmU", "ctx": null, - "_testId": "urn:uuid:41bfd46a-10ed-489e-ae09-f93c721b8f76", + "_testId": "urn:uuid:9737021a-159d-490a-92ac-8c89e6b43c33", "_events": {}, "_eventsCount": 1, "cell": { @@ -2170,12 +2170,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11284, + "_idleStart": 15524, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 4, + "duration": 9, "state": "passed", "speed": "fast" }, @@ -2192,9 +2192,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "9VXOGVr_lsKA13N3NMHmU", "ctx": null, - "_testId": "urn:uuid:b04c8eeb-16b6-496a-ad02-3c7d9cfb761c", + "_testId": "urn:uuid:f0027ee4-24cc-4ac8-aa60-31fd8c5b0269", "_events": {}, "_eventsCount": 1, "cell": { @@ -2205,12 +2205,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11289, + "_idleStart": 15533, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 232, + "duration": 260, "state": "passed", "speed": "slow" }, @@ -2227,9 +2227,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "9VXOGVr_lsKA13N3NMHmU", "ctx": null, - "_testId": "urn:uuid:4c4b370d-4641-4935-ad72-ab8579d0cd69", + "_testId": "urn:uuid:2599890e-f327-4bba-b82b-5496b8a4fe39", "_events": {}, "_eventsCount": 1, "cell": { @@ -2240,12 +2240,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11522, + "_idleStart": 15793, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 5, + "duration": 9, "state": "passed", "speed": "fast" }, @@ -2262,9 +2262,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "9VXOGVr_lsKA13N3NMHmU", "ctx": null, - "_testId": "urn:uuid:bd98aaf3-1297-4d31-bc13-9a987c65e797", + "_testId": "urn:uuid:c4a07fa5-665e-4745-a838-93f07cce1dcc", "_events": {}, "_eventsCount": 1, "cell": { @@ -2275,12 +2275,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11527, + "_idleStart": 15802, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 4, + "duration": 9, "state": "passed", "speed": "fast" }, @@ -2297,9 +2297,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "9VXOGVr_lsKA13N3NMHmU", "ctx": null, - "_testId": "urn:uuid:247d689f-2623-4a59-a1b1-005299170255", + "_testId": "urn:uuid:c6628732-b9f9-4dbb-9142-cfafd934eb98", "_events": {}, "_eventsCount": 1, "cell": { @@ -2310,12 +2310,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11532, + "_idleStart": 15811, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 18, + "duration": 33, "state": "passed", "speed": "fast" }, @@ -2332,9 +2332,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "9VXOGVr_lsKA13N3NMHmU", "ctx": null, - "_testId": "urn:uuid:d9bb46b8-2efa-43cd-9ac8-f3c88982d53d", + "_testId": "urn:uuid:f3e58d8a-74a2-461b-8571-7fc23a6719b5", "_events": {}, "_eventsCount": 1, "cell": { @@ -2345,12 +2345,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11551, + "_idleStart": 15845, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 5, + "duration": 9, "state": "passed", "speed": "fast" }, @@ -2367,9 +2367,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "9VXOGVr_lsKA13N3NMHmU", "ctx": null, - "_testId": "urn:uuid:163443fe-5103-417e-8abf-4bf10fcf447f", + "_testId": "urn:uuid:a3045f51-3335-493b-a900-fe80cfbab7a3", "_events": {}, "_eventsCount": 1, "cell": { @@ -2380,12 +2380,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11556, + "_idleStart": 15853, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 18, + "duration": 34, "state": "passed", "speed": "fast" }, @@ -2402,9 +2402,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "9VXOGVr_lsKA13N3NMHmU", "ctx": null, - "_testId": "urn:uuid:c808c1ab-6d47-4de5-bf82-27ac478c64cc", + "_testId": "urn:uuid:9980a0af-644b-469d-83a9-9f1a0f695f58", "_events": {}, "_eventsCount": 1, "cell": { @@ -2415,12 +2415,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11575, + "_idleStart": 15888, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 5, + "duration": 10, "state": "passed", "speed": "fast" }, @@ -2437,9 +2437,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "9VXOGVr_lsKA13N3NMHmU", "ctx": null, - "_testId": "urn:uuid:9bc8b1b5-3b76-4f62-9dae-7777ae3874b6", + "_testId": "urn:uuid:b6834512-54a8-4d59-94d6-166f42dccf54", "_events": {}, "_eventsCount": 1, "cell": { @@ -2450,14 +2450,14 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11581, + "_idleStart": 15898, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 24, + "duration": 44, "state": "passed", - "speed": "fast" + "speed": "medium" }, { "type": "test", @@ -2471,7 +2471,7 @@ "_currentRetry": 0, "pending": true, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "9VXOGVr_lsKA13N3NMHmU", "ctx": null, "state": "pending" }, @@ -2488,9 +2488,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "9VXOGVr_lsKA13N3NMHmU", "ctx": null, - "_testId": "urn:uuid:9549b01a-e0c9-4024-b317-a49a535812ce", + "_testId": "urn:uuid:ae5a5618-55f0-4839-9e56-b50313e1ec64", "_events": {}, "_eventsCount": 1, "cell": { @@ -2501,12 +2501,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11605, + "_idleStart": 15941, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 14, + "duration": 17, "state": "passed", "speed": "fast" } @@ -2524,9 +2524,9 @@ "_onlyTests": [], "_onlySuites": [], "delayed": false, - "parent": "uGyJV-_eEt_hXf3_UYi8t", + "parent": "RufV3R04HvjutDLotPzra", "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "_testId": "urn:uuid:479b61e2-382e-42e4-ad2a-89fd4e06536f" + "_testId": "urn:uuid:0336181d-089f-434a-889c-69e538366325" }, { "title": "EWF", @@ -2546,9 +2546,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", "ctx": null, - "_testId": "urn:uuid:525e0707-874d-4d9d-b780-da768c934312", + "_testId": "urn:uuid:0f74ddd6-e778-42e4-9495-ee04661bba37", "_events": {}, "_eventsCount": 1, "cell": { @@ -2559,12 +2559,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11619, + "_idleStart": 15958, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 500, + "duration": 559, "state": "passed", "speed": "slow" }, @@ -2581,9 +2581,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", "ctx": null, - "_testId": "urn:uuid:3c2dc6a3-e851-44b2-bc9b-768f485711b1", + "_testId": "urn:uuid:1f3fe9b2-d49b-4000-80ed-e5d8acdb60c7", "_events": {}, "_eventsCount": 1, "cell": { @@ -2594,12 +2594,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 12119, + "_idleStart": 16518, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 89, + "duration": 101, "state": "passed", "speed": "slow" }, @@ -2616,9 +2616,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", "ctx": null, - "_testId": "urn:uuid:b0e17b1b-9632-4858-89f9-e78c5a7f1807", + "_testId": "urn:uuid:70f3df6a-802d-40cb-8ed3-ffe058d84445", "_events": {}, "_eventsCount": 1, "cell": { @@ -2629,12 +2629,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 12209, + "_idleStart": 16619, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 88, + "duration": 104, "state": "passed", "speed": "slow" }, @@ -2651,9 +2651,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", "ctx": null, - "_testId": "urn:uuid:9e909f9a-b811-426f-a9b3-b54b23a8dc12", + "_testId": "urn:uuid:6f5dcde0-acf6-4756-b0bd-1715e1c8e08d", "_events": {}, "_eventsCount": 1, "cell": { @@ -2664,12 +2664,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 12297, + "_idleStart": 16722, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 89, + "duration": 82, "state": "passed", "speed": "slow" }, @@ -2686,9 +2686,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", "ctx": null, - "_testId": "urn:uuid:d9a33516-12f6-4aa9-b56c-a84e6dfd80aa", + "_testId": "urn:uuid:c41893f4-1c9e-4fc2-8f6e-1abfcb2a4e44", "_events": {}, "_eventsCount": 1, "cell": { @@ -2699,12 +2699,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 12386, + "_idleStart": 16804, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 562, + "duration": 608, "state": "passed", "speed": "slow" }, @@ -2721,9 +2721,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", "ctx": null, - "_testId": "urn:uuid:887e5864-be19-4c1b-b5bf-a0385aa3b433", + "_testId": "urn:uuid:381a5e96-f730-4593-951c-4c100164ea27", "_events": {}, "_eventsCount": 1, "cell": { @@ -2734,12 +2734,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 12948, + "_idleStart": 17413, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 87, + "duration": 83, "state": "passed", "speed": "slow" }, @@ -2756,9 +2756,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", "ctx": null, - "_testId": "urn:uuid:427e56f0-a75f-489e-8a4b-0f5540e4567b", + "_testId": "urn:uuid:951fcd0e-7c03-4ea7-ab99-3379d1fd3eb3", "_events": {}, "_eventsCount": 1, "cell": { @@ -2769,12 +2769,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 13036, + "_idleStart": 17496, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 89, + "duration": 103, "state": "passed", "speed": "slow" }, @@ -2791,9 +2791,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", "ctx": null, - "_testId": "urn:uuid:465c314f-9cbd-4c2f-8855-0abbd4f73229", + "_testId": "urn:uuid:3c32b7b4-b1db-4fd2-aeb5-75c70f32f7b6", "_events": {}, "_eventsCount": 1, "cell": { @@ -2804,12 +2804,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 13125, + "_idleStart": 17599, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 368, + "duration": 357, "state": "passed", "speed": "slow" }, @@ -2826,9 +2826,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", "ctx": null, - "_testId": "urn:uuid:00232f77-c0b2-40c8-8add-0811fe86a782", + "_testId": "urn:uuid:d90a0df4-df79-464a-8aba-9e6f12b084cc", "_events": {}, "_eventsCount": 1, "cell": { @@ -2839,12 +2839,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 13493, + "_idleStart": 17957, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 88, + "duration": 82, "state": "passed", "speed": "slow" }, @@ -2861,9 +2861,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", "ctx": null, - "_testId": "urn:uuid:6a05ff18-37f9-49a4-9ede-f500624b7985", + "_testId": "urn:uuid:5e33a94a-4efb-4775-b88a-5a0e2b82a193", "_events": {}, "_eventsCount": 1, "cell": { @@ -2874,12 +2874,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 13580, + "_idleStart": 18040, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 361, + "duration": 340, "state": "passed", "speed": "slow" }, @@ -2896,9 +2896,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", "ctx": null, - "_testId": "urn:uuid:ca7790a5-70fe-4e79-862e-08def409a5e4", + "_testId": "urn:uuid:544e553a-c891-4035-92c9-3c17dac1782f", "_events": {}, "_eventsCount": 1, "cell": { @@ -2909,12 +2909,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 13942, + "_idleStart": 18379, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 89, + "duration": 83, "state": "passed", "speed": "slow" }, @@ -2931,9 +2931,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", "ctx": null, - "_testId": "urn:uuid:b99e73d0-457f-4f9e-9182-ba67dc831777", + "_testId": "urn:uuid:82473c51-06b6-46cc-a6dc-762031b54a95", "_events": {}, "_eventsCount": 1, "cell": { @@ -2944,12 +2944,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 14032, + "_idleStart": 18462, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 451, + "duration": 423, "state": "passed", "speed": "slow" }, @@ -2965,7 +2965,7 @@ "_currentRetry": 0, "pending": true, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", "ctx": null, "state": "pending" }, @@ -2982,9 +2982,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", "ctx": null, - "_testId": "urn:uuid:efec4451-63c5-4dab-b873-6108a5cbc015", + "_testId": "urn:uuid:70a5133d-35b7-45f8-8d1f-2044d4e95e60", "_events": {}, "_eventsCount": 1, "cell": { @@ -2995,12 +2995,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 14483, + "_idleStart": 18886, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 97, + "duration": 122, "state": "passed", "speed": "slow" } @@ -3018,9 +3018,9 @@ "_onlyTests": [], "_onlySuites": [], "delayed": false, - "parent": "uGyJV-_eEt_hXf3_UYi8t", + "parent": "RufV3R04HvjutDLotPzra", "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "_testId": "urn:uuid:b533d894-275c-4275-82f6-7c2d191501c2" + "_testId": "urn:uuid:1e91a90a-b935-46a4-ab7f-10f51dfe8294" }, { "title": "GS1 US", @@ -3040,9 +3040,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "D6-GkpPGTPL0wawtrZGDq", "ctx": null, - "_testId": "urn:uuid:41018c4c-7218-4c8f-98bd-ad877519e73e", + "_testId": "urn:uuid:04cdeb96-4987-4662-b27b-5946a8bfa807", "_events": {}, "_eventsCount": 1, "cell": { @@ -3053,12 +3053,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 14581, + "_idleStart": 19009, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 417, + "duration": 133, "state": "failed", "err": { "response": {}, @@ -3138,13 +3138,13 @@ "status": 401, "data": { "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: c3adced2-471d-4138-9692-4ba231341200 Correlation ID: 1a320789-718b-47b1-b3a9-67e679abfaa2 Timestamp: 2024-12-06 15:12:28Z", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: a91b6331-6a1c-4fcc-8bb4-ff0be98d1600 Correlation ID: cf7cf8e1-ec9c-48a0-867e-1194c9f297e5 Timestamp: 2024-12-06 18:26:09Z", "error_codes": [ 7000222 ], - "timestamp": "2024-12-06 15:12:28Z", - "trace_id": "c3adced2-471d-4138-9692-4ba231341200", - "correlation_id": "1a320789-718b-47b1-b3a9-67e679abfaa2", + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "a91b6331-6a1c-4fcc-8bb4-ff0be98d1600", + "correlation_id": "cf7cf8e1-ec9c-48a0-867e-1194c9f297e5", "error_uri": "https://login.microsoftonline.com/error?code=7000222" } } @@ -3162,9 +3162,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "D6-GkpPGTPL0wawtrZGDq", "ctx": null, - "_testId": "urn:uuid:c50fd085-3e12-4a02-bab7-1a952ccb34d8", + "_testId": "urn:uuid:d74e5d30-43a2-4814-869a-e3fb64aa7f58", "_events": {}, "_eventsCount": 1, "cell": { @@ -3175,12 +3175,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 14999, + "_idleStart": 19143, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 154, + "duration": 76, "state": "failed", "err": { "response": {}, @@ -3260,13 +3260,13 @@ "status": 401, "data": { "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: f6e00c11-d4ea-43b6-9106-bc592e171300 Correlation ID: cb564179-268e-460c-a817-82105a8cffc6 Timestamp: 2024-12-06 15:12:28Z", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: f16f4a45-da33-439b-ab89-7e9f56f61700 Correlation ID: c278b461-29fa-469b-a79c-9c189dd2b586 Timestamp: 2024-12-06 18:26:09Z", "error_codes": [ 7000222 ], - "timestamp": "2024-12-06 15:12:28Z", - "trace_id": "f6e00c11-d4ea-43b6-9106-bc592e171300", - "correlation_id": "cb564179-268e-460c-a817-82105a8cffc6", + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "f16f4a45-da33-439b-ab89-7e9f56f61700", + "correlation_id": "c278b461-29fa-469b-a79c-9c189dd2b586", "error_uri": "https://login.microsoftonline.com/error?code=7000222" } } @@ -3284,9 +3284,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "D6-GkpPGTPL0wawtrZGDq", "ctx": null, - "_testId": "urn:uuid:3e8a79e9-ab29-459a-9131-130919a9675e", + "_testId": "urn:uuid:f55f19c4-3fa0-4722-91d2-f687c6f13999", "_events": {}, "_eventsCount": 1, "cell": { @@ -3297,12 +3297,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 15154, + "_idleStart": 19219, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 146, + "duration": 101, "state": "failed", "err": { "response": {}, @@ -3382,13 +3382,13 @@ "status": 401, "data": { "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: c74e07a5-6e62-4776-ad28-a99870060f00 Correlation ID: 562b0983-45b8-4ca9-b205-2773c501611e Timestamp: 2024-12-06 15:12:28Z", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: ed7be4d1-c7d1-49d8-970f-1fbd923c2f00 Correlation ID: 809562eb-91d1-40a8-94ae-b4faedbe9bcf Timestamp: 2024-12-06 18:26:09Z", "error_codes": [ 7000222 ], - "timestamp": "2024-12-06 15:12:28Z", - "trace_id": "c74e07a5-6e62-4776-ad28-a99870060f00", - "correlation_id": "562b0983-45b8-4ca9-b205-2773c501611e", + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "ed7be4d1-c7d1-49d8-970f-1fbd923c2f00", + "correlation_id": "809562eb-91d1-40a8-94ae-b4faedbe9bcf", "error_uri": "https://login.microsoftonline.com/error?code=7000222" } } @@ -3406,9 +3406,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "D6-GkpPGTPL0wawtrZGDq", "ctx": null, - "_testId": "urn:uuid:0b604cd7-d028-4bc3-844a-16abbd297060", + "_testId": "urn:uuid:ffc18787-9d98-49de-a505-16f718c1fb34", "_events": {}, "_eventsCount": 1, "cell": { @@ -3419,12 +3419,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 15301, + "_idleStart": 19321, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 137, + "duration": 73, "state": "failed", "err": { "response": {}, @@ -3504,13 +3504,13 @@ "status": 401, "data": { "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: 87836a8c-f4b5-4538-96e8-f3a032021700 Correlation ID: ccfe0b0b-49cd-498f-bdbf-b4f2508e75c7 Timestamp: 2024-12-06 15:12:28Z", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: c0ffc7bc-6286-4530-bbbd-c87fd0a41200 Correlation ID: 643e3da2-ef64-47ff-a3d6-c83b5a18de22 Timestamp: 2024-12-06 18:26:09Z", "error_codes": [ 7000222 ], - "timestamp": "2024-12-06 15:12:28Z", - "trace_id": "87836a8c-f4b5-4538-96e8-f3a032021700", - "correlation_id": "ccfe0b0b-49cd-498f-bdbf-b4f2508e75c7", + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "c0ffc7bc-6286-4530-bbbd-c87fd0a41200", + "correlation_id": "643e3da2-ef64-47ff-a3d6-c83b5a18de22", "error_uri": "https://login.microsoftonline.com/error?code=7000222" } } @@ -3528,9 +3528,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "D6-GkpPGTPL0wawtrZGDq", "ctx": null, - "_testId": "urn:uuid:1a6b0eca-7763-4ba1-8996-5d8c6c489880", + "_testId": "urn:uuid:6a66e9f8-aea2-4521-8b77-3b4c7fe40002", "_events": {}, "_eventsCount": 1, "cell": { @@ -3541,12 +3541,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 15439, + "_idleStart": 19396, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 143, + "duration": 63, "state": "failed", "err": { "response": {}, @@ -3626,13 +3626,13 @@ "status": 401, "data": { "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: b89d6856-0ab4-4b72-af24-4d5c8f621000 Correlation ID: 47831e15-ae24-4d9b-9e1d-473870d705ee Timestamp: 2024-12-06 15:12:28Z", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: a91b6331-6a1c-4fcc-8bb4-ff0bf78d1600 Correlation ID: 8b0833e8-80ba-48b7-8311-c5fb45088a9d Timestamp: 2024-12-06 18:26:09Z", "error_codes": [ 7000222 ], - "timestamp": "2024-12-06 15:12:28Z", - "trace_id": "b89d6856-0ab4-4b72-af24-4d5c8f621000", - "correlation_id": "47831e15-ae24-4d9b-9e1d-473870d705ee", + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "a91b6331-6a1c-4fcc-8bb4-ff0bf78d1600", + "correlation_id": "8b0833e8-80ba-48b7-8311-c5fb45088a9d", "error_uri": "https://login.microsoftonline.com/error?code=7000222" } } @@ -3650,9 +3650,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "D6-GkpPGTPL0wawtrZGDq", "ctx": null, - "_testId": "urn:uuid:2516f67c-9115-4670-9bcf-12af97eae159", + "_testId": "urn:uuid:74fff9d9-2b24-4a67-bd3e-273418bde30b", "_events": {}, "_eventsCount": 1, "cell": { @@ -3663,12 +3663,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 15583, + "_idleStart": 19459, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 162, + "duration": 61, "state": "failed", "err": { "response": {}, @@ -3748,13 +3748,13 @@ "status": 401, "data": { "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: edad268e-37e4-4ef1-b8a0-4169eb6d1200 Correlation ID: 0394c989-4c40-4252-99f5-e98f043d6038 Timestamp: 2024-12-06 15:12:28Z", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: a91b6331-6a1c-4fcc-8bb4-ff0bfa8d1600 Correlation ID: 44992c78-0bfd-4157-9e2a-8ecd28164cf0 Timestamp: 2024-12-06 18:26:09Z", "error_codes": [ 7000222 ], - "timestamp": "2024-12-06 15:12:28Z", - "trace_id": "edad268e-37e4-4ef1-b8a0-4169eb6d1200", - "correlation_id": "0394c989-4c40-4252-99f5-e98f043d6038", + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "a91b6331-6a1c-4fcc-8bb4-ff0bfa8d1600", + "correlation_id": "44992c78-0bfd-4157-9e2a-8ecd28164cf0", "error_uri": "https://login.microsoftonline.com/error?code=7000222" } } @@ -3772,9 +3772,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "D6-GkpPGTPL0wawtrZGDq", "ctx": null, - "_testId": "urn:uuid:631ffcd2-6c3c-42e8-8d65-a5ec7c56be92", + "_testId": "urn:uuid:047eea02-d4ca-4f53-9668-1d8ec28aac0a", "_events": {}, "_eventsCount": 1, "cell": { @@ -3785,12 +3785,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 15748, + "_idleStart": 19520, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 145, + "duration": 95, "state": "failed", "err": { "response": {}, @@ -3870,13 +3870,13 @@ "status": 401, "data": { "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: c3adced2-471d-4138-9692-4ba25a341200 Correlation ID: 76634050-e392-4e9d-b4a3-33a6295acb04 Timestamp: 2024-12-06 15:12:29Z", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: ed7be4d1-c7d1-49d8-970f-1fbd9b3c2f00 Correlation ID: 1f4408bc-4fe6-400f-89d9-bfe408d8b5e4 Timestamp: 2024-12-06 18:26:09Z", "error_codes": [ 7000222 ], - "timestamp": "2024-12-06 15:12:29Z", - "trace_id": "c3adced2-471d-4138-9692-4ba25a341200", - "correlation_id": "76634050-e392-4e9d-b4a3-33a6295acb04", + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "ed7be4d1-c7d1-49d8-970f-1fbd9b3c2f00", + "correlation_id": "1f4408bc-4fe6-400f-89d9-bfe408d8b5e4", "error_uri": "https://login.microsoftonline.com/error?code=7000222" } } @@ -3894,9 +3894,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "D6-GkpPGTPL0wawtrZGDq", "ctx": null, - "_testId": "urn:uuid:8bdc1aa0-9940-42da-9d7e-68fa3bf6a961", + "_testId": "urn:uuid:6c13ae33-9ecc-4ec6-bc1f-aea94feafb60", "_events": {}, "_eventsCount": 1, "cell": { @@ -3907,12 +3907,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 15894, + "_idleStart": 19618, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 156, + "duration": 54, "state": "failed", "err": { "response": {}, @@ -3992,13 +3992,13 @@ "status": 401, "data": { "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: 0dd3fdbb-fe3a-49a3-bc76-55fae24c0f00 Correlation ID: 7d88aeff-9472-4388-849b-dc2a5bc65f30 Timestamp: 2024-12-06 15:12:29Z", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: c0ffc7bc-6286-4530-bbbd-c87fd3a41200 Correlation ID: 47812823-2a06-492b-8c9e-a5d6a50f36d4 Timestamp: 2024-12-06 18:26:09Z", "error_codes": [ 7000222 ], - "timestamp": "2024-12-06 15:12:29Z", - "trace_id": "0dd3fdbb-fe3a-49a3-bc76-55fae24c0f00", - "correlation_id": "7d88aeff-9472-4388-849b-dc2a5bc65f30", + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "c0ffc7bc-6286-4530-bbbd-c87fd3a41200", + "correlation_id": "47812823-2a06-492b-8c9e-a5d6a50f36d4", "error_uri": "https://login.microsoftonline.com/error?code=7000222" } } @@ -4016,9 +4016,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "D6-GkpPGTPL0wawtrZGDq", "ctx": null, - "_testId": "urn:uuid:307290ee-3ec5-408d-aa58-d66154665f9f", + "_testId": "urn:uuid:474ba0c3-82a9-4806-9dbc-875b7d390cf7", "_events": {}, "_eventsCount": 1, "cell": { @@ -4029,12 +4029,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 16051, + "_idleStart": 19673, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 146, + "duration": 53, "state": "failed", "err": { "response": {}, @@ -4114,13 +4114,13 @@ "status": 401, "data": { "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: c3adced2-471d-4138-9692-4ba263341200 Correlation ID: 8db11c32-826d-4e46-8964-3bf6153ce2c3 Timestamp: 2024-12-06 15:12:29Z", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: fbf5e655-b8c5-48b4-bb94-cf039a601200 Correlation ID: cb2ee6cc-94ff-4afa-8d5c-9cde3b72cbcc Timestamp: 2024-12-06 18:26:09Z", "error_codes": [ 7000222 ], - "timestamp": "2024-12-06 15:12:29Z", - "trace_id": "c3adced2-471d-4138-9692-4ba263341200", - "correlation_id": "8db11c32-826d-4e46-8964-3bf6153ce2c3", + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "fbf5e655-b8c5-48b4-bb94-cf039a601200", + "correlation_id": "cb2ee6cc-94ff-4afa-8d5c-9cde3b72cbcc", "error_uri": "https://login.microsoftonline.com/error?code=7000222" } } @@ -4138,9 +4138,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "D6-GkpPGTPL0wawtrZGDq", "ctx": null, - "_testId": "urn:uuid:e204f878-9013-4efd-afe4-1cc9ca109e42", + "_testId": "urn:uuid:dd9c4f3b-f8bd-4571-9e60-b463e202a6b9", "_events": {}, "_eventsCount": 1, "cell": { @@ -4151,12 +4151,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 16198, + "_idleStart": 19727, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 113, + "duration": 56, "state": "failed", "err": { "response": {}, @@ -4236,13 +4236,13 @@ "status": 401, "data": { "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: 79131799-dc78-4cff-b494-8aafe5dc1400 Correlation ID: b7277ed8-5b7e-4aa2-8fa8-005de5596230 Timestamp: 2024-12-06 15:12:29Z", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: b0f77e46-52e3-4386-afb6-2cc449781400 Correlation ID: 7bdce45b-9214-4c38-9180-3e46ed067f12 Timestamp: 2024-12-06 18:26:09Z", "error_codes": [ 7000222 ], - "timestamp": "2024-12-06 15:12:29Z", - "trace_id": "79131799-dc78-4cff-b494-8aafe5dc1400", - "correlation_id": "b7277ed8-5b7e-4aa2-8fa8-005de5596230", + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "b0f77e46-52e3-4386-afb6-2cc449781400", + "correlation_id": "7bdce45b-9214-4c38-9180-3e46ed067f12", "error_uri": "https://login.microsoftonline.com/error?code=7000222" } } @@ -4260,9 +4260,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "D6-GkpPGTPL0wawtrZGDq", "ctx": null, - "_testId": "urn:uuid:901d13bc-b657-4974-ad4c-2a57667698e8", + "_testId": "urn:uuid:82a4a9a2-463b-4b4d-a004-f3d8c8118e4e", "_events": {}, "_eventsCount": 1, "cell": { @@ -4273,7 +4273,7 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 16312, + "_idleStart": 19783, "_onTimeout": null, "_repeat": null, "_destroyed": true @@ -4358,13 +4358,13 @@ "status": 401, "data": { "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: a523d6d5-2be8-4d6d-980c-36a98f623000 Correlation ID: 7aac093d-00c2-49d2-b9a7-a4e2683be4d2 Timestamp: 2024-12-06 15:12:29Z", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: ed7be4d1-c7d1-49d8-970f-1fbda43c2f00 Correlation ID: d9914f4c-33b4-4687-bee9-1bca315761e5 Timestamp: 2024-12-06 18:26:09Z", "error_codes": [ 7000222 ], - "timestamp": "2024-12-06 15:12:29Z", - "trace_id": "a523d6d5-2be8-4d6d-980c-36a98f623000", - "correlation_id": "7aac093d-00c2-49d2-b9a7-a4e2683be4d2", + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "ed7be4d1-c7d1-49d8-970f-1fbda43c2f00", + "correlation_id": "d9914f4c-33b4-4687-bee9-1bca315761e5", "error_uri": "https://login.microsoftonline.com/error?code=7000222" } } @@ -4382,9 +4382,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "D6-GkpPGTPL0wawtrZGDq", "ctx": null, - "_testId": "urn:uuid:468d1b74-0a72-4e2e-a110-94835a4d1b49", + "_testId": "urn:uuid:6b0306b6-4782-4c20-8047-35faa5118c55", "_events": {}, "_eventsCount": 1, "cell": { @@ -4395,12 +4395,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 16407, + "_idleStart": 19879, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 153, + "duration": 65, "state": "failed", "err": { "response": {}, @@ -4480,13 +4480,13 @@ "status": 401, "data": { "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: d25c09cf-c209-46cf-815d-f52d928d1100 Correlation ID: 6907c55e-192f-4acf-85e7-609b693aa566 Timestamp: 2024-12-06 15:12:29Z", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: a91b6331-6a1c-4fcc-8bb4-ff0b0e8e1600 Correlation ID: e8144222-06da-4861-bc04-446729663f39 Timestamp: 2024-12-06 18:26:09Z", "error_codes": [ 7000222 ], - "timestamp": "2024-12-06 15:12:29Z", - "trace_id": "d25c09cf-c209-46cf-815d-f52d928d1100", - "correlation_id": "6907c55e-192f-4acf-85e7-609b693aa566", + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "a91b6331-6a1c-4fcc-8bb4-ff0b0e8e1600", + "correlation_id": "e8144222-06da-4861-bc04-446729663f39", "error_uri": "https://login.microsoftonline.com/error?code=7000222" } } @@ -4503,7 +4503,7 @@ "_currentRetry": 0, "pending": true, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "D6-GkpPGTPL0wawtrZGDq", "ctx": null, "state": "pending" }, @@ -4520,9 +4520,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "D6-GkpPGTPL0wawtrZGDq", "ctx": null, - "_testId": "urn:uuid:ead8a22e-004f-4b3f-b424-5b14f5086d39", + "_testId": "urn:uuid:fbf0d57d-4185-4b9f-a119-bc06db0beebc", "_events": {}, "_eventsCount": 1, "cell": { @@ -4533,12 +4533,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 16560, + "_idleStart": 19944, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 139, + "duration": 105, "state": "failed", "err": { "response": {}, @@ -4618,13 +4618,13 @@ "status": 401, "data": { "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: b89d6856-0ab4-4b72-af24-4d5cb2621000 Correlation ID: 6507544d-43f7-4f08-a91c-6612b3160230 Timestamp: 2024-12-06 15:12:29Z", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: 33927d68-a03b-47f2-8b6e-b676d8402c00 Correlation ID: 2c0a4748-c3ee-4b0b-b747-4379f5663dde Timestamp: 2024-12-06 18:26:09Z", "error_codes": [ 7000222 ], - "timestamp": "2024-12-06 15:12:29Z", - "trace_id": "b89d6856-0ab4-4b72-af24-4d5cb2621000", - "correlation_id": "6507544d-43f7-4f08-a91c-6612b3160230", + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "33927d68-a03b-47f2-8b6e-b676d8402c00", + "correlation_id": "2c0a4748-c3ee-4b0b-b747-4379f5663dde", "error_uri": "https://login.microsoftonline.com/error?code=7000222" } } @@ -4643,9 +4643,9 @@ "_onlyTests": [], "_onlySuites": [], "delayed": false, - "parent": "uGyJV-_eEt_hXf3_UYi8t", + "parent": "RufV3R04HvjutDLotPzra", "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "_testId": "urn:uuid:4190aaf3-18f6-44d3-830b-e467f731209f" + "_testId": "urn:uuid:31396cce-a59a-4371-8496-f5e4272bbd96" }, { "title": "Gen Digital", @@ -4665,9 +4665,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "L0KR3rmuFcVxuUSUzaji1", "ctx": null, - "_testId": "urn:uuid:6c926b49-9d05-4978-9746-269192b1ad13", + "_testId": "urn:uuid:19524973-1781-4631-815c-8270f6fec498", "_events": {}, "_eventsCount": 1, "cell": { @@ -4678,12 +4678,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 16701, + "_idleStart": 20050, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 412, + "duration": 512, "state": "passed", "speed": "slow" }, @@ -4700,9 +4700,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "L0KR3rmuFcVxuUSUzaji1", "ctx": null, - "_testId": "urn:uuid:5c927acf-05ec-4cda-bc20-fc8a47b06563", + "_testId": "urn:uuid:5de78e20-3876-48d6-886e-d9e4afa40a9d", "_events": {}, "_eventsCount": 1, "cell": { @@ -4713,14 +4713,14 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17113, + "_idleStart": 20562, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 40, + "duration": 34, "state": "passed", - "speed": "medium" + "speed": "fast" }, { "type": "test", @@ -4735,9 +4735,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "L0KR3rmuFcVxuUSUzaji1", "ctx": null, - "_testId": "urn:uuid:2eec64cf-00fb-4d7c-bbee-99bab946fa45", + "_testId": "urn:uuid:7153c053-b472-48d0-9970-d13a28218e34", "_events": {}, "_eventsCount": 1, "cell": { @@ -4748,12 +4748,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17152, + "_idleStart": 20596, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 29, + "duration": 33, "state": "passed", "speed": "fast" }, @@ -4770,9 +4770,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "L0KR3rmuFcVxuUSUzaji1", "ctx": null, - "_testId": "urn:uuid:f85ae109-9c14-4ed4-95dc-4bdd378d8e13", + "_testId": "urn:uuid:97272496-2cf1-4e37-834f-c5e7d459118a", "_events": {}, "_eventsCount": 1, "cell": { @@ -4783,14 +4783,14 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17182, + "_idleStart": 20630, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 30, + "duration": 40, "state": "passed", - "speed": "fast" + "speed": "medium" }, { "type": "test", @@ -4805,9 +4805,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "L0KR3rmuFcVxuUSUzaji1", "ctx": null, - "_testId": "urn:uuid:b957e64f-e453-42d1-8c3b-34022c1f3205", + "_testId": "urn:uuid:0c9cea64-0cb3-4b76-a29d-bdf1f29294fc", "_events": {}, "_eventsCount": 1, "cell": { @@ -4818,12 +4818,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17213, + "_idleStart": 20670, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 226, + "duration": 300, "state": "passed", "speed": "slow" }, @@ -4840,9 +4840,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "L0KR3rmuFcVxuUSUzaji1", "ctx": null, - "_testId": "urn:uuid:3d61ce71-11fe-4a12-bd3f-86e53f29f654", + "_testId": "urn:uuid:0158d8a6-c1ca-42f2-86b4-faaaf0714ede", "_events": {}, "_eventsCount": 1, "cell": { @@ -4853,12 +4853,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17438, + "_idleStart": 20971, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 29, + "duration": 37, "state": "passed", "speed": "fast" }, @@ -4875,9 +4875,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "L0KR3rmuFcVxuUSUzaji1", "ctx": null, - "_testId": "urn:uuid:eb9e247d-7fee-44c0-97b6-d58d1071775f", + "_testId": "urn:uuid:31b1f0dd-1985-4982-a441-7690d93133e0", "_events": {}, "_eventsCount": 1, "cell": { @@ -4888,12 +4888,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17468, + "_idleStart": 21009, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 30, + "duration": 34, "state": "passed", "speed": "fast" }, @@ -4910,9 +4910,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "L0KR3rmuFcVxuUSUzaji1", "ctx": null, - "_testId": "urn:uuid:3a575a19-a177-4c0f-a437-f5c78373a384", + "_testId": "urn:uuid:833bde00-3e4c-4881-ad65-5d6b912602a8", "_events": {}, "_eventsCount": 1, "cell": { @@ -4923,12 +4923,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17498, + "_idleStart": 21042, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 117, + "duration": 142, "state": "passed", "speed": "slow" }, @@ -4945,9 +4945,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "L0KR3rmuFcVxuUSUzaji1", "ctx": null, - "_testId": "urn:uuid:9407bdb8-2e8a-4494-9023-b04d3f24c73c", + "_testId": "urn:uuid:30943ea9-638b-45ae-a207-2ce61890c94b", "_events": {}, "_eventsCount": 1, "cell": { @@ -4958,12 +4958,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17615, + "_idleStart": 21184, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 30, + "duration": 32, "state": "passed", "speed": "fast" }, @@ -4980,9 +4980,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "L0KR3rmuFcVxuUSUzaji1", "ctx": null, - "_testId": "urn:uuid:7f54aebd-2db0-4d67-975e-93d9753826b0", + "_testId": "urn:uuid:4d04483e-bf76-4d6a-be6f-930d938b2e5c", "_events": {}, "_eventsCount": 1, "cell": { @@ -4993,12 +4993,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17645, + "_idleStart": 21216, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 120, + "duration": 127, "state": "passed", "speed": "slow" }, @@ -5015,9 +5015,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "L0KR3rmuFcVxuUSUzaji1", "ctx": null, - "_testId": "urn:uuid:ed62f04f-2de6-4a0f-9109-8d50fe4a0a6c", + "_testId": "urn:uuid:fa54ba1a-f61b-451a-b5a0-430e51b88985", "_events": {}, "_eventsCount": 1, "cell": { @@ -5028,12 +5028,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17764, + "_idleStart": 21344, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 31, + "duration": 34, "state": "failed", "err": { "name": "AssertionError", @@ -5061,9 +5061,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "L0KR3rmuFcVxuUSUzaji1", "ctx": null, - "_testId": "urn:uuid:fd2af84f-2413-4bb6-98d9-885bc687b30f", + "_testId": "urn:uuid:f770b242-d00f-433f-a2f1-f8680fed2fd0", "_events": {}, "_eventsCount": 1, "cell": { @@ -5074,12 +5074,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17795, + "_idleStart": 21377, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 31, + "duration": 34, "state": "failed", "err": { "name": "AssertionError", @@ -5106,7 +5106,7 @@ "_currentRetry": 0, "pending": true, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "L0KR3rmuFcVxuUSUzaji1", "ctx": null, "state": "pending" }, @@ -5123,9 +5123,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "L0KR3rmuFcVxuUSUzaji1", "ctx": null, - "_testId": "urn:uuid:d918fa0f-0222-4da0-aa8e-3685c5a6fdd8", + "_testId": "urn:uuid:ebfdb49d-8f66-4bbf-bb82-3a3eb7f65b86", "_events": {}, "_eventsCount": 1, "cell": { @@ -5136,12 +5136,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17827, + "_idleStart": 21412, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 117, + "duration": 90, "state": "passed", "speed": "slow" } @@ -5159,9 +5159,9 @@ "_onlyTests": [], "_onlySuites": [], "delayed": false, - "parent": "uGyJV-_eEt_hXf3_UYi8t", + "parent": "RufV3R04HvjutDLotPzra", "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "_testId": "urn:uuid:7402e6f4-6ece-4668-a6d5-ee15f08437d3" + "_testId": "urn:uuid:260b3395-2f15-49a5-a5b4-af00acc4b130" }, { "title": "LearnCard", @@ -5181,9 +5181,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "P9uyHnIzAqYIng5wxWLft", "ctx": null, - "_testId": "urn:uuid:d1fa197d-2ff8-4df4-9f55-e660b84a9bb8", + "_testId": "urn:uuid:02f328c2-96c6-40af-891d-6a336a7765a6", "_events": {}, "_eventsCount": 1, "cell": { @@ -5194,12 +5194,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17944, + "_idleStart": 21502, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 201, + "duration": 230, "state": "passed", "speed": "slow" }, @@ -5216,9 +5216,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "P9uyHnIzAqYIng5wxWLft", "ctx": null, - "_testId": "urn:uuid:8658cf64-809c-41b8-9260-3628e1728a6d", + "_testId": "urn:uuid:577a1f6d-62ba-4c80-a06f-171c30c6670f", "_events": {}, "_eventsCount": 1, "cell": { @@ -5229,14 +5229,14 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 18145, + "_idleStart": 21732, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 34, + "duration": 52, "state": "passed", - "speed": "fast" + "speed": "medium" }, { "type": "test", @@ -5251,9 +5251,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "P9uyHnIzAqYIng5wxWLft", "ctx": null, - "_testId": "urn:uuid:e68125c9-2151-48dd-93d6-afa765edc70b", + "_testId": "urn:uuid:81856acf-cfb8-4f67-8c64-bc0962dd3037", "_events": {}, "_eventsCount": 1, "cell": { @@ -5264,14 +5264,14 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 18179, + "_idleStart": 21785, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 25, + "duration": 42, "state": "passed", - "speed": "fast" + "speed": "medium" }, { "type": "test", @@ -5286,9 +5286,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "P9uyHnIzAqYIng5wxWLft", "ctx": null, - "_testId": "urn:uuid:cd1c93c6-fc08-4450-b5c6-1db3d30295cc", + "_testId": "urn:uuid:5c6a87f4-7e02-458e-ba18-36ed2b4437ba", "_events": {}, "_eventsCount": 1, "cell": { @@ -5299,7 +5299,7 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 18204, + "_idleStart": 21826, "_onTimeout": null, "_repeat": null, "_destroyed": true @@ -5321,9 +5321,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "P9uyHnIzAqYIng5wxWLft", "ctx": null, - "_testId": "urn:uuid:e9f0cda9-c0ef-498e-bb1c-43dd31ee8fb6", + "_testId": "urn:uuid:5365c721-576b-4513-bdac-1377d2d02b38", "_events": {}, "_eventsCount": 1, "cell": { @@ -5334,12 +5334,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 18248, + "_idleStart": 21871, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 217, + "duration": 287, "state": "passed", "speed": "slow" }, @@ -5356,9 +5356,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "P9uyHnIzAqYIng5wxWLft", "ctx": null, - "_testId": "urn:uuid:d94afeb4-702c-4650-9f7b-a40f6b0eadf4", + "_testId": "urn:uuid:2f45fa01-199a-4360-8bfd-aa502b5b12af", "_events": {}, "_eventsCount": 1, "cell": { @@ -5369,14 +5369,14 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 18466, + "_idleStart": 22159, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 23, + "duration": 38, "state": "passed", - "speed": "fast" + "speed": "medium" }, { "type": "test", @@ -5391,9 +5391,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "P9uyHnIzAqYIng5wxWLft", "ctx": null, - "_testId": "urn:uuid:8f99e5b5-53ef-4a0c-8c99-69968088c4b0", + "_testId": "urn:uuid:41bafbe0-ce23-4fc5-a55a-9eb0fe8191a6", "_events": {}, "_eventsCount": 1, "cell": { @@ -5404,12 +5404,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 18489, + "_idleStart": 22197, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 39, + "duration": 42, "state": "passed", "speed": "medium" }, @@ -5426,9 +5426,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "P9uyHnIzAqYIng5wxWLft", "ctx": null, - "_testId": "urn:uuid:e5ce144e-37a6-4f31-a18e-5d60e6f80b58", + "_testId": "urn:uuid:dea9b39c-f8fa-4008-802c-6516e699e30a", "_events": {}, "_eventsCount": 1, "cell": { @@ -5439,12 +5439,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 18532, + "_idleStart": 22239, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 117, + "duration": 159, "state": "passed", "speed": "slow" }, @@ -5461,9 +5461,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "P9uyHnIzAqYIng5wxWLft", "ctx": null, - "_testId": "urn:uuid:721515e6-4f23-445c-a54e-85bb22f95f8a", + "_testId": "urn:uuid:6e14995e-1028-4555-b7fc-3ace023dc228", "_events": {}, "_eventsCount": 1, "cell": { @@ -5474,12 +5474,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 18649, + "_idleStart": 22399, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 27, + "duration": 37, "state": "passed", "speed": "fast" }, @@ -5496,9 +5496,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "P9uyHnIzAqYIng5wxWLft", "ctx": null, - "_testId": "urn:uuid:11342f06-38f3-4693-a6ce-393a1ce02f1c", + "_testId": "urn:uuid:5020f72c-1fff-4145-bc03-4624cee1e665", "_events": {}, "_eventsCount": 1, "cell": { @@ -5509,12 +5509,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 18677, + "_idleStart": 22435, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 117, + "duration": 158, "state": "passed", "speed": "slow" }, @@ -5531,9 +5531,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "P9uyHnIzAqYIng5wxWLft", "ctx": null, - "_testId": "urn:uuid:a3ad9a5b-5df2-4d92-9bf4-88ef4018c4ff", + "_testId": "urn:uuid:ebe264f1-e16c-42c0-a2cf-450659962b24", "_events": {}, "_eventsCount": 1, "cell": { @@ -5544,14 +5544,14 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 18795, + "_idleStart": 22594, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 29, + "duration": 38, "state": "passed", - "speed": "fast" + "speed": "medium" }, { "type": "test", @@ -5566,9 +5566,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "P9uyHnIzAqYIng5wxWLft", "ctx": null, - "_testId": "urn:uuid:b86da1c5-7426-4af3-a472-c011aed109d2", + "_testId": "urn:uuid:88d331d5-14d5-4fb5-a760-7fefd614e457", "_events": {}, "_eventsCount": 1, "cell": { @@ -5579,12 +5579,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 18825, + "_idleStart": 22631, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 165, + "duration": 238, "state": "passed", "speed": "slow" }, @@ -5600,7 +5600,7 @@ "_currentRetry": 0, "pending": true, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "P9uyHnIzAqYIng5wxWLft", "ctx": null, "state": "pending" }, @@ -5617,9 +5617,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "P9uyHnIzAqYIng5wxWLft", "ctx": null, - "_testId": "urn:uuid:bec6fdc2-aee5-46c4-ab94-2b8447399a67", + "_testId": "urn:uuid:60f63368-e02a-4d18-b6cf-49b026ed5445", "_events": {}, "_eventsCount": 1, "cell": { @@ -5630,12 +5630,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 18991, + "_idleStart": 22870, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 77, + "duration": 93, "state": "passed", "speed": "slow" } @@ -5653,9 +5653,9 @@ "_onlyTests": [], "_onlySuites": [], "delayed": false, - "parent": "uGyJV-_eEt_hXf3_UYi8t", + "parent": "RufV3R04HvjutDLotPzra", "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "_testId": "urn:uuid:d95654f0-9381-4b07-98b4-2b30010be5d9" + "_testId": "urn:uuid:0ac7c912-8479-43cf-a2b3-955c096d43ce" }, { "title": "Mavennet", @@ -5675,9 +5675,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "parent": "38LvnuvLSA8PqdST5wKb8", "ctx": null, - "_testId": "urn:uuid:179a855e-8125-423f-96f7-16a1205c02e4", + "_testId": "urn:uuid:5be4b8e2-a491-4990-a6ff-a5c7bb886933", "_events": {}, "_eventsCount": 1, "cell": { @@ -5688,12 +5688,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 19068, + "_idleStart": 22963, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 875, + "duration": 645, "state": "failed", "err": { "name": "AssertionError", @@ -5705,7 +5705,7 @@ "options": { "credentials": "same-origin", "headers": {}, - "body": "{\"credential\":{\"@context\":[\"https://www.w3.org/2018/credentials/v1\"],\"type\":[\"VerifiableCredential\"],\"credentialSubject\":{\"id\":\"did:key:z6MkhTNL7i2etLerDK8Acz5t528giE5KA4p75T6ka1E1D74r\"},\"issuanceDate\":\"2024-12-06T15:12:32Z\",\"id\":\"urn:uuid:26364ea5-d6bd-4037-acb8-ef3da140ca5b\",\"issuer\":\"did:key:z6MkfFjyzk5CKMdnLacqay3kLMMaZEvKr8yxhks2HezmF4X3\"},\"options\":{\"type\":\"Ed25519Signature2018\"}}", + "body": "{\"credential\":{\"@context\":[\"https://www.w3.org/2018/credentials/v1\"],\"type\":[\"VerifiableCredential\"],\"credentialSubject\":{\"id\":\"did:key:z6MkhTNL7i2etLerDK8Acz5t528giE5KA4p75T6ka1E1D74r\"},\"issuanceDate\":\"2024-12-06T18:26:12Z\",\"id\":\"urn:uuid:f1df6f21-ca33-4b33-a458-5d517b66fe3a\",\"issuer\":\"did:key:z6MkfFjyzk5CKMdnLacqay3kLMMaZEvKr8yxhks2HezmF4X3\"},\"options\":{\"type\":\"Ed25519Signature2018\"}}", "method": "POST", "json": { "credential": { @@ -5718,8 +5718,8 @@ "credentialSubject": { "id": "did:key:z6MkhTNL7i2etLerDK8Acz5t528giE5KA4p75T6ka1E1D74r" }, - "issuanceDate": "2024-12-06T15:12:32Z", - "id": "urn:uuid:26364ea5-d6bd-4037-acb8-ef3da140ca5b", + "issuanceDate": "2024-12-06T18:26:12Z", + "id": "urn:uuid:f1df6f21-ca33-4b33-a458-5d517b66fe3a", "issuer": "did:key:z6MkfFjyzk5CKMdnLacqay3kLMMaZEvKr8yxhks2HezmF4X3" }, "options": { @@ -5820,9 +5820,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "parent": "38LvnuvLSA8PqdST5wKb8", "ctx": null, - "_testId": "urn:uuid:78a331ea-bf1b-4c43-934c-52be5df8cb0f", + "_testId": "urn:uuid:491acda2-1ae5-4f81-a23f-8594aca4424b", "_events": {}, "_eventsCount": 1, "cell": { @@ -5833,14 +5833,14 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 19944, + "_idleStart": 23611, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 183, + "duration": 42, "state": "passed", - "speed": "slow" + "speed": "medium" }, { "type": "test", @@ -5855,9 +5855,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "parent": "38LvnuvLSA8PqdST5wKb8", "ctx": null, - "_testId": "urn:uuid:687b7aa5-fba0-40d0-8a6c-5f9b238ed1d3", + "_testId": "urn:uuid:cd5634c6-781a-426b-8722-27ab2fac0485", "_events": {}, "_eventsCount": 1, "cell": { @@ -5868,14 +5868,14 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 20127, + "_idleStart": 23653, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 156, + "duration": 43, "state": "passed", - "speed": "slow" + "speed": "medium" }, { "type": "test", @@ -5890,9 +5890,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "parent": "38LvnuvLSA8PqdST5wKb8", "ctx": null, - "_testId": "urn:uuid:a123df29-6794-4318-994c-f7daa328f858", + "_testId": "urn:uuid:cf75f231-edfd-42bb-b6bd-6d068aa3fe2d", "_events": {}, "_eventsCount": 1, "cell": { @@ -5903,12 +5903,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 20283, + "_idleStart": 23697, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 75, + "duration": 44, "state": "passed", "speed": "medium" }, @@ -5925,9 +5925,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "parent": "38LvnuvLSA8PqdST5wKb8", "ctx": null, - "_testId": "urn:uuid:357d7d7d-e7fe-415d-8bf5-386e2ece1a42", + "_testId": "urn:uuid:28948a44-3b99-4d44-be4d-8da3982aab4a", "_events": {}, "_eventsCount": 1, "cell": { @@ -5938,12 +5938,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 20358, + "_idleStart": 23740, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 213, + "duration": 172, "state": "passed", "speed": "slow" }, @@ -5960,9 +5960,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "parent": "38LvnuvLSA8PqdST5wKb8", "ctx": null, - "_testId": "urn:uuid:bece0638-7d8b-4942-8e09-ab1b8c00c50a", + "_testId": "urn:uuid:c1f8ebfc-3075-47fa-8f89-ef8de257c0a9", "_events": {}, "_eventsCount": 1, "cell": { @@ -5973,12 +5973,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 20572, + "_idleStart": 23913, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 51, + "duration": 46, "state": "passed", "speed": "medium" }, @@ -5995,9 +5995,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "parent": "38LvnuvLSA8PqdST5wKb8", "ctx": null, - "_testId": "urn:uuid:39b0e423-21c8-41a4-b66e-d46557831e7e", + "_testId": "urn:uuid:d7cb327c-49d1-4a78-a0a9-8b75093ac59b", "_events": {}, "_eventsCount": 1, "cell": { @@ -6008,7 +6008,7 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 20624, + "_idleStart": 23959, "_onTimeout": null, "_repeat": null, "_destroyed": true @@ -6030,9 +6030,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "parent": "38LvnuvLSA8PqdST5wKb8", "ctx": null, - "_testId": "urn:uuid:77fd975e-02b0-4a52-ae67-64ada1bb0268", + "_testId": "urn:uuid:76cfa4db-1615-444b-bd90-047e753c19a4", "_events": {}, "_eventsCount": 1, "cell": { @@ -6043,12 +6043,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 20669, + "_idleStart": 24005, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 209, + "duration": 190, "state": "passed", "speed": "slow" }, @@ -6065,9 +6065,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "parent": "38LvnuvLSA8PqdST5wKb8", "ctx": null, - "_testId": "urn:uuid:73733cc8-4055-4cef-98ed-086f2569a6b9", + "_testId": "urn:uuid:64463a5e-fb25-4394-9e45-88ff88874b66", "_events": {}, "_eventsCount": 1, "cell": { @@ -6078,12 +6078,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 20879, + "_idleStart": 24195, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 46, + "duration": 42, "state": "passed", "speed": "medium" }, @@ -6100,9 +6100,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "parent": "38LvnuvLSA8PqdST5wKb8", "ctx": null, - "_testId": "urn:uuid:3fae7ecf-5dde-45a1-8901-b8567c204690", + "_testId": "urn:uuid:df2ef88e-04a5-46ad-9f0b-e1e47dee7152", "_events": {}, "_eventsCount": 1, "cell": { @@ -6113,12 +6113,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 20926, + "_idleStart": 24237, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 169, + "duration": 649, "state": "passed", "speed": "slow" }, @@ -6135,9 +6135,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "parent": "38LvnuvLSA8PqdST5wKb8", "ctx": null, - "_testId": "urn:uuid:fcd5489f-19dc-4e9f-9ea0-3abf343d34a8", + "_testId": "urn:uuid:6cad13d2-e1df-4846-8d5a-7ddc408d22a6", "_events": {}, "_eventsCount": 1, "cell": { @@ -6148,12 +6148,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 21095, + "_idleStart": 24886, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 50, + "duration": 46, "state": "passed", "speed": "medium" }, @@ -6170,9 +6170,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "parent": "38LvnuvLSA8PqdST5wKb8", "ctx": null, - "_testId": "urn:uuid:cb2827a2-f3e4-424c-acce-1b87ff24cd19", + "_testId": "urn:uuid:46da3bcb-20cc-494d-be74-686c4126c480", "_events": {}, "_eventsCount": 1, "cell": { @@ -6183,12 +6183,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 21145, + "_idleStart": 24932, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 202, + "duration": 217, "state": "passed", "speed": "slow" }, @@ -6204,7 +6204,7 @@ "_currentRetry": 0, "pending": true, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "parent": "38LvnuvLSA8PqdST5wKb8", "ctx": null, "state": "pending" }, @@ -6221,9 +6221,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "parent": "38LvnuvLSA8PqdST5wKb8", "ctx": null, - "_testId": "urn:uuid:7da16466-73c1-49ad-b6d4-9c43d5cd5d04", + "_testId": "urn:uuid:542c4891-f67e-4bac-af02-16ad69164778", "_events": {}, "_eventsCount": 1, "cell": { @@ -6234,12 +6234,12 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 21346, + "_idleStart": 25150, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 46, + "duration": 42, "state": "failed", "err": { "name": "AssertionError", @@ -6251,7 +6251,7 @@ "options": { "credentials": "same-origin", "headers": {}, - "body": "{\"credential\":{\"@context\":[\"https://www.w3.org/2018/credentials/v1\"],\"type\":[\"VerifiableCredential\"],\"credentialSubject\":{\"id\":\"did:key:z6MkhTNL7i2etLerDK8Acz5t528giE5KA4p75T6ka1E1D74r\"},\"issuanceDate\":\"2024-12-06T15:12:34Z\",\"id\":\"urn:uuid:cd1eddef-2a8b-4923-be28-cd2a9172afd9\",\"issuer\":\"did:key:z6MkfFjyzk5CKMdnLacqay3kLMMaZEvKr8yxhks2HezmF4X3\",\"expirationDate\":\"2025-12-06T15:12:34Z\"},\"options\":{\"type\":\"Ed25519Signature2018\"}}", + "body": "{\"credential\":{\"@context\":[\"https://www.w3.org/2018/credentials/v1\"],\"type\":[\"VerifiableCredential\"],\"credentialSubject\":{\"id\":\"did:key:z6MkhTNL7i2etLerDK8Acz5t528giE5KA4p75T6ka1E1D74r\"},\"issuanceDate\":\"2024-12-06T18:26:15Z\",\"id\":\"urn:uuid:fbd01228-66f6-425e-9751-cf6577b4e6cd\",\"issuer\":\"did:key:z6MkfFjyzk5CKMdnLacqay3kLMMaZEvKr8yxhks2HezmF4X3\",\"expirationDate\":\"2025-12-06T18:26:15Z\"},\"options\":{\"type\":\"Ed25519Signature2018\"}}", "method": "POST", "json": { "credential": { @@ -6264,10 +6264,10 @@ "credentialSubject": { "id": "did:key:z6MkhTNL7i2etLerDK8Acz5t528giE5KA4p75T6ka1E1D74r" }, - "issuanceDate": "2024-12-06T15:12:34Z", - "id": "urn:uuid:cd1eddef-2a8b-4923-be28-cd2a9172afd9", + "issuanceDate": "2024-12-06T18:26:15Z", + "id": "urn:uuid:fbd01228-66f6-425e-9751-cf6577b4e6cd", "issuer": "did:key:z6MkfFjyzk5CKMdnLacqay3kLMMaZEvKr8yxhks2HezmF4X3", - "expirationDate": "2025-12-06T15:12:34Z" + "expirationDate": "2025-12-06T18:26:15Z" }, "options": { "type": "Ed25519Signature2018" @@ -6368,12 +6368,12 @@ "_onlyTests": [], "_onlySuites": [], "delayed": false, - "parent": "uGyJV-_eEt_hXf3_UYi8t", + "parent": "RufV3R04HvjutDLotPzra", "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "_testId": "urn:uuid:de1556fb-015b-4acc-a939-ac9893af336b" + "_testId": "urn:uuid:39059fde-2d69-450a-b24e-ca18b8b45258" }, { - "title": "SecureKey", + "title": "Procivis One Core", "ctx": null, "suites": [], "tests": [ @@ -6390,35 +6390,134 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "NrRUPGI5Q0vLViuZ7nae2", "ctx": null, - "_testId": "urn:uuid:199183fe-54f6-41f6-9950-06d6dc1e420c", + "_testId": "urn:uuid:7b203ceb-2028-477c-ac7e-59aac3b451bc", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SecureKey", + "columnId": "Procivis One Core", "rowId": "MUST successfully issue a credential." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 21394, + "_idleStart": 25193, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 79, + "duration": 386, "state": "failed", "err": { "name": "AssertionError", - "message": "Expected no error, got fetch failed: expected TypeError: fetch failed { …(2) } to not exist", + "message": "Expected no error, got Request failed with status code 400 Bad Request: expected HTTPError: Request failed with status cod… { …(6) } to not exist", "showDiff": false, "actual": { - "requestUrl": "https://issuer-vcs.sandbox.trustbloc.dev/vc-issuer-interop-key/credentials/issue" + "response": {}, + "request": {}, + "options": { + "credentials": "same-origin", + "headers": {}, + "body": "{\"credential\":{\"@context\":[\"https://www.w3.org/2018/credentials/v1\"],\"type\":[\"VerifiableCredential\"],\"credentialSubject\":{\"id\":\"did:key:z6MkhTNL7i2etLerDK8Acz5t528giE5KA4p75T6ka1E1D74r\"},\"issuanceDate\":\"2024-12-06T18:26:15Z\",\"id\":\"urn:uuid:795fba27-3d41-461f-a9e6-c16a7612ed19\",\"issuer\":\"did:key:zDnaebiWvYW4sEFcncp6sLRmGPio1tVaXSDBwnYELtyvwpnYE\"}}", + "method": "POST", + "json": { + "credential": { + "@context": [ + "https://www.w3.org/2018/credentials/v1" + ], + "type": [ + "VerifiableCredential" + ], + "credentialSubject": { + "id": "did:key:z6MkhTNL7i2etLerDK8Acz5t528giE5KA4p75T6ka1E1D74r" + }, + "issuanceDate": "2024-12-06T18:26:15Z", + "id": "urn:uuid:795fba27-3d41-461f-a9e6-c16a7612ed19", + "issuer": "did:key:zDnaebiWvYW4sEFcncp6sLRmGPio1tVaXSDBwnYELtyvwpnYE" + } + }, + "agent": { + "_events": {}, + "_eventsCount": 2, + "defaultPort": 443, + "protocol": "https:", + "options": { + "rejectUnauthorized": false, + "noDelay": true, + "path": null + }, + "requests": {}, + "sockets": {}, + "freeSockets": {}, + "keepAliveMsecs": 1000, + "keepAlive": false, + "maxSockets": null, + "maxFreeSockets": 256, + "scheduling": "lifo", + "maxTotalSockets": null, + "totalSocketCount": 0, + "maxCachedSessions": 100, + "_sessionCache": { + "map": {}, + "list": [] + } + }, + "hooks": { + "beforeRequest": [], + "beforeRetry": [], + "beforeError": [], + "afterResponse": [] + }, + "prefixUrl": "", + "retry": { + "limit": 2, + "methods": [ + "get", + "put", + "head", + "delete", + "options", + "trace" + ], + "statusCodes": [ + 408, + 413, + 429, + 500, + 502, + 503, + 504 + ], + "afterStatusCodes": [ + 413, + 429, + 503 + ], + "maxRetryAfter": null, + "backoffLimit": null + }, + "throwHttpErrors": true, + "timeout": 10000, + "signal": {}, + "duplex": "half" + }, + "name": "HTTPError", + "requestUrl": "https://canivc.core.dev.procivis-one.com/vc-api/credentials/issue", + "status": 400, + "data": { + "errors": [ + { + "status": 400, + "title": "Failed to deserialize the JSON body into the target type", + "detail": null + } + ] + } }, "operator": "notStrictEqual", - "stack": "AssertionError: Expected no error, got fetch failed: expected TypeError: fetch failed { …(2) } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldReturnResult (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:19:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:41:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + "stack": "AssertionError: Expected no error, got Request failed with status code 400 Bad Request: expected HTTPError: Request failed with status cod… { …(6) } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldReturnResult (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:19:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:41:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" } }, { @@ -6434,33 +6533,27 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "NrRUPGI5Q0vLViuZ7nae2", "ctx": null, - "_testId": "urn:uuid:ca54b914-7220-4918-9dcd-03eb606739d5", + "_testId": "urn:uuid:49587bbd-8060-4232-afee-4dc5cd621c47", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SecureKey", + "columnId": "Procivis One Core", "rowId": "Request body MUST have property \"credential\"." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 21474, + "_idleStart": 25581, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 73, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected an HTTP error response code.: expected undefined to exist", - "showDiff": false, - "operator": "strictEqual", - "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:55:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "duration": 100, + "state": "passed", + "speed": "slow" }, { "type": "test", @@ -6475,33 +6568,27 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "NrRUPGI5Q0vLViuZ7nae2", "ctx": null, - "_testId": "urn:uuid:f6350aa8-58b8-49b8-886a-e55e01761963", + "_testId": "urn:uuid:6bbb8ab0-9a22-430b-9806-5e3731dc0354", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SecureKey", + "columnId": "Procivis One Core", "rowId": "credential MUST have property \"@context\"." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 21546, + "_idleStart": 25681, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 63, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected an HTTP error response code.: expected undefined to exist", - "showDiff": false, - "operator": "strictEqual", - "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:65:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "duration": 100, + "state": "passed", + "speed": "slow" }, { "type": "test", @@ -6516,33 +6603,27 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "NrRUPGI5Q0vLViuZ7nae2", "ctx": null, - "_testId": "urn:uuid:984f9968-6e43-476c-9884-879e8aa75406", + "_testId": "urn:uuid:91dccb2d-8910-42bc-94b0-331e4dd67d27", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SecureKey", + "columnId": "Procivis One Core", "rowId": "credential \"@context\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 21610, + "_idleStart": 25781, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 112, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected an HTTP error response code.: expected undefined to exist", - "showDiff": false, - "operator": "strictEqual", - "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:75:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "duration": 100, + "state": "passed", + "speed": "slow" }, { "type": "test", @@ -6557,33 +6638,27 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "NrRUPGI5Q0vLViuZ7nae2", "ctx": null, - "_testId": "urn:uuid:1dd94fa4-5810-4395-84f0-923befe0d10a", + "_testId": "urn:uuid:9d0052c6-8dd0-486e-af4f-dffade2d4bad", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SecureKey", + "columnId": "Procivis One Core", "rowId": "credential \"@context\" items MUST be strings." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 21722, + "_idleStart": 25882, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 76, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected an HTTP error response code.: expected undefined to exist", - "showDiff": false, - "operator": "strictEqual", - "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:87:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "duration": 633, + "state": "passed", + "speed": "slow" }, { "type": "test", @@ -6598,33 +6673,27 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "NrRUPGI5Q0vLViuZ7nae2", "ctx": null, - "_testId": "urn:uuid:1c98d6a4-5808-42a3-8750-8c7453bbdbcb", + "_testId": "urn:uuid:4942b5cf-f634-4c8d-927a-e991017bc6d4", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SecureKey", + "columnId": "Procivis One Core", "rowId": "credential MUST have property \"type\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 21798, + "_idleStart": 26516, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 121, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected an HTTP error response code.: expected undefined to exist", - "showDiff": false, - "operator": "strictEqual", - "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:98:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "duration": 101, + "state": "passed", + "speed": "slow" }, { "type": "test", @@ -6639,33 +6708,27 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "NrRUPGI5Q0vLViuZ7nae2", "ctx": null, - "_testId": "urn:uuid:c573ce16-b17b-4021-a793-4af5206fd540", + "_testId": "urn:uuid:1b8cc2b0-11ed-4b03-b2c8-62a39fcd0cc7", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SecureKey", + "columnId": "Procivis One Core", "rowId": "\"credential.type\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 21920, + "_idleStart": 26616, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 31, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected an HTTP error response code.: expected undefined to exist", - "showDiff": false, - "operator": "strictEqual", - "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:108:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "duration": 100, + "state": "passed", + "speed": "slow" }, { "type": "test", @@ -6680,33 +6743,27 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "NrRUPGI5Q0vLViuZ7nae2", "ctx": null, - "_testId": "urn:uuid:1b7b226d-09ce-4f00-acd4-aac8d3aa9717", + "_testId": "urn:uuid:cbcaa899-7fb6-4512-8129-daded26f8763", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SecureKey", + "columnId": "Procivis One Core", "rowId": "\"credential.type\" items MUST be strings" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 21951, + "_idleStart": 26716, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 59, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected an HTTP error response code.: expected undefined to exist", - "showDiff": false, - "operator": "strictEqual", - "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:120:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "duration": 402, + "state": "passed", + "speed": "slow" }, { "type": "test", @@ -6721,33 +6778,27 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "NrRUPGI5Q0vLViuZ7nae2", "ctx": null, - "_testId": "urn:uuid:fd6aadd0-5f23-48d3-b394-f5b32aea88c0", + "_testId": "urn:uuid:c9b4f684-1368-4158-8c0f-55c8a83c222e", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SecureKey", + "columnId": "Procivis One Core", "rowId": "credential MUST have property \"issuer\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22010, + "_idleStart": 27118, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 123, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected an HTTP error response code.: expected undefined to exist", - "showDiff": false, - "operator": "strictEqual", - "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:131:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "duration": 100, + "state": "passed", + "speed": "slow" }, { "type": "test", @@ -6762,33 +6813,27 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "NrRUPGI5Q0vLViuZ7nae2", "ctx": null, - "_testId": "urn:uuid:be9ab041-4fd5-4e0d-885e-eb6c6efe578e", + "_testId": "urn:uuid:e032b2cb-d865-468c-8ba6-9f755532c76e", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SecureKey", + "columnId": "Procivis One Core", "rowId": "\"credential.issuer\" MUST be a string or an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22136, + "_idleStart": 27219, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 75, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected an HTTP error response code.: expected undefined to exist", - "showDiff": false, - "operator": "strictEqual", - "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:143:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "duration": 405, + "state": "passed", + "speed": "slow" }, { "type": "test", @@ -6803,33 +6848,27 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "NrRUPGI5Q0vLViuZ7nae2", "ctx": null, - "_testId": "urn:uuid:cb9579e1-b6f3-4f96-8ca0-956cf9993c1a", + "_testId": "urn:uuid:b10bffa4-af49-4b31-9469-fc88a74cdc11", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SecureKey", + "columnId": "Procivis One Core", "rowId": "credential MUST have property \"credentialSubject\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22211, + "_idleStart": 27625, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 7, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected an HTTP error response code.: expected undefined to exist", - "showDiff": false, - "operator": "strictEqual", - "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:154:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "duration": 100, + "state": "passed", + "speed": "slow" }, { "type": "test", @@ -6844,33 +6883,27 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "NrRUPGI5Q0vLViuZ7nae2", "ctx": null, - "_testId": "urn:uuid:98ecfc17-5aea-4d95-809f-ebd8dd4f3c43", + "_testId": "urn:uuid:d07caf1a-c683-49df-b480-170ba1e1e334", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SecureKey", + "columnId": "Procivis One Core", "rowId": "\"credential.credentialSubject\" MUST be an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22218, + "_idleStart": 27724, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 40, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected an HTTP error response code.: expected undefined to exist", - "showDiff": false, - "operator": "strictEqual", - "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:168:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "duration": 501, + "state": "passed", + "speed": "slow" }, { "type": "test", @@ -6884,7 +6917,7 @@ "_currentRetry": 0, "pending": true, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "NrRUPGI5Q0vLViuZ7nae2", "ctx": null, "state": "pending" }, @@ -6901,35 +6934,135 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "NrRUPGI5Q0vLViuZ7nae2", "ctx": null, - "_testId": "urn:uuid:62ed2988-b422-4724-a710-9b0c3c70beb7", + "_testId": "urn:uuid:bc637b0b-249b-47a9-b308-fc604b24eb9f", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SecureKey", + "columnId": "Procivis One Core", "rowId": "credential MAY have property \"expirationDate\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22258, + "_idleStart": 28226, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 30, + "duration": 100, "state": "failed", "err": { "name": "AssertionError", - "message": "Expected no error, got fetch failed: expected TypeError: fetch failed { …(2) } to not exist", + "message": "Expected no error, got Request failed with status code 400 Bad Request: expected HTTPError: Request failed with status cod… { …(6) } to not exist", "showDiff": false, "actual": { - "requestUrl": "https://issuer-vcs.sandbox.trustbloc.dev/vc-issuer-interop-key/credentials/issue" + "response": {}, + "request": {}, + "options": { + "credentials": "same-origin", + "headers": {}, + "body": "{\"credential\":{\"@context\":[\"https://www.w3.org/2018/credentials/v1\"],\"type\":[\"VerifiableCredential\"],\"credentialSubject\":{\"id\":\"did:key:z6MkhTNL7i2etLerDK8Acz5t528giE5KA4p75T6ka1E1D74r\"},\"issuanceDate\":\"2024-12-06T18:26:18Z\",\"id\":\"urn:uuid:27276691-fda4-4ea7-8c7a-7c527ac4aa93\",\"issuer\":\"did:key:zDnaebiWvYW4sEFcncp6sLRmGPio1tVaXSDBwnYELtyvwpnYE\",\"expirationDate\":\"2025-12-06T18:26:18Z\"}}", + "method": "POST", + "json": { + "credential": { + "@context": [ + "https://www.w3.org/2018/credentials/v1" + ], + "type": [ + "VerifiableCredential" + ], + "credentialSubject": { + "id": "did:key:z6MkhTNL7i2etLerDK8Acz5t528giE5KA4p75T6ka1E1D74r" + }, + "issuanceDate": "2024-12-06T18:26:18Z", + "id": "urn:uuid:27276691-fda4-4ea7-8c7a-7c527ac4aa93", + "issuer": "did:key:zDnaebiWvYW4sEFcncp6sLRmGPio1tVaXSDBwnYELtyvwpnYE", + "expirationDate": "2025-12-06T18:26:18Z" + } + }, + "agent": { + "_events": {}, + "_eventsCount": 2, + "defaultPort": 443, + "protocol": "https:", + "options": { + "rejectUnauthorized": false, + "noDelay": true, + "path": null + }, + "requests": {}, + "sockets": {}, + "freeSockets": {}, + "keepAliveMsecs": 1000, + "keepAlive": false, + "maxSockets": null, + "maxFreeSockets": 256, + "scheduling": "lifo", + "maxTotalSockets": null, + "totalSocketCount": 0, + "maxCachedSessions": 100, + "_sessionCache": { + "map": {}, + "list": [] + } + }, + "hooks": { + "beforeRequest": [], + "beforeRetry": [], + "beforeError": [], + "afterResponse": [] + }, + "prefixUrl": "", + "retry": { + "limit": 2, + "methods": [ + "get", + "put", + "head", + "delete", + "options", + "trace" + ], + "statusCodes": [ + 408, + 413, + 429, + 500, + 502, + 503, + 504 + ], + "afterStatusCodes": [ + 413, + 429, + 503 + ], + "maxRetryAfter": null, + "backoffLimit": null + }, + "throwHttpErrors": true, + "timeout": 10000, + "signal": {}, + "duplex": "half" + }, + "name": "HTTPError", + "requestUrl": "https://canivc.core.dev.procivis-one.com/vc-api/credentials/issue", + "status": 400, + "data": { + "errors": [ + { + "status": 400, + "title": "Failed to deserialize the JSON body into the target type", + "detail": null + } + ] + } }, "operator": "notStrictEqual", - "stack": "AssertionError: Expected no error, got fetch failed: expected TypeError: fetch failed { …(2) } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldReturnResult (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:19:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:193:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + "stack": "AssertionError: Expected no error, got Request failed with status code 400 Bad Request: expected HTTPError: Request failed with status cod… { …(6) } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldReturnResult (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:19:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:193:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" } } ], @@ -6946,12 +7079,12 @@ "_onlyTests": [], "_onlySuites": [], "delayed": false, - "parent": "uGyJV-_eEt_hXf3_UYi8t", + "parent": "RufV3R04HvjutDLotPzra", "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "_testId": "urn:uuid:68c9e291-e665-43f9-be63-712c8cd6fc51" + "_testId": "urn:uuid:874b3452-75c8-40e4-95a0-31289c28c4d5" }, { - "title": "SpruceID", + "title": "SecureKey", "ctx": null, "suites": [], "tests": [ @@ -6968,27 +7101,36 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "parent": "CIVhSrWzaq1ScrdxZdxGd", "ctx": null, - "_testId": "urn:uuid:63954baf-796f-4e78-9aac-cfa883c1c18c", + "_testId": "urn:uuid:a8a5386f-7252-4001-a39e-1652e8af5d7d", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", + "columnId": "SecureKey", "rowId": "MUST successfully issue a credential." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22288, + "_idleStart": 28326, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 129, - "state": "passed", - "speed": "slow" + "duration": 77, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected no error, got fetch failed: expected TypeError: fetch failed { …(2) } to not exist", + "showDiff": false, + "actual": { + "requestUrl": "https://issuer-vcs.sandbox.trustbloc.dev/vc-issuer-interop-key/credentials/issue" + }, + "operator": "notStrictEqual", + "stack": "AssertionError: Expected no error, got fetch failed: expected TypeError: fetch failed { …(2) } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldReturnResult (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:19:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:41:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } }, { "type": "test", @@ -7003,27 +7145,33 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "parent": "CIVhSrWzaq1ScrdxZdxGd", "ctx": null, - "_testId": "urn:uuid:88cf8896-a8a1-46ce-955b-617431dc4f7b", + "_testId": "urn:uuid:7e83f14d-25e4-4192-82a4-4af710532823", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", + "columnId": "SecureKey", "rowId": "Request body MUST have property \"credential\"." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22418, + "_idleStart": 28404, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 22, - "state": "passed", - "speed": "fast" + "duration": 72, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected an HTTP error response code.: expected undefined to exist", + "showDiff": false, + "operator": "strictEqual", + "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:55:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } }, { "type": "test", @@ -7038,27 +7186,33 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "parent": "CIVhSrWzaq1ScrdxZdxGd", "ctx": null, - "_testId": "urn:uuid:24903d17-f6f0-4c1a-b236-7b70504d2250", + "_testId": "urn:uuid:6dd0f167-1cda-404e-b99b-eaa557838b16", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", + "columnId": "SecureKey", "rowId": "credential MUST have property \"@context\"." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22440, + "_idleStart": 28476, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 25, - "state": "passed", - "speed": "fast" + "duration": 112, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected an HTTP error response code.: expected undefined to exist", + "showDiff": false, + "operator": "strictEqual", + "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:65:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } }, { "type": "test", @@ -7073,27 +7227,33 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "parent": "CIVhSrWzaq1ScrdxZdxGd", "ctx": null, - "_testId": "urn:uuid:1376adf5-58ec-4ed6-ab6e-dbc2a2bdd6cd", + "_testId": "urn:uuid:2ae4dde5-78ae-4a8d-a77c-46f1b632a07e", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", + "columnId": "SecureKey", "rowId": "credential \"@context\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22465, + "_idleStart": 28589, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 29, - "state": "passed", - "speed": "fast" + "duration": 110, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected an HTTP error response code.: expected undefined to exist", + "showDiff": false, + "operator": "strictEqual", + "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:75:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } }, { "type": "test", @@ -7108,27 +7268,33 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "parent": "CIVhSrWzaq1ScrdxZdxGd", "ctx": null, - "_testId": "urn:uuid:fc39c0ea-2bfc-4303-ac64-5ec530498bc7", + "_testId": "urn:uuid:46e0a6a4-a83e-4e5d-a4a5-c33ca1c5f9d9", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", + "columnId": "SecureKey", "rowId": "credential \"@context\" items MUST be strings." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22494, + "_idleStart": 28698, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 149, - "state": "passed", - "speed": "slow" + "duration": 132, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected an HTTP error response code.: expected undefined to exist", + "showDiff": false, + "operator": "strictEqual", + "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:87:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } }, { "type": "test", @@ -7143,27 +7309,33 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "parent": "CIVhSrWzaq1ScrdxZdxGd", "ctx": null, - "_testId": "urn:uuid:abfe3ffb-4b8e-495c-a36b-cb841c262e12", + "_testId": "urn:uuid:f68ce267-5cc3-4e57-8de4-38874e893d41", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", + "columnId": "SecureKey", "rowId": "credential MUST have property \"type\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22643, + "_idleStart": 28831, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 27, - "state": "passed", - "speed": "fast" + "duration": 42, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected an HTTP error response code.: expected undefined to exist", + "showDiff": false, + "operator": "strictEqual", + "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:98:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } }, { "type": "test", @@ -7178,27 +7350,33 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "parent": "CIVhSrWzaq1ScrdxZdxGd", "ctx": null, - "_testId": "urn:uuid:a5455110-b275-4b66-84b4-e2ef7577c66f", + "_testId": "urn:uuid:16c816dc-cdd3-451e-89b4-55fcebf99602", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", + "columnId": "SecureKey", "rowId": "\"credential.type\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22669, + "_idleStart": 28873, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 26, - "state": "passed", - "speed": "fast" + "duration": 70, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected an HTTP error response code.: expected undefined to exist", + "showDiff": false, + "operator": "strictEqual", + "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:108:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } }, { "type": "test", @@ -7213,27 +7391,33 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "parent": "CIVhSrWzaq1ScrdxZdxGd", "ctx": null, - "_testId": "urn:uuid:db1007f5-0e29-4e94-9dc6-bc31a98379bf", + "_testId": "urn:uuid:a571f6ec-360f-4fc2-82d7-10571b6042cd", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", + "columnId": "SecureKey", "rowId": "\"credential.type\" items MUST be strings" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22696, + "_idleStart": 28944, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 92, - "state": "passed", - "speed": "slow" + "duration": 82, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected an HTTP error response code.: expected undefined to exist", + "showDiff": false, + "operator": "strictEqual", + "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:120:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } }, { "type": "test", @@ -7248,27 +7432,33 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "parent": "CIVhSrWzaq1ScrdxZdxGd", "ctx": null, - "_testId": "urn:uuid:a5b941fd-ae22-4e4e-8f50-12aa4adeb8d2", + "_testId": "urn:uuid:f5279285-9e60-42c0-bb9a-90d0d78a383f", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", + "columnId": "SecureKey", "rowId": "credential MUST have property \"issuer\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22788, + "_idleStart": 29027, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 25, - "state": "passed", - "speed": "fast" + "duration": 137, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected an HTTP error response code.: expected undefined to exist", + "showDiff": false, + "operator": "strictEqual", + "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:131:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } }, { "type": "test", @@ -7283,27 +7473,33 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "parent": "CIVhSrWzaq1ScrdxZdxGd", "ctx": null, - "_testId": "urn:uuid:ae4bfd87-1a1a-45af-8c1a-d253ab266b3c", + "_testId": "urn:uuid:f1d56bec-d53f-454d-8546-df9fae3f62a0", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", + "columnId": "SecureKey", "rowId": "\"credential.issuer\" MUST be a string or an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22813, + "_idleStart": 29165, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 107, - "state": "passed", - "speed": "slow" + "duration": 18, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected an HTTP error response code.: expected undefined to exist", + "showDiff": false, + "operator": "strictEqual", + "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:143:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } }, { "type": "test", @@ -7318,27 +7514,33 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "parent": "CIVhSrWzaq1ScrdxZdxGd", "ctx": null, - "_testId": "urn:uuid:5024fee2-3555-4466-adad-cf38404cefc2", + "_testId": "urn:uuid:c21cf8a1-7df8-411c-b15e-0b7f7bdf6069", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", + "columnId": "SecureKey", "rowId": "credential MUST have property \"credentialSubject\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22920, + "_idleStart": 29182, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 30, - "state": "passed", - "speed": "fast" + "duration": 62, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected an HTTP error response code.: expected undefined to exist", + "showDiff": false, + "operator": "strictEqual", + "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:154:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } }, { "type": "test", @@ -7353,27 +7555,33 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "parent": "CIVhSrWzaq1ScrdxZdxGd", "ctx": null, - "_testId": "urn:uuid:66b17ae4-7af3-4bae-86f8-b55c1c8315e0", + "_testId": "urn:uuid:bc5bef82-792c-4b62-bb29-63cc8cbf1bd4", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", + "columnId": "SecureKey", "rowId": "\"credential.credentialSubject\" MUST be an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22950, + "_idleStart": 29244, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 107, - "state": "passed", - "speed": "slow" + "duration": 105, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected an HTTP error response code.: expected undefined to exist", + "showDiff": false, + "operator": "strictEqual", + "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:168:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } }, { "type": "test", @@ -7387,7 +7595,7 @@ "_currentRetry": 0, "pending": true, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "parent": "CIVhSrWzaq1ScrdxZdxGd", "ctx": null, "state": "pending" }, @@ -7404,27 +7612,36 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "parent": "CIVhSrWzaq1ScrdxZdxGd", "ctx": null, - "_testId": "urn:uuid:ed256f36-1716-4f9e-bdce-ed6a30b62307", + "_testId": "urn:uuid:6c6145bd-598a-4c4e-aba8-f90853c38f2c", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", + "columnId": "SecureKey", "rowId": "credential MAY have property \"expirationDate\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 23057, + "_idleStart": 29349, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 23, - "state": "passed", - "speed": "fast" + "duration": 19, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected no error, got fetch failed: expected TypeError: fetch failed { …(2) } to not exist", + "showDiff": false, + "actual": { + "requestUrl": "https://issuer-vcs.sandbox.trustbloc.dev/vc-issuer-interop-key/credentials/issue" + }, + "operator": "notStrictEqual", + "stack": "AssertionError: Expected no error, got fetch failed: expected TypeError: fetch failed { …(2) } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldReturnResult (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:19:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:193:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } } ], "root": false, @@ -7440,12 +7657,12 @@ "_onlyTests": [], "_onlySuites": [], "delayed": false, - "parent": "uGyJV-_eEt_hXf3_UYi8t", + "parent": "RufV3R04HvjutDLotPzra", "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "_testId": "urn:uuid:4fd34e06-7715-403a-ab4e-e2939f5489d9" + "_testId": "urn:uuid:439c940d-db25-462a-8d72-c3897a99b574" }, { - "title": "Trinsic", + "title": "SpruceID", "ctx": null, "suites": [], "tests": [ @@ -7462,25 +7679,25 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "parent": "XQPIk5v_0YiAZdM9T9S22", "ctx": null, - "_testId": "urn:uuid:065ba075-16bf-4b7e-b9dd-a801fff72a4f", + "_testId": "urn:uuid:d2e1b48d-d854-46ae-940c-9bb2e1b6feb8", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Trinsic", + "columnId": "SpruceID", "rowId": "MUST successfully issue a credential." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 23080, + "_idleStart": 29369, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 818, + "duration": 126, "state": "passed", "speed": "slow" }, @@ -7497,25 +7714,25 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "parent": "XQPIk5v_0YiAZdM9T9S22", "ctx": null, - "_testId": "urn:uuid:16b37d03-d320-4812-94ef-f1f7b4bfd8ff", + "_testId": "urn:uuid:fb3340a6-2cb6-4e15-a1b8-2e509e09cc9e", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Trinsic", + "columnId": "SpruceID", "rowId": "Request body MUST have property \"credential\"." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 23898, + "_idleStart": 29495, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 18, + "duration": 28, "state": "passed", "speed": "fast" }, @@ -7532,25 +7749,25 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "parent": "XQPIk5v_0YiAZdM9T9S22", "ctx": null, - "_testId": "urn:uuid:a5305e55-65ab-437a-a0d2-d909e53d1608", + "_testId": "urn:uuid:3c8d5322-70c1-4a5a-a0cc-5ccd9f11e702", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Trinsic", + "columnId": "SpruceID", "rowId": "credential MUST have property \"@context\"." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 23916, + "_idleStart": 29524, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 19, + "duration": 28, "state": "passed", "speed": "fast" }, @@ -7567,25 +7784,25 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "parent": "XQPIk5v_0YiAZdM9T9S22", "ctx": null, - "_testId": "urn:uuid:ebc45d21-681f-4674-8c76-798f7db95877", + "_testId": "urn:uuid:1befe1b9-1e75-4867-9ee9-94c4e3062607", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Trinsic", + "columnId": "SpruceID", "rowId": "credential \"@context\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 23935, + "_idleStart": 29552, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 17, + "duration": 36, "state": "passed", "speed": "fast" }, @@ -7602,25 +7819,25 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "parent": "XQPIk5v_0YiAZdM9T9S22", "ctx": null, - "_testId": "urn:uuid:4585a693-564c-459a-a988-fcda84e5e152", + "_testId": "urn:uuid:9d33064e-1828-4fa5-ac85-92afab839da1", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Trinsic", + "columnId": "SpruceID", "rowId": "credential \"@context\" items MUST be strings." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 23951, + "_idleStart": 29589, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 143, + "duration": 154, "state": "passed", "speed": "slow" }, @@ -7637,25 +7854,25 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "parent": "XQPIk5v_0YiAZdM9T9S22", "ctx": null, - "_testId": "urn:uuid:72e15b11-37be-41c3-8d78-416800ad4f84", + "_testId": "urn:uuid:ca78bcfc-2d37-488a-8020-06691f1086f1", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Trinsic", + "columnId": "SpruceID", "rowId": "credential MUST have property \"type\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24095, + "_idleStart": 29743, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 21, + "duration": 30, "state": "passed", "speed": "fast" }, @@ -7672,25 +7889,25 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "parent": "XQPIk5v_0YiAZdM9T9S22", "ctx": null, - "_testId": "urn:uuid:041b1a17-d59a-4cfb-b8d8-d031b474cd3e", + "_testId": "urn:uuid:dbc0c209-4d1d-4b2a-a613-fe23af91e28f", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Trinsic", + "columnId": "SpruceID", "rowId": "\"credential.type\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24117, + "_idleStart": 29773, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 20, + "duration": 29, "state": "passed", "speed": "fast" }, @@ -7707,25 +7924,25 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "parent": "XQPIk5v_0YiAZdM9T9S22", "ctx": null, - "_testId": "urn:uuid:6209208a-15f9-4923-95e7-3a192261b96d", + "_testId": "urn:uuid:3c242be8-5421-40d5-aa7f-b7f58b677096", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Trinsic", + "columnId": "SpruceID", "rowId": "\"credential.type\" items MUST be strings" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24136, + "_idleStart": 29802, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 95, + "duration": 127, "state": "passed", "speed": "slow" }, @@ -7742,25 +7959,25 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "parent": "XQPIk5v_0YiAZdM9T9S22", "ctx": null, - "_testId": "urn:uuid:448ca8f7-f300-48cc-bf33-b9a311842213", + "_testId": "urn:uuid:268ec2c7-05ab-4225-90a3-c6d0127ffc23", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Trinsic", + "columnId": "SpruceID", "rowId": "credential MUST have property \"issuer\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24232, + "_idleStart": 29929, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 24, + "duration": 31, "state": "passed", "speed": "fast" }, @@ -7777,25 +7994,25 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "parent": "XQPIk5v_0YiAZdM9T9S22", "ctx": null, - "_testId": "urn:uuid:103d0870-b7bf-4010-9190-740ee5f85d9f", + "_testId": "urn:uuid:90271e1a-0b59-4aab-b59c-1245d81f5f0c", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Trinsic", + "columnId": "SpruceID", "rowId": "\"credential.issuer\" MUST be a string or an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24255, + "_idleStart": 29961, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 87, + "duration": 162, "state": "passed", "speed": "slow" }, @@ -7812,27 +8029,27 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "parent": "XQPIk5v_0YiAZdM9T9S22", "ctx": null, - "_testId": "urn:uuid:3a05c38f-7b48-4ab5-a510-d8b3a4771a1d", + "_testId": "urn:uuid:4065fbd0-3d66-47d9-9d38-52be5bef011a", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Trinsic", + "columnId": "SpruceID", "rowId": "credential MUST have property \"credentialSubject\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24343, + "_idleStart": 30123, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 16, + "duration": 39, "state": "passed", - "speed": "fast" + "speed": "medium" }, { "type": "test", @@ -7847,25 +8064,25 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "parent": "XQPIk5v_0YiAZdM9T9S22", "ctx": null, - "_testId": "urn:uuid:045c5896-0961-44bd-87fc-e044354171eb", + "_testId": "urn:uuid:a9f680c5-fae5-447d-9aba-f7ae4ea67402", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Trinsic", + "columnId": "SpruceID", "rowId": "\"credential.credentialSubject\" MUST be an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24360, + "_idleStart": 30163, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 111, + "duration": 203, "state": "passed", "speed": "slow" }, @@ -7881,7 +8098,7 @@ "_currentRetry": 0, "pending": true, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "parent": "XQPIk5v_0YiAZdM9T9S22", "ctx": null, "state": "pending" }, @@ -7898,27 +8115,27 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "parent": "XQPIk5v_0YiAZdM9T9S22", "ctx": null, - "_testId": "urn:uuid:8dad2e71-a1d2-4261-8307-4035e6c99597", + "_testId": "urn:uuid:e3b38ad2-4686-436c-8862-770f896313d7", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Trinsic", + "columnId": "SpruceID", "rowId": "credential MAY have property \"expirationDate\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24471, + "_idleStart": 30366, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 41, + "duration": 31, "state": "passed", - "speed": "medium" + "speed": "fast" } ], "root": false, @@ -7934,52 +8151,15 @@ "_onlyTests": [], "_onlySuites": [], "delayed": false, - "parent": "uGyJV-_eEt_hXf3_UYi8t", + "parent": "RufV3R04HvjutDLotPzra", "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "_testId": "urn:uuid:1a866be4-4b94-4375-a70e-78096c2fb8ee" - } - ], - "root": false, - "pending": false, - "_retries": -1, - "_beforeEach": [], - "_beforeAll": [], - "_afterEach": [], - "_afterAll": [], - "_timeout": 15000, - "_slow": 75, - "_bail": false, - "_onlyTests": [], - "_onlySuites": [], - "delayed": false, - "parent": "hLLtd2xtfwA-1wmshVuxM", - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "summary": {}, - "matrix": true, - "report": true, - "rowLabel": "Test Name", - "columnLabel": "Issuer", - "reportData": [], - "_testId": "urn:uuid:4fb5108c-fa24-4a7e-8a36-6845963d4e1b", - "columns": [ - "ACA-py", - "apicatalog.com", - "Danube Tech", - "Digital Bazaar", - "Digital Credentials Consortium", - "EWF", - "GS1 US", - "Gen Digital", - "LearnCard", - "Mavennet", - "SecureKey", - "SpruceID", - "Trinsic" - ], - "rows": [ + "_testId": "urn:uuid:a0c451c0-b2c5-43a9-93a6-243f3e80ad74" + }, { - "id": "MUST successfully issue a credential.", - "cells": [ + "title": "Trential", + "ctx": null, + "suites": [], + "tests": [ { "type": "test", "title": "MUST successfully issue a credential.", @@ -7993,32 +8173,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", "ctx": null, - "_testId": "urn:uuid:03454759-52c8-45f7-b641-dd07851294f3", + "_testId": "urn:uuid:c327b27f-b7e8-42b0-8445-dd60fa287338", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "ACA-py", + "columnId": "Trential", "rowId": "MUST successfully issue a credential." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 313, + "_idleStart": 30397, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 958, + "duration": 964, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "MUST successfully issue a credential.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", + "title": "Request body MUST have property \"credential\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -8028,32 +8208,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", "ctx": null, - "_testId": "urn:uuid:592a2ffd-3b2d-4c21-a687-cf3e86c463c7", + "_testId": "urn:uuid:eed7d070-15b1-4d2f-aaab-a47a1648f817", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "apicatalog.com", - "rowId": "MUST successfully issue a credential." + "columnId": "Trential", + "rowId": "Request body MUST have property \"credential\"." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 3623, + "_idleStart": 31362, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 1124, + "duration": 222, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "MUST successfully issue a credential.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", + "title": "credential MUST have property \"@context\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -8063,32 +8243,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", "ctx": null, - "_testId": "urn:uuid:f37b9867-d73e-4e7b-9376-07f979ddd7b9", + "_testId": "urn:uuid:d18116a5-547d-4677-ac72-ea7743309f0b", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Danube Tech", - "rowId": "MUST successfully issue a credential." + "columnId": "Trential", + "rowId": "credential MUST have property \"@context\"." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 5972, + "_idleStart": 31585, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 634, + "duration": 221, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "MUST successfully issue a credential.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", + "title": "credential \"@context\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -8098,32 +8278,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", "ctx": null, - "_testId": "urn:uuid:be854829-7ae4-47b3-9401-9ef3a593d8d1", + "_testId": "urn:uuid:ee36cd56-1d53-46aa-9bd2-fab43c63df05", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Digital Bazaar", - "rowId": "MUST successfully issue a credential." + "columnId": "Trential", + "rowId": "credential \"@context\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 9542, + "_idleStart": 31806, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 455, + "duration": 213, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "MUST successfully issue a credential.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", + "title": "credential \"@context\" items MUST be strings.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -8133,32 +8313,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", "ctx": null, - "_testId": "urn:uuid:ca1a68ea-1ce7-431e-b83e-cf2e134187e6", + "_testId": "urn:uuid:13181eb8-7091-488d-b572-0bf8ba7c528b", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Digital Credentials Consortium", - "rowId": "MUST successfully issue a credential." + "columnId": "Trential", + "rowId": "credential \"@context\" items MUST be strings." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11060, + "_idleStart": 32019, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 212, + "duration": 1514, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "MUST successfully issue a credential.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", + "title": "credential MUST have property \"type\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -8168,32 +8348,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", "ctx": null, - "_testId": "urn:uuid:525e0707-874d-4d9d-b780-da768c934312", + "_testId": "urn:uuid:b873b5c9-bef2-4a1f-9bf5-fe30f976e0c2", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "EWF", - "rowId": "MUST successfully issue a credential." + "columnId": "Trential", + "rowId": "credential MUST have property \"type\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11619, + "_idleStart": 33533, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 500, + "duration": 212, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "MUST successfully issue a credential.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", + "title": "\"credential.type\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -8203,119 +8383,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", "ctx": null, - "_testId": "urn:uuid:41018c4c-7218-4c8f-98bd-ad877519e73e", + "_testId": "urn:uuid:7e8e7d58-8b07-4e7c-a1b8-6a0bb4d1b16b", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "GS1 US", - "rowId": "MUST successfully issue a credential." + "columnId": "Trential", + "rowId": "\"credential.type\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 14581, + "_idleStart": 33746, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 417, - "state": "failed", - "err": { - "response": {}, - "request": {}, - "options": { - "credentials": "same-origin", - "headers": {}, - "body": {}, - "method": "POST", - "agent": { - "_events": {}, - "_eventsCount": 2, - "defaultPort": 443, - "protocol": "https:", - "options": { - "rejectUnauthorized": false, - "noDelay": true, - "path": null - }, - "requests": {}, - "sockets": {}, - "freeSockets": {}, - "keepAliveMsecs": 1000, - "keepAlive": false, - "maxSockets": null, - "maxFreeSockets": 256, - "scheduling": "lifo", - "maxTotalSockets": null, - "totalSocketCount": 0, - "maxCachedSessions": 100, - "_sessionCache": { - "map": {}, - "list": [] - } - }, - "hooks": { - "beforeRequest": [], - "beforeRetry": [], - "beforeError": [], - "afterResponse": [] - }, - "prefixUrl": "", - "retry": { - "limit": 2, - "methods": [ - "get", - "put", - "head", - "delete", - "options", - "trace" - ], - "statusCodes": [ - 408, - 413, - 429, - 500, - 502, - 503, - 504 - ], - "afterStatusCodes": [ - 413, - 429, - 503 - ], - "maxRetryAfter": null, - "backoffLimit": null - }, - "throwHttpErrors": true, - "timeout": 10000, - "signal": {}, - "duplex": "half" - }, - "name": "HTTPError", - "requestUrl": "https://login.microsoftonline.com/e5e65807-3d2a-4f67-a262-72f255868da0/oauth2/v2.0/token", - "status": 401, - "data": { - "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: c3adced2-471d-4138-9692-4ba231341200 Correlation ID: 1a320789-718b-47b1-b3a9-67e679abfaa2 Timestamp: 2024-12-06 15:12:28Z", - "error_codes": [ - 7000222 - ], - "timestamp": "2024-12-06 15:12:28Z", - "trace_id": "c3adced2-471d-4138-9692-4ba231341200", - "correlation_id": "1a320789-718b-47b1-b3a9-67e679abfaa2", - "error_uri": "https://login.microsoftonline.com/error?code=7000222" - } - } + "duration": 212, + "state": "passed", + "speed": "slow" }, { "type": "test", - "title": "MUST successfully issue a credential.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", + "title": "\"credential.type\" items MUST be strings", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -8325,32 +8418,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", "ctx": null, - "_testId": "urn:uuid:6c926b49-9d05-4978-9746-269192b1ad13", + "_testId": "urn:uuid:a6e63692-9380-40cf-8632-70f84ab441df", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Gen Digital", - "rowId": "MUST successfully issue a credential." + "columnId": "Trential", + "rowId": "\"credential.type\" items MUST be strings" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 16701, + "_idleStart": 33957, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 412, + "duration": 851, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "MUST successfully issue a credential.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", + "title": "credential MUST have property \"issuer\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -8360,32 +8453,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", "ctx": null, - "_testId": "urn:uuid:d1fa197d-2ff8-4df4-9f55-e660b84a9bb8", + "_testId": "urn:uuid:c6216527-11c4-409f-adc3-d458afe6c83d", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "LearnCard", - "rowId": "MUST successfully issue a credential." + "columnId": "Trential", + "rowId": "credential MUST have property \"issuer\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17944, + "_idleStart": 34809, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 201, + "duration": 213, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "MUST successfully issue a credential.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", + "title": "\"credential.issuer\" MUST be a string or an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -8395,142 +8488,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", "ctx": null, - "_testId": "urn:uuid:179a855e-8125-423f-96f7-16a1205c02e4", + "_testId": "urn:uuid:65d385ce-ec3d-4151-b1f8-5e59a2f8bac9", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Mavennet", - "rowId": "MUST successfully issue a credential." + "columnId": "Trential", + "rowId": "\"credential.issuer\" MUST be a string or an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 19068, + "_idleStart": 35022, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 875, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected no error, got credential.validFrom must be a valid ISO 8601 date string,credential.validFrom should not be empty: expected HTTPError { message: [ …(2) ], …(6) } to not exist", - "showDiff": false, - "actual": { - "response": {}, - "request": {}, - "options": { - "credentials": "same-origin", - "headers": {}, - "body": "{\"credential\":{\"@context\":[\"https://www.w3.org/2018/credentials/v1\"],\"type\":[\"VerifiableCredential\"],\"credentialSubject\":{\"id\":\"did:key:z6MkhTNL7i2etLerDK8Acz5t528giE5KA4p75T6ka1E1D74r\"},\"issuanceDate\":\"2024-12-06T15:12:32Z\",\"id\":\"urn:uuid:26364ea5-d6bd-4037-acb8-ef3da140ca5b\",\"issuer\":\"did:key:z6MkfFjyzk5CKMdnLacqay3kLMMaZEvKr8yxhks2HezmF4X3\"},\"options\":{\"type\":\"Ed25519Signature2018\"}}", - "method": "POST", - "json": { - "credential": { - "@context": [ - "https://www.w3.org/2018/credentials/v1" - ], - "type": [ - "VerifiableCredential" - ], - "credentialSubject": { - "id": "did:key:z6MkhTNL7i2etLerDK8Acz5t528giE5KA4p75T6ka1E1D74r" - }, - "issuanceDate": "2024-12-06T15:12:32Z", - "id": "urn:uuid:26364ea5-d6bd-4037-acb8-ef3da140ca5b", - "issuer": "did:key:z6MkfFjyzk5CKMdnLacqay3kLMMaZEvKr8yxhks2HezmF4X3" - }, - "options": { - "type": "Ed25519Signature2018" - } - }, - "agent": { - "_events": {}, - "_eventsCount": 2, - "defaultPort": 443, - "protocol": "https:", - "options": { - "rejectUnauthorized": false, - "noDelay": true, - "path": null - }, - "requests": {}, - "sockets": {}, - "freeSockets": {}, - "keepAliveMsecs": 1000, - "keepAlive": false, - "maxSockets": null, - "maxFreeSockets": 256, - "scheduling": "lifo", - "maxTotalSockets": null, - "totalSocketCount": 0, - "maxCachedSessions": 100, - "_sessionCache": { - "map": {}, - "list": [] - } - }, - "hooks": { - "beforeRequest": [], - "beforeRetry": [], - "beforeError": [], - "afterResponse": [] - }, - "prefixUrl": "", - "retry": { - "limit": 2, - "methods": [ - "get", - "put", - "head", - "delete", - "options", - "trace" - ], - "statusCodes": [ - 408, - 413, - 429, - 500, - 502, - 503, - 504 - ], - "afterStatusCodes": [ - 413, - 429, - 503 - ], - "maxRetryAfter": null, - "backoffLimit": null - }, - "throwHttpErrors": true, - "timeout": 10000, - "signal": {}, - "duplex": "half" - }, - "name": "HTTPError", - "requestUrl": "https://api.staging.refiner.neoflow.energy/credentials/issue", - "status": 400, - "data": { - "message": [ - "credential.validFrom must be a valid ISO 8601 date string", - "credential.validFrom should not be empty" - ], - "error": "Bad Request", - "statusCode": 400 - } - }, - "operator": "notStrictEqual", - "stack": "AssertionError: Expected no error, got credential.validFrom must be a valid ISO 8601 date string,credential.validFrom should not be empty: expected HTTPError { message: [ …(2) ], …(6) } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldReturnResult (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:19:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:41:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "duration": 851, + "state": "passed", + "speed": "slow" }, { "type": "test", - "title": "MUST successfully issue a credential.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", + "title": "credential MUST have property \"credentialSubject\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -8540,41 +8523,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", "ctx": null, - "_testId": "urn:uuid:199183fe-54f6-41f6-9950-06d6dc1e420c", + "_testId": "urn:uuid:83242632-cb3c-4e75-9666-713002498fa7", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SecureKey", - "rowId": "MUST successfully issue a credential." + "columnId": "Trential", + "rowId": "credential MUST have property \"credentialSubject\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 21394, + "_idleStart": 35873, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 79, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected no error, got fetch failed: expected TypeError: fetch failed { …(2) } to not exist", - "showDiff": false, - "actual": { - "requestUrl": "https://issuer-vcs.sandbox.trustbloc.dev/vc-issuer-interop-key/credentials/issue" - }, - "operator": "notStrictEqual", - "stack": "AssertionError: Expected no error, got fetch failed: expected TypeError: fetch failed { …(2) } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldReturnResult (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:19:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:41:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "duration": 212, + "state": "passed", + "speed": "slow" }, { "type": "test", - "title": "MUST successfully issue a credential.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", + "title": "\"credential.credentialSubject\" MUST be an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -8584,32 +8558,48 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", "ctx": null, - "_testId": "urn:uuid:63954baf-796f-4e78-9aac-cfa883c1c18c", + "_testId": "urn:uuid:09558b62-b7dd-4500-a8fc-398bf54bc214", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", - "rowId": "MUST successfully issue a credential." + "columnId": "Trential", + "rowId": "\"credential.credentialSubject\" MUST be an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22288, + "_idleStart": 36086, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 129, + "duration": 1061, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "MUST successfully issue a credential.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", + "title": "credential MAY have property \"issuanceDate\"", + "body": "", + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": true, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", + "ctx": null, + "state": "pending" + }, + { + "type": "test", + "title": "credential MAY have property \"expirationDate\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -8619,38 +8609,56 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", "ctx": null, - "_testId": "urn:uuid:065ba075-16bf-4b7e-b9dd-a801fff72a4f", + "_testId": "urn:uuid:22ef5be6-5feb-4478-b385-7319faae502a", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Trinsic", - "rowId": "MUST successfully issue a credential." + "columnId": "Trential", + "rowId": "credential MAY have property \"expirationDate\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 23080, + "_idleStart": 37147, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 818, + "duration": 219, "state": "passed", "speed": "slow" } - ] - }, - { - "id": "Request body MUST have property \"credential\".", - "cells": [ - { - "type": "test", - "title": "Request body MUST have property \"credential\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", - "async": 0, + ], + "root": false, + "pending": false, + "_retries": -1, + "_beforeEach": [], + "_beforeAll": [], + "_afterEach": [], + "_afterAll": [], + "_timeout": 15000, + "_slow": 75, + "_bail": false, + "_onlyTests": [], + "_onlySuites": [], + "delayed": false, + "parent": "RufV3R04HvjutDLotPzra", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "_testId": "urn:uuid:1d40d097-fd44-4409-b61d-2ac28478d0ba" + }, + { + "title": "Trinsic", + "ctx": null, + "suites": [], + "tests": [ + { + "type": "test", + "title": "MUST successfully issue a credential.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", + "async": 0, "sync": true, "_timeout": 15000, "_slow": 75, @@ -8659,38 +8667,27 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "19vf5nnKhcTHOUXbbvxLe", "ctx": null, - "_testId": "urn:uuid:a0046aed-515f-4892-9828-217abc341f43", + "_testId": "urn:uuid:2c24f8d7-77b0-4a37-bf01-84d564438089", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "ACA-py", - "rowId": "Request body MUST have property \"credential\"." + "columnId": "Trinsic", + "rowId": "MUST successfully issue a credential." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 1274, + "_idleStart": 37365, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 76, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected status code 400 or 422.: expected 500 to be one of [ 400, 422 ]", - "showDiff": true, - "actual": 500, - "expected": [ - 400, - 422 - ], - "operator": "deepStrictEqual", - "stack": "AssertionError: Expected status code 400 or 422.: expected 500 to be one of [ 400, 422 ]\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:14:26)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:55:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "duration": 252, + "state": "passed", + "speed": "slow" }, { "type": "test", @@ -8705,32 +8702,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "19vf5nnKhcTHOUXbbvxLe", "ctx": null, - "_testId": "urn:uuid:6be414c2-37c5-432a-b792-3ddbafdaf74a", + "_testId": "urn:uuid:f709335a-3728-4dfd-b70b-924813a2c107", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "apicatalog.com", + "columnId": "Trinsic", "rowId": "Request body MUST have property \"credential\"." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 4748, + "_idleStart": 37618, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 43, + "duration": 29, "state": "passed", - "speed": "medium" + "speed": "fast" }, { "type": "test", - "title": "Request body MUST have property \"credential\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"@context\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -8740,32 +8737,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "19vf5nnKhcTHOUXbbvxLe", "ctx": null, - "_testId": "urn:uuid:297ab179-a4a8-41cd-814b-f7a239c17c2c", + "_testId": "urn:uuid:33f79e43-b5aa-40fc-bb69-3ff54ca7fd9c", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Danube Tech", - "rowId": "Request body MUST have property \"credential\"." + "columnId": "Trinsic", + "rowId": "credential MUST have property \"@context\"." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 6606, + "_idleStart": 37647, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 108, + "duration": 29, "state": "passed", - "speed": "slow" + "speed": "fast" }, { "type": "test", - "title": "Request body MUST have property \"credential\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential \"@context\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -8775,32 +8772,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "19vf5nnKhcTHOUXbbvxLe", "ctx": null, - "_testId": "urn:uuid:a8b584e9-e8de-4d60-8b53-60a0fe9373dc", + "_testId": "urn:uuid:5c6ee989-659d-4706-a8d0-fd4b4f335b67", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Digital Bazaar", - "rowId": "Request body MUST have property \"credential\"." + "columnId": "Trinsic", + "rowId": "credential \"@context\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 9997, + "_idleStart": 37677, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 47, + "duration": 26, "state": "passed", - "speed": "medium" + "speed": "fast" }, { "type": "test", - "title": "Request body MUST have property \"credential\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential \"@context\" items MUST be strings.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -8810,32 +8807,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "19vf5nnKhcTHOUXbbvxLe", "ctx": null, - "_testId": "urn:uuid:eaa644cf-8bd3-4932-8054-0db06011f6a5", + "_testId": "urn:uuid:6141ae44-d1ec-48a2-af9c-1c33fb30eba3", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Digital Credentials Consortium", - "rowId": "Request body MUST have property \"credential\"." + "columnId": "Trinsic", + "rowId": "credential \"@context\" items MUST be strings." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11273, + "_idleStart": 37704, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 6, + "duration": 170, "state": "passed", - "speed": "fast" + "speed": "slow" }, { "type": "test", - "title": "Request body MUST have property \"credential\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"type\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -8845,32 +8842,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "19vf5nnKhcTHOUXbbvxLe", "ctx": null, - "_testId": "urn:uuid:3c2dc6a3-e851-44b2-bc9b-768f485711b1", + "_testId": "urn:uuid:9729aaac-da5c-40bb-9ade-6732645ae593", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "EWF", - "rowId": "Request body MUST have property \"credential\"." + "columnId": "Trinsic", + "rowId": "credential MUST have property \"type\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 12119, + "_idleStart": 37873, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 89, + "duration": 41, "state": "passed", - "speed": "slow" + "speed": "medium" }, { "type": "test", - "title": "Request body MUST have property \"credential\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "\"credential.type\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -8880,119 +8877,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "19vf5nnKhcTHOUXbbvxLe", "ctx": null, - "_testId": "urn:uuid:c50fd085-3e12-4a02-bab7-1a952ccb34d8", + "_testId": "urn:uuid:2d73d965-0375-4fde-a20d-b1a4e8f3bb69", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "GS1 US", - "rowId": "Request body MUST have property \"credential\"." + "columnId": "Trinsic", + "rowId": "\"credential.type\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 14999, + "_idleStart": 37915, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 154, - "state": "failed", - "err": { - "response": {}, - "request": {}, - "options": { - "credentials": "same-origin", - "headers": {}, - "body": {}, - "method": "POST", - "agent": { - "_events": {}, - "_eventsCount": 2, - "defaultPort": 443, - "protocol": "https:", - "options": { - "rejectUnauthorized": false, - "noDelay": true, - "path": null - }, - "requests": {}, - "sockets": {}, - "freeSockets": {}, - "keepAliveMsecs": 1000, - "keepAlive": false, - "maxSockets": null, - "maxFreeSockets": 256, - "scheduling": "lifo", - "maxTotalSockets": null, - "totalSocketCount": 0, - "maxCachedSessions": 100, - "_sessionCache": { - "map": {}, - "list": [] - } - }, - "hooks": { - "beforeRequest": [], - "beforeRetry": [], - "beforeError": [], - "afterResponse": [] - }, - "prefixUrl": "", - "retry": { - "limit": 2, - "methods": [ - "get", - "put", - "head", - "delete", - "options", - "trace" - ], - "statusCodes": [ - 408, - 413, - 429, - 500, - 502, - 503, - 504 - ], - "afterStatusCodes": [ - 413, - 429, - 503 - ], - "maxRetryAfter": null, - "backoffLimit": null - }, - "throwHttpErrors": true, - "timeout": 10000, - "signal": {}, - "duplex": "half" - }, - "name": "HTTPError", - "requestUrl": "https://login.microsoftonline.com/e5e65807-3d2a-4f67-a262-72f255868da0/oauth2/v2.0/token", - "status": 401, - "data": { - "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: f6e00c11-d4ea-43b6-9106-bc592e171300 Correlation ID: cb564179-268e-460c-a817-82105a8cffc6 Timestamp: 2024-12-06 15:12:28Z", - "error_codes": [ - 7000222 - ], - "timestamp": "2024-12-06 15:12:28Z", - "trace_id": "f6e00c11-d4ea-43b6-9106-bc592e171300", - "correlation_id": "cb564179-268e-460c-a817-82105a8cffc6", - "error_uri": "https://login.microsoftonline.com/error?code=7000222" - } - } + "duration": 34, + "state": "passed", + "speed": "fast" }, { "type": "test", - "title": "Request body MUST have property \"credential\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "\"credential.type\" items MUST be strings", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -9002,32 +8912,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "19vf5nnKhcTHOUXbbvxLe", "ctx": null, - "_testId": "urn:uuid:5c927acf-05ec-4cda-bc20-fc8a47b06563", + "_testId": "urn:uuid:65350633-22d3-4d9f-92bc-b76c6050ebed", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Gen Digital", - "rowId": "Request body MUST have property \"credential\"." + "columnId": "Trinsic", + "rowId": "\"credential.type\" items MUST be strings" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17113, + "_idleStart": 37949, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 40, + "duration": 105, "state": "passed", - "speed": "medium" + "speed": "slow" }, { "type": "test", - "title": "Request body MUST have property \"credential\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"issuer\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -9037,32 +8947,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "19vf5nnKhcTHOUXbbvxLe", "ctx": null, - "_testId": "urn:uuid:8658cf64-809c-41b8-9260-3628e1728a6d", + "_testId": "urn:uuid:3024b974-fa0a-4fe1-95f6-8ff4eb54ab90", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "LearnCard", - "rowId": "Request body MUST have property \"credential\"." + "columnId": "Trinsic", + "rowId": "credential MUST have property \"issuer\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 18145, + "_idleStart": 38054, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 34, + "duration": 29, "state": "passed", "speed": "fast" }, { "type": "test", - "title": "Request body MUST have property \"credential\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "\"credential.issuer\" MUST be a string or an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -9072,32 +8982,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "parent": "19vf5nnKhcTHOUXbbvxLe", "ctx": null, - "_testId": "urn:uuid:78a331ea-bf1b-4c43-934c-52be5df8cb0f", + "_testId": "urn:uuid:0ef4a5af-99b4-4e4e-a558-44fb5bf4a68d", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Mavennet", - "rowId": "Request body MUST have property \"credential\"." + "columnId": "Trinsic", + "rowId": "\"credential.issuer\" MUST be a string or an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 19944, + "_idleStart": 38083, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 183, + "duration": 114, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "Request body MUST have property \"credential\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"credentialSubject\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -9107,38 +9017,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "19vf5nnKhcTHOUXbbvxLe", "ctx": null, - "_testId": "urn:uuid:ca54b914-7220-4918-9dcd-03eb606739d5", + "_testId": "urn:uuid:c01349e1-0a75-41b4-93c8-9f419d7f6ca4", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SecureKey", - "rowId": "Request body MUST have property \"credential\"." + "columnId": "Trinsic", + "rowId": "credential MUST have property \"credentialSubject\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 21474, + "_idleStart": 38198, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 73, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected an HTTP error response code.: expected undefined to exist", - "showDiff": false, - "operator": "strictEqual", - "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:55:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "duration": 34, + "state": "passed", + "speed": "fast" }, { "type": "test", - "title": "Request body MUST have property \"credential\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "\"credential.credentialSubject\" MUST be an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -9148,32 +9052,48 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "parent": "19vf5nnKhcTHOUXbbvxLe", "ctx": null, - "_testId": "urn:uuid:88cf8896-a8a1-46ce-955b-617431dc4f7b", + "_testId": "urn:uuid:1eb2ccdc-9e1d-419d-86fa-8b6febad95d2", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", - "rowId": "Request body MUST have property \"credential\"." + "columnId": "Trinsic", + "rowId": "\"credential.credentialSubject\" MUST be an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22418, + "_idleStart": 38233, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 22, + "duration": 125, "state": "passed", - "speed": "fast" + "speed": "slow" }, { "type": "test", - "title": "Request body MUST have property \"credential\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MAY have property \"issuanceDate\"", + "body": "", + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": true, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "19vf5nnKhcTHOUXbbvxLe", + "ctx": null, + "state": "pending" + }, + { + "type": "test", + "title": "credential MAY have property \"expirationDate\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -9183,37 +9103,94 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "parent": "19vf5nnKhcTHOUXbbvxLe", "ctx": null, - "_testId": "urn:uuid:16b37d03-d320-4812-94ef-f1f7b4bfd8ff", + "_testId": "urn:uuid:20357161-3f45-4841-a6da-31de5dce0420", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Trinsic", - "rowId": "Request body MUST have property \"credential\"." + "rowId": "credential MAY have property \"expirationDate\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 23898, + "_idleStart": 38358, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 18, + "duration": 40, "state": "passed", - "speed": "fast" + "speed": "medium" } - ] - }, + ], + "root": false, + "pending": false, + "_retries": -1, + "_beforeEach": [], + "_beforeAll": [], + "_afterEach": [], + "_afterAll": [], + "_timeout": 15000, + "_slow": 75, + "_bail": false, + "_onlyTests": [], + "_onlySuites": [], + "delayed": false, + "parent": "RufV3R04HvjutDLotPzra", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "_testId": "urn:uuid:d1878f0d-55e9-48cf-9da1-bd38b89378ca" + } + ], + "root": false, + "pending": false, + "_retries": -1, + "_beforeEach": [], + "_beforeAll": [], + "_afterEach": [], + "_afterAll": [], + "_timeout": 15000, + "_slow": 75, + "_bail": false, + "_onlyTests": [], + "_onlySuites": [], + "delayed": false, + "parent": "e6mzBHiRUU5k0qtKIW-hd", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "summary": {}, + "matrix": true, + "report": true, + "rowLabel": "Test Name", + "columnLabel": "Issuer", + "reportData": [], + "_testId": "urn:uuid:83c9a070-5fd3-4d78-9986-c5c2dcc7b1b4", + "columns": [ + "ACA-py", + "apicatalog.com", + "Danube Tech", + "Digital Bazaar", + "Digital Credentials Consortium", + "EWF", + "GS1 US", + "Gen Digital", + "LearnCard", + "Mavennet", + "Procivis One Core", + "SecureKey", + "SpruceID", + "Trential", + "Trinsic" + ], + "rows": [ { - "id": "credential MUST have property \"@context\".", + "id": "MUST successfully issue a credential.", "cells": [ { "type": "test", - "title": "credential MUST have property \"@context\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "MUST successfully issue a credential.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -9223,32 +9200,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "7r5GdTOboJDTtendLaUie", "ctx": null, - "_testId": "urn:uuid:bbc25d06-cd62-44ec-810a-ad4b5c184a34", + "_testId": "urn:uuid:951ee26e-9e7e-497a-bfc0-4073cbeee1be", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "ACA-py", - "rowId": "credential MUST have property \"@context\"." + "rowId": "MUST successfully issue a credential." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 1353, + "_idleStart": 300, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 126, + "duration": 781, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "credential MUST have property \"@context\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "MUST successfully issue a credential.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -9258,32 +9235,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "OGy1YBvexRzvm4E4rogkf", "ctx": null, - "_testId": "urn:uuid:55a13bc4-300e-4a9b-bcf9-2763c4284e9c", + "_testId": "urn:uuid:eee27d59-d76b-41f7-88dd-ae111af9bd2a", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "apicatalog.com", - "rowId": "credential MUST have property \"@context\"." + "rowId": "MUST successfully issue a credential." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 4791, + "_idleStart": 3380, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 42, + "duration": 4854, "state": "passed", - "speed": "medium" + "speed": "slow" }, { "type": "test", - "title": "credential MUST have property \"@context\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "MUST successfully issue a credential.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -9293,32 +9270,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "W4GKczJeEHTLOnDWS6bAa", "ctx": null, - "_testId": "urn:uuid:cf16d108-dc8f-4d8b-b9bc-f7dc6a7b76cf", + "_testId": "urn:uuid:95d73744-564f-491c-8931-89ff63c08046", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Danube Tech", - "rowId": "credential MUST have property \"@context\"." + "rowId": "MUST successfully issue a credential." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 6715, + "_idleStart": 9642, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 113, + "duration": 679, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "credential MUST have property \"@context\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "MUST successfully issue a credential.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -9328,32 +9305,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", "ctx": null, - "_testId": "urn:uuid:a1de1c20-ef0f-4e8c-a78c-3d7145e698ff", + "_testId": "urn:uuid:201ca648-fb14-46d4-a6e2-cf2622a9c9af", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Digital Bazaar", - "rowId": "credential MUST have property \"@context\"." + "rowId": "MUST successfully issue a credential." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 10044, + "_idleStart": 13223, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 31, + "duration": 662, "state": "passed", - "speed": "fast" + "speed": "slow" }, { "type": "test", - "title": "credential MUST have property \"@context\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "MUST successfully issue a credential.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -9363,32 +9340,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "9VXOGVr_lsKA13N3NMHmU", "ctx": null, - "_testId": "urn:uuid:ef4b8f69-fcc4-4ded-8bee-9f1b54309643", + "_testId": "urn:uuid:c7579176-d281-4890-8978-be317985ff93", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Digital Credentials Consortium", - "rowId": "credential MUST have property \"@context\"." + "rowId": "MUST successfully issue a credential." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11279, + "_idleStart": 15277, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 5, + "duration": 229, "state": "passed", - "speed": "fast" + "speed": "slow" }, { "type": "test", - "title": "credential MUST have property \"@context\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "MUST successfully issue a credential.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -9398,32 +9375,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", "ctx": null, - "_testId": "urn:uuid:b0e17b1b-9632-4858-89f9-e78c5a7f1807", + "_testId": "urn:uuid:0f74ddd6-e778-42e4-9495-ee04661bba37", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "EWF", - "rowId": "credential MUST have property \"@context\"." + "rowId": "MUST successfully issue a credential." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 12209, + "_idleStart": 15958, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 88, + "duration": 559, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "credential MUST have property \"@context\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "MUST successfully issue a credential.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -9433,25 +9410,25 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "D6-GkpPGTPL0wawtrZGDq", "ctx": null, - "_testId": "urn:uuid:3e8a79e9-ab29-459a-9131-130919a9675e", + "_testId": "urn:uuid:04cdeb96-4987-4662-b27b-5946a8bfa807", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "GS1 US", - "rowId": "credential MUST have property \"@context\"." + "rowId": "MUST successfully issue a credential." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 15154, + "_idleStart": 19009, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 146, + "duration": 133, "state": "failed", "err": { "response": {}, @@ -9531,21 +9508,21 @@ "status": 401, "data": { "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: c74e07a5-6e62-4776-ad28-a99870060f00 Correlation ID: 562b0983-45b8-4ca9-b205-2773c501611e Timestamp: 2024-12-06 15:12:28Z", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: a91b6331-6a1c-4fcc-8bb4-ff0be98d1600 Correlation ID: cf7cf8e1-ec9c-48a0-867e-1194c9f297e5 Timestamp: 2024-12-06 18:26:09Z", "error_codes": [ 7000222 ], - "timestamp": "2024-12-06 15:12:28Z", - "trace_id": "c74e07a5-6e62-4776-ad28-a99870060f00", - "correlation_id": "562b0983-45b8-4ca9-b205-2773c501611e", + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "a91b6331-6a1c-4fcc-8bb4-ff0be98d1600", + "correlation_id": "cf7cf8e1-ec9c-48a0-867e-1194c9f297e5", "error_uri": "https://login.microsoftonline.com/error?code=7000222" } } }, { "type": "test", - "title": "credential MUST have property \"@context\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "MUST successfully issue a credential.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -9555,32 +9532,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "L0KR3rmuFcVxuUSUzaji1", "ctx": null, - "_testId": "urn:uuid:2eec64cf-00fb-4d7c-bbee-99bab946fa45", + "_testId": "urn:uuid:19524973-1781-4631-815c-8270f6fec498", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Gen Digital", - "rowId": "credential MUST have property \"@context\"." + "rowId": "MUST successfully issue a credential." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17152, + "_idleStart": 20050, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 29, + "duration": 512, "state": "passed", - "speed": "fast" + "speed": "slow" }, { "type": "test", - "title": "credential MUST have property \"@context\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "MUST successfully issue a credential.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -9590,67 +9567,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "P9uyHnIzAqYIng5wxWLft", "ctx": null, - "_testId": "urn:uuid:e68125c9-2151-48dd-93d6-afa765edc70b", + "_testId": "urn:uuid:02f328c2-96c6-40af-891d-6a336a7765a6", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "LearnCard", - "rowId": "credential MUST have property \"@context\"." - }, - "timer": { - "_idleTimeout": -1, - "_idlePrev": null, - "_idleNext": null, - "_idleStart": 18179, - "_onTimeout": null, - "_repeat": null, - "_destroyed": true - }, - "duration": 25, - "state": "passed", - "speed": "fast" - }, - { - "type": "test", - "title": "credential MUST have property \"@context\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", - "async": 0, - "sync": true, - "_timeout": 15000, - "_slow": 75, - "_retries": -1, - "timedOut": false, - "_currentRetry": 0, - "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", - "ctx": null, - "_testId": "urn:uuid:687b7aa5-fba0-40d0-8a6c-5f9b238ed1d3", - "_events": {}, - "_eventsCount": 1, - "cell": { - "columnId": "Mavennet", - "rowId": "credential MUST have property \"@context\"." + "rowId": "MUST successfully issue a credential." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 20127, + "_idleStart": 21502, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 156, + "duration": 230, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "credential MUST have property \"@context\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "MUST successfully issue a credential.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -9660,113 +9602,2942 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "38LvnuvLSA8PqdST5wKb8", "ctx": null, - "_testId": "urn:uuid:f6350aa8-58b8-49b8-886a-e55e01761963", + "_testId": "urn:uuid:5be4b8e2-a491-4990-a6ff-a5c7bb886933", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SecureKey", - "rowId": "credential MUST have property \"@context\"." + "columnId": "Mavennet", + "rowId": "MUST successfully issue a credential." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 21546, + "_idleStart": 22963, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 63, + "duration": 645, "state": "failed", "err": { "name": "AssertionError", - "message": "Expected an HTTP error response code.: expected undefined to exist", + "message": "Expected no error, got credential.validFrom must be a valid ISO 8601 date string,credential.validFrom should not be empty: expected HTTPError { message: [ …(2) ], …(6) } to not exist", "showDiff": false, - "operator": "strictEqual", - "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:65:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } - }, - { - "type": "test", - "title": "credential MUST have property \"@context\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", - "async": 0, - "sync": true, - "_timeout": 15000, - "_slow": 75, - "_retries": -1, - "timedOut": false, - "_currentRetry": 0, - "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", - "ctx": null, - "_testId": "urn:uuid:24903d17-f6f0-4c1a-b236-7b70504d2250", - "_events": {}, - "_eventsCount": 1, - "cell": { - "columnId": "SpruceID", - "rowId": "credential MUST have property \"@context\"." - }, - "timer": { - "_idleTimeout": -1, - "_idlePrev": null, - "_idleNext": null, - "_idleStart": 22440, - "_onTimeout": null, - "_repeat": null, - "_destroyed": true - }, - "duration": 25, - "state": "passed", - "speed": "fast" - }, - { - "type": "test", - "title": "credential MUST have property \"@context\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", - "async": 0, - "sync": true, - "_timeout": 15000, - "_slow": 75, - "_retries": -1, - "timedOut": false, - "_currentRetry": 0, - "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", - "ctx": null, - "_testId": "urn:uuid:a5305e55-65ab-437a-a0d2-d909e53d1608", - "_events": {}, - "_eventsCount": 1, - "cell": { - "columnId": "Trinsic", - "rowId": "credential MUST have property \"@context\"." - }, - "timer": { - "_idleTimeout": -1, - "_idlePrev": null, - "_idleNext": null, - "_idleStart": 23916, - "_onTimeout": null, - "_repeat": null, - "_destroyed": true - }, - "duration": 19, - "state": "passed", + "actual": { + "response": {}, + "request": {}, + "options": { + "credentials": "same-origin", + "headers": {}, + "body": "{\"credential\":{\"@context\":[\"https://www.w3.org/2018/credentials/v1\"],\"type\":[\"VerifiableCredential\"],\"credentialSubject\":{\"id\":\"did:key:z6MkhTNL7i2etLerDK8Acz5t528giE5KA4p75T6ka1E1D74r\"},\"issuanceDate\":\"2024-12-06T18:26:12Z\",\"id\":\"urn:uuid:f1df6f21-ca33-4b33-a458-5d517b66fe3a\",\"issuer\":\"did:key:z6MkfFjyzk5CKMdnLacqay3kLMMaZEvKr8yxhks2HezmF4X3\"},\"options\":{\"type\":\"Ed25519Signature2018\"}}", + "method": "POST", + "json": { + "credential": { + "@context": [ + "https://www.w3.org/2018/credentials/v1" + ], + "type": [ + "VerifiableCredential" + ], + "credentialSubject": { + "id": "did:key:z6MkhTNL7i2etLerDK8Acz5t528giE5KA4p75T6ka1E1D74r" + }, + "issuanceDate": "2024-12-06T18:26:12Z", + "id": "urn:uuid:f1df6f21-ca33-4b33-a458-5d517b66fe3a", + "issuer": "did:key:z6MkfFjyzk5CKMdnLacqay3kLMMaZEvKr8yxhks2HezmF4X3" + }, + "options": { + "type": "Ed25519Signature2018" + } + }, + "agent": { + "_events": {}, + "_eventsCount": 2, + "defaultPort": 443, + "protocol": "https:", + "options": { + "rejectUnauthorized": false, + "noDelay": true, + "path": null + }, + "requests": {}, + "sockets": {}, + "freeSockets": {}, + "keepAliveMsecs": 1000, + "keepAlive": false, + "maxSockets": null, + "maxFreeSockets": 256, + "scheduling": "lifo", + "maxTotalSockets": null, + "totalSocketCount": 0, + "maxCachedSessions": 100, + "_sessionCache": { + "map": {}, + "list": [] + } + }, + "hooks": { + "beforeRequest": [], + "beforeRetry": [], + "beforeError": [], + "afterResponse": [] + }, + "prefixUrl": "", + "retry": { + "limit": 2, + "methods": [ + "get", + "put", + "head", + "delete", + "options", + "trace" + ], + "statusCodes": [ + 408, + 413, + 429, + 500, + 502, + 503, + 504 + ], + "afterStatusCodes": [ + 413, + 429, + 503 + ], + "maxRetryAfter": null, + "backoffLimit": null + }, + "throwHttpErrors": true, + "timeout": 10000, + "signal": {}, + "duplex": "half" + }, + "name": "HTTPError", + "requestUrl": "https://api.staging.refiner.neoflow.energy/credentials/issue", + "status": 400, + "data": { + "message": [ + "credential.validFrom must be a valid ISO 8601 date string", + "credential.validFrom should not be empty" + ], + "error": "Bad Request", + "statusCode": 400 + } + }, + "operator": "notStrictEqual", + "stack": "AssertionError: Expected no error, got credential.validFrom must be a valid ISO 8601 date string,credential.validFrom should not be empty: expected HTTPError { message: [ …(2) ], …(6) } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldReturnResult (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:19:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:41:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } + }, + { + "type": "test", + "title": "MUST successfully issue a credential.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "NrRUPGI5Q0vLViuZ7nae2", + "ctx": null, + "_testId": "urn:uuid:7b203ceb-2028-477c-ac7e-59aac3b451bc", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Procivis One Core", + "rowId": "MUST successfully issue a credential." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 25193, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 386, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected no error, got Request failed with status code 400 Bad Request: expected HTTPError: Request failed with status cod… { …(6) } to not exist", + "showDiff": false, + "actual": { + "response": {}, + "request": {}, + "options": { + "credentials": "same-origin", + "headers": {}, + "body": "{\"credential\":{\"@context\":[\"https://www.w3.org/2018/credentials/v1\"],\"type\":[\"VerifiableCredential\"],\"credentialSubject\":{\"id\":\"did:key:z6MkhTNL7i2etLerDK8Acz5t528giE5KA4p75T6ka1E1D74r\"},\"issuanceDate\":\"2024-12-06T18:26:15Z\",\"id\":\"urn:uuid:795fba27-3d41-461f-a9e6-c16a7612ed19\",\"issuer\":\"did:key:zDnaebiWvYW4sEFcncp6sLRmGPio1tVaXSDBwnYELtyvwpnYE\"}}", + "method": "POST", + "json": { + "credential": { + "@context": [ + "https://www.w3.org/2018/credentials/v1" + ], + "type": [ + "VerifiableCredential" + ], + "credentialSubject": { + "id": "did:key:z6MkhTNL7i2etLerDK8Acz5t528giE5KA4p75T6ka1E1D74r" + }, + "issuanceDate": "2024-12-06T18:26:15Z", + "id": "urn:uuid:795fba27-3d41-461f-a9e6-c16a7612ed19", + "issuer": "did:key:zDnaebiWvYW4sEFcncp6sLRmGPio1tVaXSDBwnYELtyvwpnYE" + } + }, + "agent": { + "_events": {}, + "_eventsCount": 2, + "defaultPort": 443, + "protocol": "https:", + "options": { + "rejectUnauthorized": false, + "noDelay": true, + "path": null + }, + "requests": {}, + "sockets": {}, + "freeSockets": {}, + "keepAliveMsecs": 1000, + "keepAlive": false, + "maxSockets": null, + "maxFreeSockets": 256, + "scheduling": "lifo", + "maxTotalSockets": null, + "totalSocketCount": 0, + "maxCachedSessions": 100, + "_sessionCache": { + "map": {}, + "list": [] + } + }, + "hooks": { + "beforeRequest": [], + "beforeRetry": [], + "beforeError": [], + "afterResponse": [] + }, + "prefixUrl": "", + "retry": { + "limit": 2, + "methods": [ + "get", + "put", + "head", + "delete", + "options", + "trace" + ], + "statusCodes": [ + 408, + 413, + 429, + 500, + 502, + 503, + 504 + ], + "afterStatusCodes": [ + 413, + 429, + 503 + ], + "maxRetryAfter": null, + "backoffLimit": null + }, + "throwHttpErrors": true, + "timeout": 10000, + "signal": {}, + "duplex": "half" + }, + "name": "HTTPError", + "requestUrl": "https://canivc.core.dev.procivis-one.com/vc-api/credentials/issue", + "status": 400, + "data": { + "errors": [ + { + "status": 400, + "title": "Failed to deserialize the JSON body into the target type", + "detail": null + } + ] + } + }, + "operator": "notStrictEqual", + "stack": "AssertionError: Expected no error, got Request failed with status code 400 Bad Request: expected HTTPError: Request failed with status cod… { …(6) } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldReturnResult (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:19:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:41:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } + }, + { + "type": "test", + "title": "MUST successfully issue a credential.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "CIVhSrWzaq1ScrdxZdxGd", + "ctx": null, + "_testId": "urn:uuid:a8a5386f-7252-4001-a39e-1652e8af5d7d", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "SecureKey", + "rowId": "MUST successfully issue a credential." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 28326, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 77, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected no error, got fetch failed: expected TypeError: fetch failed { …(2) } to not exist", + "showDiff": false, + "actual": { + "requestUrl": "https://issuer-vcs.sandbox.trustbloc.dev/vc-issuer-interop-key/credentials/issue" + }, + "operator": "notStrictEqual", + "stack": "AssertionError: Expected no error, got fetch failed: expected TypeError: fetch failed { …(2) } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldReturnResult (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:19:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:41:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } + }, + { + "type": "test", + "title": "MUST successfully issue a credential.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "XQPIk5v_0YiAZdM9T9S22", + "ctx": null, + "_testId": "urn:uuid:d2e1b48d-d854-46ae-940c-9bb2e1b6feb8", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "SpruceID", + "rowId": "MUST successfully issue a credential." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 29369, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 126, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "MUST successfully issue a credential.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", + "ctx": null, + "_testId": "urn:uuid:c327b27f-b7e8-42b0-8445-dd60fa287338", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Trential", + "rowId": "MUST successfully issue a credential." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 30397, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 964, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "MUST successfully issue a credential.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n should.exist(issuedVc, 'Expected result to have data.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "19vf5nnKhcTHOUXbbvxLe", + "ctx": null, + "_testId": "urn:uuid:2c24f8d7-77b0-4a37-bf01-84d564438089", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Trinsic", + "rowId": "MUST successfully issue a credential." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 37365, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 252, + "state": "passed", + "speed": "slow" + } + ] + }, + { + "id": "Request body MUST have property \"credential\".", + "cells": [ + { + "type": "test", + "title": "Request body MUST have property \"credential\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "7r5GdTOboJDTtendLaUie", + "ctx": null, + "_testId": "urn:uuid:817dff0f-e8a7-4773-aa39-4010e9f949f9", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "ACA-py", + "rowId": "Request body MUST have property \"credential\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 1081, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 83, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected status code 400 or 422.: expected 500 to be one of [ 400, 422 ]", + "showDiff": true, + "actual": 500, + "expected": [ + 400, + 422 + ], + "operator": "deepStrictEqual", + "stack": "AssertionError: Expected status code 400 or 422.: expected 500 to be one of [ 400, 422 ]\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:14:26)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:55:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } + }, + { + "type": "test", + "title": "Request body MUST have property \"credential\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "OGy1YBvexRzvm4E4rogkf", + "ctx": null, + "_testId": "urn:uuid:786ee349-7da7-4ec6-992c-000ff0ebfb1f", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "apicatalog.com", + "rowId": "Request body MUST have property \"credential\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 8234, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 49, + "state": "passed", + "speed": "medium" + }, + { + "type": "test", + "title": "Request body MUST have property \"credential\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "W4GKczJeEHTLOnDWS6bAa", + "ctx": null, + "_testId": "urn:uuid:1ef18fb6-3b14-49db-bb10-ae3fd302673c", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Danube Tech", + "rowId": "Request body MUST have property \"credential\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 10321, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 109, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "Request body MUST have property \"credential\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", + "ctx": null, + "_testId": "urn:uuid:5ea9f53c-1831-4611-83e1-ffc17f76bde7", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Digital Bazaar", + "rowId": "Request body MUST have property \"credential\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 13884, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 39, + "state": "passed", + "speed": "medium" + }, + { + "type": "test", + "title": "Request body MUST have property \"credential\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "9VXOGVr_lsKA13N3NMHmU", + "ctx": null, + "_testId": "urn:uuid:1220e092-acc8-45a3-aac5-33a7bb89264f", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Digital Credentials Consortium", + "rowId": "Request body MUST have property \"credential\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 15506, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 9, + "state": "passed", + "speed": "fast" + }, + { + "type": "test", + "title": "Request body MUST have property \"credential\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", + "ctx": null, + "_testId": "urn:uuid:1f3fe9b2-d49b-4000-80ed-e5d8acdb60c7", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "EWF", + "rowId": "Request body MUST have property \"credential\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 16518, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 101, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "Request body MUST have property \"credential\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "D6-GkpPGTPL0wawtrZGDq", + "ctx": null, + "_testId": "urn:uuid:d74e5d30-43a2-4814-869a-e3fb64aa7f58", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "GS1 US", + "rowId": "Request body MUST have property \"credential\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 19143, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 76, + "state": "failed", + "err": { + "response": {}, + "request": {}, + "options": { + "credentials": "same-origin", + "headers": {}, + "body": {}, + "method": "POST", + "agent": { + "_events": {}, + "_eventsCount": 2, + "defaultPort": 443, + "protocol": "https:", + "options": { + "rejectUnauthorized": false, + "noDelay": true, + "path": null + }, + "requests": {}, + "sockets": {}, + "freeSockets": {}, + "keepAliveMsecs": 1000, + "keepAlive": false, + "maxSockets": null, + "maxFreeSockets": 256, + "scheduling": "lifo", + "maxTotalSockets": null, + "totalSocketCount": 0, + "maxCachedSessions": 100, + "_sessionCache": { + "map": {}, + "list": [] + } + }, + "hooks": { + "beforeRequest": [], + "beforeRetry": [], + "beforeError": [], + "afterResponse": [] + }, + "prefixUrl": "", + "retry": { + "limit": 2, + "methods": [ + "get", + "put", + "head", + "delete", + "options", + "trace" + ], + "statusCodes": [ + 408, + 413, + 429, + 500, + 502, + 503, + 504 + ], + "afterStatusCodes": [ + 413, + 429, + 503 + ], + "maxRetryAfter": null, + "backoffLimit": null + }, + "throwHttpErrors": true, + "timeout": 10000, + "signal": {}, + "duplex": "half" + }, + "name": "HTTPError", + "requestUrl": "https://login.microsoftonline.com/e5e65807-3d2a-4f67-a262-72f255868da0/oauth2/v2.0/token", + "status": 401, + "data": { + "error": "invalid_client", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: f16f4a45-da33-439b-ab89-7e9f56f61700 Correlation ID: c278b461-29fa-469b-a79c-9c189dd2b586 Timestamp: 2024-12-06 18:26:09Z", + "error_codes": [ + 7000222 + ], + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "f16f4a45-da33-439b-ab89-7e9f56f61700", + "correlation_id": "c278b461-29fa-469b-a79c-9c189dd2b586", + "error_uri": "https://login.microsoftonline.com/error?code=7000222" + } + } + }, + { + "type": "test", + "title": "Request body MUST have property \"credential\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "L0KR3rmuFcVxuUSUzaji1", + "ctx": null, + "_testId": "urn:uuid:5de78e20-3876-48d6-886e-d9e4afa40a9d", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Gen Digital", + "rowId": "Request body MUST have property \"credential\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 20562, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 34, + "state": "passed", + "speed": "fast" + }, + { + "type": "test", + "title": "Request body MUST have property \"credential\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "P9uyHnIzAqYIng5wxWLft", + "ctx": null, + "_testId": "urn:uuid:577a1f6d-62ba-4c80-a06f-171c30c6670f", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "LearnCard", + "rowId": "Request body MUST have property \"credential\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 21732, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 52, + "state": "passed", + "speed": "medium" + }, + { + "type": "test", + "title": "Request body MUST have property \"credential\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "38LvnuvLSA8PqdST5wKb8", + "ctx": null, + "_testId": "urn:uuid:491acda2-1ae5-4f81-a23f-8594aca4424b", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Mavennet", + "rowId": "Request body MUST have property \"credential\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 23611, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 42, + "state": "passed", + "speed": "medium" + }, + { + "type": "test", + "title": "Request body MUST have property \"credential\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "NrRUPGI5Q0vLViuZ7nae2", + "ctx": null, + "_testId": "urn:uuid:49587bbd-8060-4232-afee-4dc5cd621c47", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Procivis One Core", + "rowId": "Request body MUST have property \"credential\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 25581, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 100, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "Request body MUST have property \"credential\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "CIVhSrWzaq1ScrdxZdxGd", + "ctx": null, + "_testId": "urn:uuid:7e83f14d-25e4-4192-82a4-4af710532823", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "SecureKey", + "rowId": "Request body MUST have property \"credential\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 28404, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 72, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected an HTTP error response code.: expected undefined to exist", + "showDiff": false, + "operator": "strictEqual", + "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:55:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } + }, + { + "type": "test", + "title": "Request body MUST have property \"credential\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "XQPIk5v_0YiAZdM9T9S22", + "ctx": null, + "_testId": "urn:uuid:fb3340a6-2cb6-4e15-a1b8-2e509e09cc9e", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "SpruceID", + "rowId": "Request body MUST have property \"credential\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 29495, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 28, + "state": "passed", + "speed": "fast" + }, + { + "type": "test", + "title": "Request body MUST have property \"credential\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", + "ctx": null, + "_testId": "urn:uuid:eed7d070-15b1-4d2f-aaab-a47a1648f817", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Trential", + "rowId": "Request body MUST have property \"credential\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 31362, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 222, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "Request body MUST have property \"credential\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "19vf5nnKhcTHOUXbbvxLe", + "ctx": null, + "_testId": "urn:uuid:f709335a-3728-4dfd-b70b-924813a2c107", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Trinsic", + "rowId": "Request body MUST have property \"credential\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 37618, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 29, + "state": "passed", + "speed": "fast" + } + ] + }, + { + "id": "credential MUST have property \"@context\".", + "cells": [ + { + "type": "test", + "title": "credential MUST have property \"@context\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "7r5GdTOboJDTtendLaUie", + "ctx": null, + "_testId": "urn:uuid:5deb7e9b-ed27-4230-803f-ac4d8f2f111f", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "ACA-py", + "rowId": "credential MUST have property \"@context\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 1168, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 161, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential MUST have property \"@context\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "OGy1YBvexRzvm4E4rogkf", + "ctx": null, + "_testId": "urn:uuid:047302b5-23ce-4d73-a411-92cb8fdfc0d0", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "apicatalog.com", + "rowId": "credential MUST have property \"@context\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 8284, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 48, + "state": "passed", + "speed": "medium" + }, + { + "type": "test", + "title": "credential MUST have property \"@context\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "W4GKczJeEHTLOnDWS6bAa", + "ctx": null, + "_testId": "urn:uuid:4b824638-97c3-486f-bfd3-b85d34fa0619", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Danube Tech", + "rowId": "credential MUST have property \"@context\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 10430, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 109, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential MUST have property \"@context\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", + "ctx": null, + "_testId": "urn:uuid:f0b467c5-0f9e-43b7-ada9-66519caa7a35", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Digital Bazaar", + "rowId": "credential MUST have property \"@context\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 13924, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 45, + "state": "passed", + "speed": "medium" + }, + { + "type": "test", + "title": "credential MUST have property \"@context\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "9VXOGVr_lsKA13N3NMHmU", + "ctx": null, + "_testId": "urn:uuid:049d3957-7ad0-41cd-8621-69a6dbb383d2", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Digital Credentials Consortium", + "rowId": "credential MUST have property \"@context\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 15516, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 9, + "state": "passed", + "speed": "fast" + }, + { + "type": "test", + "title": "credential MUST have property \"@context\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", + "ctx": null, + "_testId": "urn:uuid:70f3df6a-802d-40cb-8ed3-ffe058d84445", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "EWF", + "rowId": "credential MUST have property \"@context\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 16619, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 104, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential MUST have property \"@context\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "D6-GkpPGTPL0wawtrZGDq", + "ctx": null, + "_testId": "urn:uuid:f55f19c4-3fa0-4722-91d2-f687c6f13999", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "GS1 US", + "rowId": "credential MUST have property \"@context\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 19219, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 101, + "state": "failed", + "err": { + "response": {}, + "request": {}, + "options": { + "credentials": "same-origin", + "headers": {}, + "body": {}, + "method": "POST", + "agent": { + "_events": {}, + "_eventsCount": 2, + "defaultPort": 443, + "protocol": "https:", + "options": { + "rejectUnauthorized": false, + "noDelay": true, + "path": null + }, + "requests": {}, + "sockets": {}, + "freeSockets": {}, + "keepAliveMsecs": 1000, + "keepAlive": false, + "maxSockets": null, + "maxFreeSockets": 256, + "scheduling": "lifo", + "maxTotalSockets": null, + "totalSocketCount": 0, + "maxCachedSessions": 100, + "_sessionCache": { + "map": {}, + "list": [] + } + }, + "hooks": { + "beforeRequest": [], + "beforeRetry": [], + "beforeError": [], + "afterResponse": [] + }, + "prefixUrl": "", + "retry": { + "limit": 2, + "methods": [ + "get", + "put", + "head", + "delete", + "options", + "trace" + ], + "statusCodes": [ + 408, + 413, + 429, + 500, + 502, + 503, + 504 + ], + "afterStatusCodes": [ + 413, + 429, + 503 + ], + "maxRetryAfter": null, + "backoffLimit": null + }, + "throwHttpErrors": true, + "timeout": 10000, + "signal": {}, + "duplex": "half" + }, + "name": "HTTPError", + "requestUrl": "https://login.microsoftonline.com/e5e65807-3d2a-4f67-a262-72f255868da0/oauth2/v2.0/token", + "status": 401, + "data": { + "error": "invalid_client", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: ed7be4d1-c7d1-49d8-970f-1fbd923c2f00 Correlation ID: 809562eb-91d1-40a8-94ae-b4faedbe9bcf Timestamp: 2024-12-06 18:26:09Z", + "error_codes": [ + 7000222 + ], + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "ed7be4d1-c7d1-49d8-970f-1fbd923c2f00", + "correlation_id": "809562eb-91d1-40a8-94ae-b4faedbe9bcf", + "error_uri": "https://login.microsoftonline.com/error?code=7000222" + } + } + }, + { + "type": "test", + "title": "credential MUST have property \"@context\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "L0KR3rmuFcVxuUSUzaji1", + "ctx": null, + "_testId": "urn:uuid:7153c053-b472-48d0-9970-d13a28218e34", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Gen Digital", + "rowId": "credential MUST have property \"@context\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 20596, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 33, + "state": "passed", + "speed": "fast" + }, + { + "type": "test", + "title": "credential MUST have property \"@context\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "P9uyHnIzAqYIng5wxWLft", + "ctx": null, + "_testId": "urn:uuid:81856acf-cfb8-4f67-8c64-bc0962dd3037", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "LearnCard", + "rowId": "credential MUST have property \"@context\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 21785, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 42, + "state": "passed", + "speed": "medium" + }, + { + "type": "test", + "title": "credential MUST have property \"@context\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "38LvnuvLSA8PqdST5wKb8", + "ctx": null, + "_testId": "urn:uuid:cd5634c6-781a-426b-8722-27ab2fac0485", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Mavennet", + "rowId": "credential MUST have property \"@context\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 23653, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 43, + "state": "passed", + "speed": "medium" + }, + { + "type": "test", + "title": "credential MUST have property \"@context\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "NrRUPGI5Q0vLViuZ7nae2", + "ctx": null, + "_testId": "urn:uuid:6bbb8ab0-9a22-430b-9806-5e3731dc0354", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Procivis One Core", + "rowId": "credential MUST have property \"@context\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 25681, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 100, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential MUST have property \"@context\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "CIVhSrWzaq1ScrdxZdxGd", + "ctx": null, + "_testId": "urn:uuid:6dd0f167-1cda-404e-b99b-eaa557838b16", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "SecureKey", + "rowId": "credential MUST have property \"@context\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 28476, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 112, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected an HTTP error response code.: expected undefined to exist", + "showDiff": false, + "operator": "strictEqual", + "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:65:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } + }, + { + "type": "test", + "title": "credential MUST have property \"@context\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "XQPIk5v_0YiAZdM9T9S22", + "ctx": null, + "_testId": "urn:uuid:3c8d5322-70c1-4a5a-a0cc-5ccd9f11e702", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "SpruceID", + "rowId": "credential MUST have property \"@context\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 29524, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 28, + "state": "passed", + "speed": "fast" + }, + { + "type": "test", + "title": "credential MUST have property \"@context\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", + "ctx": null, + "_testId": "urn:uuid:d18116a5-547d-4677-ac72-ea7743309f0b", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Trential", + "rowId": "credential MUST have property \"@context\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 31585, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 221, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential MUST have property \"@context\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "19vf5nnKhcTHOUXbbvxLe", + "ctx": null, + "_testId": "urn:uuid:33f79e43-b5aa-40fc-bb69-3ff54ca7fd9c", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Trinsic", + "rowId": "credential MUST have property \"@context\"." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 37647, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 29, + "state": "passed", + "speed": "fast" + } + ] + }, + { + "id": "credential \"@context\" MUST be an array.", + "cells": [ + { + "type": "test", + "title": "credential \"@context\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "7r5GdTOboJDTtendLaUie", + "ctx": null, + "_testId": "urn:uuid:7f28fe1e-e8e0-4873-8d51-0295ccafa15f", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "ACA-py", + "rowId": "credential \"@context\" MUST be an array." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 1329, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 70, + "state": "passed", + "speed": "medium" + }, + { + "type": "test", + "title": "credential \"@context\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "OGy1YBvexRzvm4E4rogkf", + "ctx": null, + "_testId": "urn:uuid:f1f0e552-0bee-47f2-b2c5-6129912fbbdc", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "apicatalog.com", + "rowId": "credential \"@context\" MUST be an array." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 8332, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 51, + "state": "passed", + "speed": "medium" + }, + { + "type": "test", + "title": "credential \"@context\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "W4GKczJeEHTLOnDWS6bAa", + "ctx": null, + "_testId": "urn:uuid:07b93b8f-f908-4b30-a647-d5af00dfd6fc", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Danube Tech", + "rowId": "credential \"@context\" MUST be an array." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 10539, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 108, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential \"@context\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", + "ctx": null, + "_testId": "urn:uuid:3930c66a-21ea-4a1d-b862-9df309149d16", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Digital Bazaar", + "rowId": "credential \"@context\" MUST be an array." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 13969, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 36, + "state": "passed", + "speed": "fast" + }, + { + "type": "test", + "title": "credential \"@context\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "9VXOGVr_lsKA13N3NMHmU", + "ctx": null, + "_testId": "urn:uuid:9737021a-159d-490a-92ac-8c89e6b43c33", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Digital Credentials Consortium", + "rowId": "credential \"@context\" MUST be an array." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 15524, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 9, + "state": "passed", + "speed": "fast" + }, + { + "type": "test", + "title": "credential \"@context\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", + "ctx": null, + "_testId": "urn:uuid:6f5dcde0-acf6-4756-b0bd-1715e1c8e08d", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "EWF", + "rowId": "credential \"@context\" MUST be an array." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 16722, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 82, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential \"@context\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "D6-GkpPGTPL0wawtrZGDq", + "ctx": null, + "_testId": "urn:uuid:ffc18787-9d98-49de-a505-16f718c1fb34", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "GS1 US", + "rowId": "credential \"@context\" MUST be an array." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 19321, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 73, + "state": "failed", + "err": { + "response": {}, + "request": {}, + "options": { + "credentials": "same-origin", + "headers": {}, + "body": {}, + "method": "POST", + "agent": { + "_events": {}, + "_eventsCount": 2, + "defaultPort": 443, + "protocol": "https:", + "options": { + "rejectUnauthorized": false, + "noDelay": true, + "path": null + }, + "requests": {}, + "sockets": {}, + "freeSockets": {}, + "keepAliveMsecs": 1000, + "keepAlive": false, + "maxSockets": null, + "maxFreeSockets": 256, + "scheduling": "lifo", + "maxTotalSockets": null, + "totalSocketCount": 0, + "maxCachedSessions": 100, + "_sessionCache": { + "map": {}, + "list": [] + } + }, + "hooks": { + "beforeRequest": [], + "beforeRetry": [], + "beforeError": [], + "afterResponse": [] + }, + "prefixUrl": "", + "retry": { + "limit": 2, + "methods": [ + "get", + "put", + "head", + "delete", + "options", + "trace" + ], + "statusCodes": [ + 408, + 413, + 429, + 500, + 502, + 503, + 504 + ], + "afterStatusCodes": [ + 413, + 429, + 503 + ], + "maxRetryAfter": null, + "backoffLimit": null + }, + "throwHttpErrors": true, + "timeout": 10000, + "signal": {}, + "duplex": "half" + }, + "name": "HTTPError", + "requestUrl": "https://login.microsoftonline.com/e5e65807-3d2a-4f67-a262-72f255868da0/oauth2/v2.0/token", + "status": 401, + "data": { + "error": "invalid_client", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: c0ffc7bc-6286-4530-bbbd-c87fd0a41200 Correlation ID: 643e3da2-ef64-47ff-a3d6-c83b5a18de22 Timestamp: 2024-12-06 18:26:09Z", + "error_codes": [ + 7000222 + ], + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "c0ffc7bc-6286-4530-bbbd-c87fd0a41200", + "correlation_id": "643e3da2-ef64-47ff-a3d6-c83b5a18de22", + "error_uri": "https://login.microsoftonline.com/error?code=7000222" + } + } + }, + { + "type": "test", + "title": "credential \"@context\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "L0KR3rmuFcVxuUSUzaji1", + "ctx": null, + "_testId": "urn:uuid:97272496-2cf1-4e37-834f-c5e7d459118a", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Gen Digital", + "rowId": "credential \"@context\" MUST be an array." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 20630, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 40, + "state": "passed", + "speed": "medium" + }, + { + "type": "test", + "title": "credential \"@context\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "P9uyHnIzAqYIng5wxWLft", + "ctx": null, + "_testId": "urn:uuid:5c6a87f4-7e02-458e-ba18-36ed2b4437ba", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "LearnCard", + "rowId": "credential \"@context\" MUST be an array." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 21826, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 44, + "state": "passed", + "speed": "medium" + }, + { + "type": "test", + "title": "credential \"@context\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "38LvnuvLSA8PqdST5wKb8", + "ctx": null, + "_testId": "urn:uuid:cf75f231-edfd-42bb-b6bd-6d068aa3fe2d", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Mavennet", + "rowId": "credential \"@context\" MUST be an array." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 23697, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 44, + "state": "passed", + "speed": "medium" + }, + { + "type": "test", + "title": "credential \"@context\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "NrRUPGI5Q0vLViuZ7nae2", + "ctx": null, + "_testId": "urn:uuid:91dccb2d-8910-42bc-94b0-331e4dd67d27", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Procivis One Core", + "rowId": "credential \"@context\" MUST be an array." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 25781, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 100, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential \"@context\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "CIVhSrWzaq1ScrdxZdxGd", + "ctx": null, + "_testId": "urn:uuid:2ae4dde5-78ae-4a8d-a77c-46f1b632a07e", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "SecureKey", + "rowId": "credential \"@context\" MUST be an array." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 28589, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 110, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected an HTTP error response code.: expected undefined to exist", + "showDiff": false, + "operator": "strictEqual", + "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:75:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } + }, + { + "type": "test", + "title": "credential \"@context\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "XQPIk5v_0YiAZdM9T9S22", + "ctx": null, + "_testId": "urn:uuid:1befe1b9-1e75-4867-9ee9-94c4e3062607", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "SpruceID", + "rowId": "credential \"@context\" MUST be an array." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 29552, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 36, + "state": "passed", + "speed": "fast" + }, + { + "type": "test", + "title": "credential \"@context\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", + "ctx": null, + "_testId": "urn:uuid:ee36cd56-1d53-46aa-9bd2-fab43c63df05", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Trential", + "rowId": "credential \"@context\" MUST be an array." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 31806, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 213, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential \"@context\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "19vf5nnKhcTHOUXbbvxLe", + "ctx": null, + "_testId": "urn:uuid:5c6ee989-659d-4706-a8d0-fd4b4f335b67", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Trinsic", + "rowId": "credential \"@context\" MUST be an array." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 37677, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 26, + "state": "passed", "speed": "fast" } ] }, { - "id": "credential \"@context\" MUST be an array.", + "id": "credential \"@context\" items MUST be strings.", + "cells": [ + { + "type": "test", + "title": "credential \"@context\" items MUST be strings.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "7r5GdTOboJDTtendLaUie", + "ctx": null, + "_testId": "urn:uuid:1bc6c1a4-2e43-41ba-bf49-d95180ef11e5", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "ACA-py", + "rowId": "credential \"@context\" items MUST be strings." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 1399, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 593, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential \"@context\" items MUST be strings.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "OGy1YBvexRzvm4E4rogkf", + "ctx": null, + "_testId": "urn:uuid:7dcaa1e1-af28-432d-a7f7-f6a7502caeff", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "apicatalog.com", + "rowId": "credential \"@context\" items MUST be strings." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 8384, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 227, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential \"@context\" items MUST be strings.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "W4GKczJeEHTLOnDWS6bAa", + "ctx": null, + "_testId": "urn:uuid:c3710621-c3ea-4d01-b566-eb38f3b90a87", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Danube Tech", + "rowId": "credential \"@context\" items MUST be strings." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 10648, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 748, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential \"@context\" items MUST be strings.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", + "ctx": null, + "_testId": "urn:uuid:be639cb9-cb1a-44f2-a546-1ca4d40f56ac", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Digital Bazaar", + "rowId": "credential \"@context\" items MUST be strings." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 14005, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 146, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential \"@context\" items MUST be strings.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "9VXOGVr_lsKA13N3NMHmU", + "ctx": null, + "_testId": "urn:uuid:f0027ee4-24cc-4ac8-aa60-31fd8c5b0269", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Digital Credentials Consortium", + "rowId": "credential \"@context\" items MUST be strings." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 15533, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 260, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential \"@context\" items MUST be strings.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", + "ctx": null, + "_testId": "urn:uuid:c41893f4-1c9e-4fc2-8f6e-1abfcb2a4e44", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "EWF", + "rowId": "credential \"@context\" items MUST be strings." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 16804, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 608, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential \"@context\" items MUST be strings.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "D6-GkpPGTPL0wawtrZGDq", + "ctx": null, + "_testId": "urn:uuid:6a66e9f8-aea2-4521-8b77-3b4c7fe40002", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "GS1 US", + "rowId": "credential \"@context\" items MUST be strings." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 19396, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 63, + "state": "failed", + "err": { + "response": {}, + "request": {}, + "options": { + "credentials": "same-origin", + "headers": {}, + "body": {}, + "method": "POST", + "agent": { + "_events": {}, + "_eventsCount": 2, + "defaultPort": 443, + "protocol": "https:", + "options": { + "rejectUnauthorized": false, + "noDelay": true, + "path": null + }, + "requests": {}, + "sockets": {}, + "freeSockets": {}, + "keepAliveMsecs": 1000, + "keepAlive": false, + "maxSockets": null, + "maxFreeSockets": 256, + "scheduling": "lifo", + "maxTotalSockets": null, + "totalSocketCount": 0, + "maxCachedSessions": 100, + "_sessionCache": { + "map": {}, + "list": [] + } + }, + "hooks": { + "beforeRequest": [], + "beforeRetry": [], + "beforeError": [], + "afterResponse": [] + }, + "prefixUrl": "", + "retry": { + "limit": 2, + "methods": [ + "get", + "put", + "head", + "delete", + "options", + "trace" + ], + "statusCodes": [ + 408, + 413, + 429, + 500, + 502, + 503, + 504 + ], + "afterStatusCodes": [ + 413, + 429, + 503 + ], + "maxRetryAfter": null, + "backoffLimit": null + }, + "throwHttpErrors": true, + "timeout": 10000, + "signal": {}, + "duplex": "half" + }, + "name": "HTTPError", + "requestUrl": "https://login.microsoftonline.com/e5e65807-3d2a-4f67-a262-72f255868da0/oauth2/v2.0/token", + "status": 401, + "data": { + "error": "invalid_client", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: a91b6331-6a1c-4fcc-8bb4-ff0bf78d1600 Correlation ID: 8b0833e8-80ba-48b7-8311-c5fb45088a9d Timestamp: 2024-12-06 18:26:09Z", + "error_codes": [ + 7000222 + ], + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "a91b6331-6a1c-4fcc-8bb4-ff0bf78d1600", + "correlation_id": "8b0833e8-80ba-48b7-8311-c5fb45088a9d", + "error_uri": "https://login.microsoftonline.com/error?code=7000222" + } + } + }, + { + "type": "test", + "title": "credential \"@context\" items MUST be strings.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "L0KR3rmuFcVxuUSUzaji1", + "ctx": null, + "_testId": "urn:uuid:0c9cea64-0cb3-4b76-a29d-bdf1f29294fc", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Gen Digital", + "rowId": "credential \"@context\" items MUST be strings." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 20670, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 300, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential \"@context\" items MUST be strings.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "P9uyHnIzAqYIng5wxWLft", + "ctx": null, + "_testId": "urn:uuid:5365c721-576b-4513-bdac-1377d2d02b38", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "LearnCard", + "rowId": "credential \"@context\" items MUST be strings." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 21871, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 287, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential \"@context\" items MUST be strings.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "38LvnuvLSA8PqdST5wKb8", + "ctx": null, + "_testId": "urn:uuid:28948a44-3b99-4d44-be4d-8da3982aab4a", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Mavennet", + "rowId": "credential \"@context\" items MUST be strings." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 23740, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 172, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential \"@context\" items MUST be strings.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "NrRUPGI5Q0vLViuZ7nae2", + "ctx": null, + "_testId": "urn:uuid:9d0052c6-8dd0-486e-af4f-dffade2d4bad", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Procivis One Core", + "rowId": "credential \"@context\" items MUST be strings." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 25882, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 633, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential \"@context\" items MUST be strings.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "CIVhSrWzaq1ScrdxZdxGd", + "ctx": null, + "_testId": "urn:uuid:46e0a6a4-a83e-4e5d-a4a5-c33ca1c5f9d9", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "SecureKey", + "rowId": "credential \"@context\" items MUST be strings." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 28698, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 132, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected an HTTP error response code.: expected undefined to exist", + "showDiff": false, + "operator": "strictEqual", + "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:87:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } + }, + { + "type": "test", + "title": "credential \"@context\" items MUST be strings.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "XQPIk5v_0YiAZdM9T9S22", + "ctx": null, + "_testId": "urn:uuid:9d33064e-1828-4fa5-ac85-92afab839da1", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "SpruceID", + "rowId": "credential \"@context\" items MUST be strings." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 29589, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 154, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential \"@context\" items MUST be strings.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", + "ctx": null, + "_testId": "urn:uuid:13181eb8-7091-488d-b572-0bf8ba7c528b", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Trential", + "rowId": "credential \"@context\" items MUST be strings." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 32019, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 1514, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential \"@context\" items MUST be strings.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "19vf5nnKhcTHOUXbbvxLe", + "ctx": null, + "_testId": "urn:uuid:6141ae44-d1ec-48a2-af9c-1c33fb30eba3", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Trinsic", + "rowId": "credential \"@context\" items MUST be strings." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 37704, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 170, + "state": "passed", + "speed": "slow" + } + ] + }, + { + "id": "credential MUST have property \"type\"", "cells": [ { "type": "test", - "title": "credential \"@context\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"type\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -9776,32 +12547,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "7r5GdTOboJDTtendLaUie", "ctx": null, - "_testId": "urn:uuid:21cacf70-2581-4428-9ba3-93d14ec2db72", + "_testId": "urn:uuid:e9ed149d-c4d0-4d40-ad48-c6500c2434e2", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "ACA-py", - "rowId": "credential \"@context\" MUST be an array." + "rowId": "credential MUST have property \"type\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 1480, + "_idleStart": 1993, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 67, + "duration": 69, "state": "passed", "speed": "medium" }, { "type": "test", - "title": "credential \"@context\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"type\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -9811,32 +12582,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "OGy1YBvexRzvm4E4rogkf", "ctx": null, - "_testId": "urn:uuid:bf6ea61e-fc4b-47c8-b593-365915c0fbc1", + "_testId": "urn:uuid:fbdbf39a-3632-41eb-a8f8-a7d022cae452", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "apicatalog.com", - "rowId": "credential \"@context\" MUST be an array." + "rowId": "credential MUST have property \"type\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 4833, + "_idleStart": 8611, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 46, + "duration": 60, "state": "passed", "speed": "medium" }, { "type": "test", - "title": "credential \"@context\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"type\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -9846,32 +12617,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "W4GKczJeEHTLOnDWS6bAa", "ctx": null, - "_testId": "urn:uuid:73566455-ff49-42b2-86f6-ba11332b70e7", + "_testId": "urn:uuid:0c2a1e15-7c7f-459d-8f8f-38f41a907175", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Danube Tech", - "rowId": "credential \"@context\" MUST be an array." + "rowId": "credential MUST have property \"type\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 6828, + "_idleStart": 11395, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 121, + "duration": 108, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "credential \"@context\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"type\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -9881,32 +12652,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", "ctx": null, - "_testId": "urn:uuid:cacc7a90-496b-41df-a585-5aede0efae94", + "_testId": "urn:uuid:33ee88db-bd9b-47f2-8e84-3a47e6d1b28e", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Digital Bazaar", - "rowId": "credential \"@context\" MUST be an array." + "rowId": "credential MUST have property \"type\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 10076, + "_idleStart": 14151, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 35, + "duration": 36, "state": "passed", "speed": "fast" }, { "type": "test", - "title": "credential \"@context\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"type\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -9916,32 +12687,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "9VXOGVr_lsKA13N3NMHmU", "ctx": null, - "_testId": "urn:uuid:41bfd46a-10ed-489e-ae09-f93c721b8f76", + "_testId": "urn:uuid:2599890e-f327-4bba-b82b-5496b8a4fe39", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Digital Credentials Consortium", - "rowId": "credential \"@context\" MUST be an array." + "rowId": "credential MUST have property \"type\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11284, + "_idleStart": 15793, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 4, + "duration": 9, "state": "passed", "speed": "fast" }, { "type": "test", - "title": "credential \"@context\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"type\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -9951,32 +12722,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", "ctx": null, - "_testId": "urn:uuid:9e909f9a-b811-426f-a9b3-b54b23a8dc12", + "_testId": "urn:uuid:381a5e96-f730-4593-951c-4c100164ea27", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "EWF", - "rowId": "credential \"@context\" MUST be an array." + "rowId": "credential MUST have property \"type\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 12297, + "_idleStart": 17413, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 89, + "duration": 83, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "credential \"@context\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"type\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -9986,25 +12757,25 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "D6-GkpPGTPL0wawtrZGDq", "ctx": null, - "_testId": "urn:uuid:0b604cd7-d028-4bc3-844a-16abbd297060", + "_testId": "urn:uuid:74fff9d9-2b24-4a67-bd3e-273418bde30b", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "GS1 US", - "rowId": "credential \"@context\" MUST be an array." + "rowId": "credential MUST have property \"type\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 15301, + "_idleStart": 19459, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 137, + "duration": 61, "state": "failed", "err": { "response": {}, @@ -10084,21 +12855,56 @@ "status": 401, "data": { "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: 87836a8c-f4b5-4538-96e8-f3a032021700 Correlation ID: ccfe0b0b-49cd-498f-bdbf-b4f2508e75c7 Timestamp: 2024-12-06 15:12:28Z", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: a91b6331-6a1c-4fcc-8bb4-ff0bfa8d1600 Correlation ID: 44992c78-0bfd-4157-9e2a-8ecd28164cf0 Timestamp: 2024-12-06 18:26:09Z", "error_codes": [ 7000222 ], - "timestamp": "2024-12-06 15:12:28Z", - "trace_id": "87836a8c-f4b5-4538-96e8-f3a032021700", - "correlation_id": "ccfe0b0b-49cd-498f-bdbf-b4f2508e75c7", + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "a91b6331-6a1c-4fcc-8bb4-ff0bfa8d1600", + "correlation_id": "44992c78-0bfd-4157-9e2a-8ecd28164cf0", "error_uri": "https://login.microsoftonline.com/error?code=7000222" } } }, { "type": "test", - "title": "credential \"@context\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"type\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "L0KR3rmuFcVxuUSUzaji1", + "ctx": null, + "_testId": "urn:uuid:0158d8a6-c1ca-42f2-86b4-faaaf0714ede", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Gen Digital", + "rowId": "credential MUST have property \"type\"" + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 20971, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 37, + "state": "passed", + "speed": "fast" + }, + { + "type": "test", + "title": "credential MUST have property \"type\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -10108,32 +12914,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "P9uyHnIzAqYIng5wxWLft", "ctx": null, - "_testId": "urn:uuid:f85ae109-9c14-4ed4-95dc-4bdd378d8e13", + "_testId": "urn:uuid:2f45fa01-199a-4360-8bfd-aa502b5b12af", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Gen Digital", - "rowId": "credential \"@context\" MUST be an array." + "columnId": "LearnCard", + "rowId": "credential MUST have property \"type\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17182, + "_idleStart": 22159, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 30, + "duration": 38, "state": "passed", - "speed": "fast" + "speed": "medium" }, { "type": "test", - "title": "credential \"@context\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"type\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -10143,32 +12949,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "38LvnuvLSA8PqdST5wKb8", "ctx": null, - "_testId": "urn:uuid:cd1c93c6-fc08-4450-b5c6-1db3d30295cc", + "_testId": "urn:uuid:c1f8ebfc-3075-47fa-8f89-ef8de257c0a9", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "LearnCard", - "rowId": "credential \"@context\" MUST be an array." + "columnId": "Mavennet", + "rowId": "credential MUST have property \"type\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 18204, + "_idleStart": 23913, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 44, + "duration": 46, "state": "passed", "speed": "medium" }, { "type": "test", - "title": "credential \"@context\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"type\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -10178,32 +12984,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "parent": "NrRUPGI5Q0vLViuZ7nae2", "ctx": null, - "_testId": "urn:uuid:a123df29-6794-4318-994c-f7daa328f858", + "_testId": "urn:uuid:4942b5cf-f634-4c8d-927a-e991017bc6d4", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Mavennet", - "rowId": "credential \"@context\" MUST be an array." + "columnId": "Procivis One Core", + "rowId": "credential MUST have property \"type\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 20283, + "_idleStart": 26516, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 75, + "duration": 101, "state": "passed", - "speed": "medium" + "speed": "slow" }, { "type": "test", - "title": "credential \"@context\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"type\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -10213,38 +13019,38 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "CIVhSrWzaq1ScrdxZdxGd", "ctx": null, - "_testId": "urn:uuid:984f9968-6e43-476c-9884-879e8aa75406", + "_testId": "urn:uuid:f68ce267-5cc3-4e57-8de4-38874e893d41", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SecureKey", - "rowId": "credential \"@context\" MUST be an array." + "rowId": "credential MUST have property \"type\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 21610, + "_idleStart": 28831, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 112, + "duration": 42, "state": "failed", "err": { "name": "AssertionError", "message": "Expected an HTTP error response code.: expected undefined to exist", "showDiff": false, "operator": "strictEqual", - "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:75:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:98:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" } }, { "type": "test", - "title": "credential \"@context\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"type\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -10254,32 +13060,67 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "parent": "XQPIk5v_0YiAZdM9T9S22", "ctx": null, - "_testId": "urn:uuid:1376adf5-58ec-4ed6-ab6e-dbc2a2bdd6cd", + "_testId": "urn:uuid:ca78bcfc-2d37-488a-8020-06691f1086f1", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SpruceID", - "rowId": "credential \"@context\" MUST be an array." + "rowId": "credential MUST have property \"type\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22465, + "_idleStart": 29743, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 29, + "duration": 30, "state": "passed", "speed": "fast" }, { "type": "test", - "title": "credential \"@context\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"type\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", + "ctx": null, + "_testId": "urn:uuid:b873b5c9-bef2-4a1f-9bf5-fe30f976e0c2", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Trential", + "rowId": "credential MUST have property \"type\"" + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 33533, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 212, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential MUST have property \"type\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -10289,37 +13130,37 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "parent": "19vf5nnKhcTHOUXbbvxLe", "ctx": null, - "_testId": "urn:uuid:ebc45d21-681f-4674-8c76-798f7db95877", + "_testId": "urn:uuid:9729aaac-da5c-40bb-9ade-6732645ae593", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Trinsic", - "rowId": "credential \"@context\" MUST be an array." + "rowId": "credential MUST have property \"type\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 23935, + "_idleStart": 37873, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 17, + "duration": 41, "state": "passed", - "speed": "fast" + "speed": "medium" } ] }, { - "id": "credential \"@context\" items MUST be strings.", + "id": "\"credential.type\" MUST be an array.", "cells": [ { "type": "test", - "title": "credential \"@context\" items MUST be strings.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.type\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -10329,32 +13170,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "7r5GdTOboJDTtendLaUie", "ctx": null, - "_testId": "urn:uuid:dd27876e-700c-4c9f-ae89-4feedab3c802", + "_testId": "urn:uuid:add6e264-5dad-4fcb-aa2f-07e8bb18c19d", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "ACA-py", - "rowId": "credential \"@context\" items MUST be strings." + "rowId": "\"credential.type\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 1548, + "_idleStart": 2063, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 841, + "duration": 103, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "credential \"@context\" items MUST be strings.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.type\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -10364,32 +13205,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "OGy1YBvexRzvm4E4rogkf", "ctx": null, - "_testId": "urn:uuid:f8bc1b53-459e-4730-bcf8-9469c373f595", + "_testId": "urn:uuid:517be617-3895-4b01-98d3-8c30d413c1c9", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "apicatalog.com", - "rowId": "credential \"@context\" items MUST be strings." + "rowId": "\"credential.type\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 4879, + "_idleStart": 8671, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 194, + "duration": 50, "state": "passed", - "speed": "slow" + "speed": "medium" }, { "type": "test", - "title": "credential \"@context\" items MUST be strings.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.type\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -10399,32 +13240,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "W4GKczJeEHTLOnDWS6bAa", "ctx": null, - "_testId": "urn:uuid:d18d273d-f55e-4293-b851-0aff82cbe308", + "_testId": "urn:uuid:b5aef532-fb39-42f4-aef6-866527a999c1", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Danube Tech", - "rowId": "credential \"@context\" items MUST be strings." + "rowId": "\"credential.type\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 6949, + "_idleStart": 11504, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 741, + "duration": 110, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "credential \"@context\" items MUST be strings.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.type\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -10434,32 +13275,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", "ctx": null, - "_testId": "urn:uuid:6eade2c9-865c-491f-8cfa-d2d46236f401", + "_testId": "urn:uuid:0ee5b96f-1628-4f2c-af13-65f0427a97c4", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Digital Bazaar", - "rowId": "credential \"@context\" items MUST be strings." + "rowId": "\"credential.type\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 10111, + "_idleStart": 14188, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 133, + "duration": 36, "state": "passed", - "speed": "slow" + "speed": "fast" }, { "type": "test", - "title": "credential \"@context\" items MUST be strings.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.type\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -10469,32 +13310,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "9VXOGVr_lsKA13N3NMHmU", "ctx": null, - "_testId": "urn:uuid:b04c8eeb-16b6-496a-ad02-3c7d9cfb761c", + "_testId": "urn:uuid:c4a07fa5-665e-4745-a838-93f07cce1dcc", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Digital Credentials Consortium", - "rowId": "credential \"@context\" items MUST be strings." + "rowId": "\"credential.type\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11289, + "_idleStart": 15802, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 232, + "duration": 9, "state": "passed", - "speed": "slow" + "speed": "fast" }, { "type": "test", - "title": "credential \"@context\" items MUST be strings.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.type\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -10504,32 +13345,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", "ctx": null, - "_testId": "urn:uuid:d9a33516-12f6-4aa9-b56c-a84e6dfd80aa", + "_testId": "urn:uuid:951fcd0e-7c03-4ea7-ab99-3379d1fd3eb3", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "EWF", - "rowId": "credential \"@context\" items MUST be strings." + "rowId": "\"credential.type\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 12386, + "_idleStart": 17496, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 562, + "duration": 103, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "credential \"@context\" items MUST be strings.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.type\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -10539,25 +13380,25 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "D6-GkpPGTPL0wawtrZGDq", "ctx": null, - "_testId": "urn:uuid:1a6b0eca-7763-4ba1-8996-5d8c6c489880", + "_testId": "urn:uuid:047eea02-d4ca-4f53-9668-1d8ec28aac0a", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "GS1 US", - "rowId": "credential \"@context\" items MUST be strings." + "rowId": "\"credential.type\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 15439, + "_idleStart": 19520, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 143, + "duration": 95, "state": "failed", "err": { "response": {}, @@ -10637,21 +13478,21 @@ "status": 401, "data": { "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: b89d6856-0ab4-4b72-af24-4d5c8f621000 Correlation ID: 47831e15-ae24-4d9b-9e1d-473870d705ee Timestamp: 2024-12-06 15:12:28Z", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: ed7be4d1-c7d1-49d8-970f-1fbd9b3c2f00 Correlation ID: 1f4408bc-4fe6-400f-89d9-bfe408d8b5e4 Timestamp: 2024-12-06 18:26:09Z", "error_codes": [ 7000222 ], - "timestamp": "2024-12-06 15:12:28Z", - "trace_id": "b89d6856-0ab4-4b72-af24-4d5c8f621000", - "correlation_id": "47831e15-ae24-4d9b-9e1d-473870d705ee", + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "ed7be4d1-c7d1-49d8-970f-1fbd9b3c2f00", + "correlation_id": "1f4408bc-4fe6-400f-89d9-bfe408d8b5e4", "error_uri": "https://login.microsoftonline.com/error?code=7000222" } } }, { "type": "test", - "title": "credential \"@context\" items MUST be strings.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.type\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -10661,32 +13502,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "L0KR3rmuFcVxuUSUzaji1", "ctx": null, - "_testId": "urn:uuid:b957e64f-e453-42d1-8c3b-34022c1f3205", + "_testId": "urn:uuid:31b1f0dd-1985-4982-a441-7690d93133e0", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Gen Digital", - "rowId": "credential \"@context\" items MUST be strings." + "rowId": "\"credential.type\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17213, + "_idleStart": 21009, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 226, + "duration": 34, "state": "passed", - "speed": "slow" + "speed": "fast" }, { "type": "test", - "title": "credential \"@context\" items MUST be strings.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.type\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -10696,32 +13537,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "P9uyHnIzAqYIng5wxWLft", "ctx": null, - "_testId": "urn:uuid:e9f0cda9-c0ef-498e-bb1c-43dd31ee8fb6", + "_testId": "urn:uuid:41bafbe0-ce23-4fc5-a55a-9eb0fe8191a6", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "LearnCard", - "rowId": "credential \"@context\" items MUST be strings." + "rowId": "\"credential.type\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 18248, + "_idleStart": 22197, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 217, + "duration": 42, "state": "passed", - "speed": "slow" + "speed": "medium" }, { "type": "test", - "title": "credential \"@context\" items MUST be strings.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.type\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -10731,32 +13572,67 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "parent": "38LvnuvLSA8PqdST5wKb8", "ctx": null, - "_testId": "urn:uuid:357d7d7d-e7fe-415d-8bf5-386e2ece1a42", + "_testId": "urn:uuid:d7cb327c-49d1-4a78-a0a9-8b75093ac59b", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Mavennet", - "rowId": "credential \"@context\" items MUST be strings." + "rowId": "\"credential.type\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 20358, + "_idleStart": 23959, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 213, + "duration": 46, + "state": "passed", + "speed": "medium" + }, + { + "type": "test", + "title": "\"credential.type\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "NrRUPGI5Q0vLViuZ7nae2", + "ctx": null, + "_testId": "urn:uuid:1b8cc2b0-11ed-4b03-b2c8-62a39fcd0cc7", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Procivis One Core", + "rowId": "\"credential.type\" MUST be an array." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 26616, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 100, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "credential \"@context\" items MUST be strings.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.type\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -10766,38 +13642,38 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "CIVhSrWzaq1ScrdxZdxGd", "ctx": null, - "_testId": "urn:uuid:1dd94fa4-5810-4395-84f0-923befe0d10a", + "_testId": "urn:uuid:16c816dc-cdd3-451e-89b4-55fcebf99602", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SecureKey", - "rowId": "credential \"@context\" items MUST be strings." + "rowId": "\"credential.type\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 21722, + "_idleStart": 28873, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 76, + "duration": 70, "state": "failed", "err": { "name": "AssertionError", "message": "Expected an HTTP error response code.: expected undefined to exist", "showDiff": false, "operator": "strictEqual", - "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:87:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:108:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" } }, { "type": "test", - "title": "credential \"@context\" items MUST be strings.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.type\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -10807,32 +13683,67 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "parent": "XQPIk5v_0YiAZdM9T9S22", "ctx": null, - "_testId": "urn:uuid:fc39c0ea-2bfc-4303-ac64-5ec530498bc7", + "_testId": "urn:uuid:dbc0c209-4d1d-4b2a-a613-fe23af91e28f", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SpruceID", - "rowId": "credential \"@context\" items MUST be strings." + "rowId": "\"credential.type\" MUST be an array." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 29773, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 29, + "state": "passed", + "speed": "fast" + }, + { + "type": "test", + "title": "\"credential.type\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", + "ctx": null, + "_testId": "urn:uuid:7e8e7d58-8b07-4e7c-a1b8-6a0bb4d1b16b", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Trential", + "rowId": "\"credential.type\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22494, + "_idleStart": 33746, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 149, + "duration": 212, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "credential \"@context\" items MUST be strings.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.type\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -10842,37 +13753,37 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "parent": "19vf5nnKhcTHOUXbbvxLe", "ctx": null, - "_testId": "urn:uuid:4585a693-564c-459a-a988-fcda84e5e152", + "_testId": "urn:uuid:2d73d965-0375-4fde-a20d-b1a4e8f3bb69", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Trinsic", - "rowId": "credential \"@context\" items MUST be strings." + "rowId": "\"credential.type\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 23951, + "_idleStart": 37915, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 143, + "duration": 34, "state": "passed", - "speed": "slow" + "speed": "fast" } ] }, { - "id": "credential MUST have property \"type\"", + "id": "\"credential.type\" items MUST be strings", "cells": [ { "type": "test", - "title": "credential MUST have property \"type\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "\"credential.type\" items MUST be strings", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -10882,32 +13793,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "7r5GdTOboJDTtendLaUie", "ctx": null, - "_testId": "urn:uuid:63a698e1-87a2-4489-bbcd-6f0cb834bc37", + "_testId": "urn:uuid:406c1196-1941-44de-86f2-1f11ec8e9e54", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "ACA-py", - "rowId": "credential MUST have property \"type\"" + "rowId": "\"credential.type\" items MUST be strings" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 2390, + "_idleStart": 2166, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 67, + "duration": 347, "state": "passed", - "speed": "medium" + "speed": "slow" }, { "type": "test", - "title": "credential MUST have property \"type\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "\"credential.type\" items MUST be strings", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -10917,32 +13828,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "OGy1YBvexRzvm4E4rogkf", "ctx": null, - "_testId": "urn:uuid:e6f8b480-d810-4ca8-88bc-0fd3a74c98dc", + "_testId": "urn:uuid:1f4b8dd3-b7c3-4a45-b331-b5fa11fd0990", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "apicatalog.com", - "rowId": "credential MUST have property \"type\"" + "rowId": "\"credential.type\" items MUST be strings" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 5074, + "_idleStart": 8721, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 48, + "duration": 200, "state": "passed", - "speed": "medium" + "speed": "slow" }, { "type": "test", - "title": "credential MUST have property \"type\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "\"credential.type\" items MUST be strings", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -10952,32 +13863,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "W4GKczJeEHTLOnDWS6bAa", "ctx": null, - "_testId": "urn:uuid:772194cd-1bea-45f2-929e-5521775b7019", + "_testId": "urn:uuid:6b681080-5e70-4e12-8230-cb87b1906360", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Danube Tech", - "rowId": "credential MUST have property \"type\"" + "rowId": "\"credential.type\" items MUST be strings" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 7691, + "_idleStart": 11613, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 111, + "duration": 445, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "credential MUST have property \"type\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "\"credential.type\" items MUST be strings", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -10987,32 +13898,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", "ctx": null, - "_testId": "urn:uuid:a592a930-8e32-4485-97a7-2b7bfcecb322", + "_testId": "urn:uuid:12d44609-3ac7-4b80-8981-812826e97bdc", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Digital Bazaar", - "rowId": "credential MUST have property \"type\"" + "rowId": "\"credential.type\" items MUST be strings" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 10245, + "_idleStart": 14223, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 33, + "duration": 153, "state": "passed", - "speed": "fast" + "speed": "slow" }, { "type": "test", - "title": "credential MUST have property \"type\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "\"credential.type\" items MUST be strings", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -11022,32 +13933,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "9VXOGVr_lsKA13N3NMHmU", "ctx": null, - "_testId": "urn:uuid:4c4b370d-4641-4935-ad72-ab8579d0cd69", + "_testId": "urn:uuid:c6628732-b9f9-4dbb-9142-cfafd934eb98", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Digital Credentials Consortium", - "rowId": "credential MUST have property \"type\"" + "rowId": "\"credential.type\" items MUST be strings" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11522, + "_idleStart": 15811, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 5, + "duration": 33, "state": "passed", "speed": "fast" }, { "type": "test", - "title": "credential MUST have property \"type\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "\"credential.type\" items MUST be strings", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -11057,32 +13968,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", "ctx": null, - "_testId": "urn:uuid:887e5864-be19-4c1b-b5bf-a0385aa3b433", + "_testId": "urn:uuid:3c32b7b4-b1db-4fd2-aeb5-75c70f32f7b6", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "EWF", - "rowId": "credential MUST have property \"type\"" + "rowId": "\"credential.type\" items MUST be strings" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 12948, + "_idleStart": 17599, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 87, + "duration": 357, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "credential MUST have property \"type\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "\"credential.type\" items MUST be strings", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -11092,25 +14003,25 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "D6-GkpPGTPL0wawtrZGDq", "ctx": null, - "_testId": "urn:uuid:2516f67c-9115-4670-9bcf-12af97eae159", + "_testId": "urn:uuid:6c13ae33-9ecc-4ec6-bc1f-aea94feafb60", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "GS1 US", - "rowId": "credential MUST have property \"type\"" + "rowId": "\"credential.type\" items MUST be strings" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 15583, + "_idleStart": 19618, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 162, + "duration": 54, "state": "failed", "err": { "response": {}, @@ -11190,21 +14101,21 @@ "status": 401, "data": { "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: edad268e-37e4-4ef1-b8a0-4169eb6d1200 Correlation ID: 0394c989-4c40-4252-99f5-e98f043d6038 Timestamp: 2024-12-06 15:12:28Z", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: c0ffc7bc-6286-4530-bbbd-c87fd3a41200 Correlation ID: 47812823-2a06-492b-8c9e-a5d6a50f36d4 Timestamp: 2024-12-06 18:26:09Z", "error_codes": [ 7000222 ], - "timestamp": "2024-12-06 15:12:28Z", - "trace_id": "edad268e-37e4-4ef1-b8a0-4169eb6d1200", - "correlation_id": "0394c989-4c40-4252-99f5-e98f043d6038", + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "c0ffc7bc-6286-4530-bbbd-c87fd3a41200", + "correlation_id": "47812823-2a06-492b-8c9e-a5d6a50f36d4", "error_uri": "https://login.microsoftonline.com/error?code=7000222" } } }, { "type": "test", - "title": "credential MUST have property \"type\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "\"credential.type\" items MUST be strings", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -11214,32 +14125,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "L0KR3rmuFcVxuUSUzaji1", "ctx": null, - "_testId": "urn:uuid:3d61ce71-11fe-4a12-bd3f-86e53f29f654", + "_testId": "urn:uuid:833bde00-3e4c-4881-ad65-5d6b912602a8", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Gen Digital", - "rowId": "credential MUST have property \"type\"" + "rowId": "\"credential.type\" items MUST be strings" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17438, + "_idleStart": 21042, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 29, + "duration": 142, "state": "passed", - "speed": "fast" + "speed": "slow" }, { "type": "test", - "title": "credential MUST have property \"type\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "\"credential.type\" items MUST be strings", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -11249,32 +14160,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "P9uyHnIzAqYIng5wxWLft", "ctx": null, - "_testId": "urn:uuid:d94afeb4-702c-4650-9f7b-a40f6b0eadf4", + "_testId": "urn:uuid:dea9b39c-f8fa-4008-802c-6516e699e30a", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "LearnCard", - "rowId": "credential MUST have property \"type\"" + "rowId": "\"credential.type\" items MUST be strings" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 18466, + "_idleStart": 22239, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 23, + "duration": 159, "state": "passed", - "speed": "fast" + "speed": "slow" }, { "type": "test", - "title": "credential MUST have property \"type\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "\"credential.type\" items MUST be strings", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -11284,32 +14195,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "parent": "38LvnuvLSA8PqdST5wKb8", "ctx": null, - "_testId": "urn:uuid:bece0638-7d8b-4942-8e09-ab1b8c00c50a", + "_testId": "urn:uuid:76cfa4db-1615-444b-bd90-047e753c19a4", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Mavennet", - "rowId": "credential MUST have property \"type\"" + "rowId": "\"credential.type\" items MUST be strings" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 20572, + "_idleStart": 24005, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 51, + "duration": 190, "state": "passed", - "speed": "medium" + "speed": "slow" }, { "type": "test", - "title": "credential MUST have property \"type\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "\"credential.type\" items MUST be strings", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -11319,38 +14230,73 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "NrRUPGI5Q0vLViuZ7nae2", "ctx": null, - "_testId": "urn:uuid:1c98d6a4-5808-42a3-8750-8c7453bbdbcb", + "_testId": "urn:uuid:cbcaa899-7fb6-4512-8129-daded26f8763", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Procivis One Core", + "rowId": "\"credential.type\" items MUST be strings" + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 26716, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 402, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "\"credential.type\" items MUST be strings", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "CIVhSrWzaq1ScrdxZdxGd", + "ctx": null, + "_testId": "urn:uuid:a571f6ec-360f-4fc2-82d7-10571b6042cd", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SecureKey", - "rowId": "credential MUST have property \"type\"" + "rowId": "\"credential.type\" items MUST be strings" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 21798, + "_idleStart": 28944, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 121, + "duration": 82, "state": "failed", "err": { "name": "AssertionError", "message": "Expected an HTTP error response code.: expected undefined to exist", "showDiff": false, "operator": "strictEqual", - "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:98:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:120:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" } }, { "type": "test", - "title": "credential MUST have property \"type\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "\"credential.type\" items MUST be strings", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -11360,32 +14306,67 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "parent": "XQPIk5v_0YiAZdM9T9S22", "ctx": null, - "_testId": "urn:uuid:abfe3ffb-4b8e-495c-a36b-cb841c262e12", + "_testId": "urn:uuid:3c242be8-5421-40d5-aa7f-b7f58b677096", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SpruceID", - "rowId": "credential MUST have property \"type\"" + "rowId": "\"credential.type\" items MUST be strings" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22643, + "_idleStart": 29802, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 27, + "duration": 127, "state": "passed", - "speed": "fast" + "speed": "slow" }, { "type": "test", - "title": "credential MUST have property \"type\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "\"credential.type\" items MUST be strings", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", + "ctx": null, + "_testId": "urn:uuid:a6e63692-9380-40cf-8632-70f84ab441df", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Trential", + "rowId": "\"credential.type\" items MUST be strings" + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 33957, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 851, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "\"credential.type\" items MUST be strings", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -11395,37 +14376,37 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "parent": "19vf5nnKhcTHOUXbbvxLe", "ctx": null, - "_testId": "urn:uuid:72e15b11-37be-41c3-8d78-416800ad4f84", + "_testId": "urn:uuid:65350633-22d3-4d9f-92bc-b76c6050ebed", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Trinsic", - "rowId": "credential MUST have property \"type\"" + "rowId": "\"credential.type\" items MUST be strings" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24095, + "_idleStart": 37949, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 21, + "duration": 105, "state": "passed", - "speed": "fast" + "speed": "slow" } ] }, { - "id": "\"credential.type\" MUST be an array.", + "id": "credential MUST have property \"issuer\"", "cells": [ { "type": "test", - "title": "\"credential.type\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"issuer\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -11435,32 +14416,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "7r5GdTOboJDTtendLaUie", "ctx": null, - "_testId": "urn:uuid:355d8716-3cc3-499b-b276-ca934eed70b1", + "_testId": "urn:uuid:9ef857cc-0756-4c8e-92eb-56dde69cf587", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "ACA-py", - "rowId": "\"credential.type\" MUST be an array." + "rowId": "credential MUST have property \"issuer\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 2457, + "_idleStart": 2513, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 80, + "duration": 69, "state": "passed", - "speed": "slow" + "speed": "medium" }, { "type": "test", - "title": "\"credential.type\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"issuer\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -11470,32 +14451,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "OGy1YBvexRzvm4E4rogkf", "ctx": null, - "_testId": "urn:uuid:155fabb8-b7be-4fd7-b424-ac5ae0dc9a88", + "_testId": "urn:uuid:b141c5f1-5c31-48ab-aa2d-1ab014c23e51", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "apicatalog.com", - "rowId": "\"credential.type\" MUST be an array." + "rowId": "credential MUST have property \"issuer\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 5122, + "_idleStart": 8921, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 46, + "duration": 49, "state": "passed", "speed": "medium" }, { "type": "test", - "title": "\"credential.type\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"issuer\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -11505,32 +14486,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "W4GKczJeEHTLOnDWS6bAa", "ctx": null, - "_testId": "urn:uuid:b1208a15-40f6-4721-9bc0-c0343325b821", + "_testId": "urn:uuid:1f081a6e-529b-4f9c-8c12-64afc56bf520", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Danube Tech", - "rowId": "\"credential.type\" MUST be an array." + "rowId": "credential MUST have property \"issuer\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 7802, + "_idleStart": 12059, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 115, + "duration": 108, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "\"credential.type\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"issuer\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -11540,32 +14521,39 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", "ctx": null, - "_testId": "urn:uuid:226a7d37-c733-4a7e-a735-1c12788d1458", + "_testId": "urn:uuid:6d5df37c-091c-43fb-8616-43c0ffad0ea7", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Digital Bazaar", - "rowId": "\"credential.type\" MUST be an array." + "rowId": "credential MUST have property \"issuer\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 10278, + "_idleStart": 14377, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 36, - "state": "passed", - "speed": "fast" + "duration": 492, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'cache-control': 'no-cache, no-store, must-revalidate', pragma: 'no-cache', expires: '0', vary: 'X-HTTP-Method-Override, Accept-Encoding', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', etag: 'W/\"2ec-5wZqxjKYgsD91t8kCbRrPumXaig\"', 'x-cloud-trace-context': 'fd8b322cba2959b371e8f4f8e0168818', date: 'Fri, 06 Dec 2024 18:26:04 GMT', server: 'Google Frontend', 'content-length': '748', via: '1.1 google', 'alt-svc': 'h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist", + "showDiff": false, + "actual": {}, + "operator": "notStrictEqual", + "stack": "AssertionError: Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'cache-control': 'no-cache, no-store, must-revalidate', pragma: 'no-cache', expires: '0', vary: 'X-HTTP-Method-Override, Accept-Encoding', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', etag: 'W/\"2ec-5wZqxjKYgsD91t8kCbRrPumXaig\"', 'x-cloud-trace-context': 'fd8b322cba2959b371e8f4f8e0168818', date: 'Fri, 06 Dec 2024 18:26:04 GMT', server: 'Google Frontend', 'content-length': '748', via: '1.1 google', 'alt-svc': 'h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:9:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:131:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } }, { "type": "test", - "title": "\"credential.type\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"issuer\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -11575,32 +14563,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "9VXOGVr_lsKA13N3NMHmU", "ctx": null, - "_testId": "urn:uuid:bd98aaf3-1297-4d31-bc13-9a987c65e797", + "_testId": "urn:uuid:f3e58d8a-74a2-461b-8571-7fc23a6719b5", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Digital Credentials Consortium", - "rowId": "\"credential.type\" MUST be an array." + "rowId": "credential MUST have property \"issuer\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11527, + "_idleStart": 15845, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 4, + "duration": 9, "state": "passed", "speed": "fast" }, { "type": "test", - "title": "\"credential.type\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"issuer\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -11610,32 +14598,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", "ctx": null, - "_testId": "urn:uuid:427e56f0-a75f-489e-8a4b-0f5540e4567b", + "_testId": "urn:uuid:d90a0df4-df79-464a-8aba-9e6f12b084cc", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "EWF", - "rowId": "\"credential.type\" MUST be an array." + "rowId": "credential MUST have property \"issuer\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 13036, + "_idleStart": 17957, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 89, + "duration": 82, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "\"credential.type\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"issuer\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -11645,25 +14633,25 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "D6-GkpPGTPL0wawtrZGDq", "ctx": null, - "_testId": "urn:uuid:631ffcd2-6c3c-42e8-8d65-a5ec7c56be92", + "_testId": "urn:uuid:474ba0c3-82a9-4806-9dbc-875b7d390cf7", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "GS1 US", - "rowId": "\"credential.type\" MUST be an array." + "rowId": "credential MUST have property \"issuer\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 15748, + "_idleStart": 19673, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 145, + "duration": 53, "state": "failed", "err": { "response": {}, @@ -11743,21 +14731,56 @@ "status": 401, "data": { "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: c3adced2-471d-4138-9692-4ba25a341200 Correlation ID: 76634050-e392-4e9d-b4a3-33a6295acb04 Timestamp: 2024-12-06 15:12:29Z", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: fbf5e655-b8c5-48b4-bb94-cf039a601200 Correlation ID: cb2ee6cc-94ff-4afa-8d5c-9cde3b72cbcc Timestamp: 2024-12-06 18:26:09Z", "error_codes": [ 7000222 ], - "timestamp": "2024-12-06 15:12:29Z", - "trace_id": "c3adced2-471d-4138-9692-4ba25a341200", - "correlation_id": "76634050-e392-4e9d-b4a3-33a6295acb04", + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "fbf5e655-b8c5-48b4-bb94-cf039a601200", + "correlation_id": "cb2ee6cc-94ff-4afa-8d5c-9cde3b72cbcc", "error_uri": "https://login.microsoftonline.com/error?code=7000222" } } }, { "type": "test", - "title": "\"credential.type\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"issuer\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "L0KR3rmuFcVxuUSUzaji1", + "ctx": null, + "_testId": "urn:uuid:30943ea9-638b-45ae-a207-2ce61890c94b", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Gen Digital", + "rowId": "credential MUST have property \"issuer\"" + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 21184, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 32, + "state": "passed", + "speed": "fast" + }, + { + "type": "test", + "title": "credential MUST have property \"issuer\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -11767,32 +14790,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "P9uyHnIzAqYIng5wxWLft", "ctx": null, - "_testId": "urn:uuid:eb9e247d-7fee-44c0-97b6-d58d1071775f", + "_testId": "urn:uuid:6e14995e-1028-4555-b7fc-3ace023dc228", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Gen Digital", - "rowId": "\"credential.type\" MUST be an array." + "columnId": "LearnCard", + "rowId": "credential MUST have property \"issuer\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17468, + "_idleStart": 22399, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 30, + "duration": 37, "state": "passed", "speed": "fast" }, { "type": "test", - "title": "\"credential.type\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"issuer\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -11802,32 +14825,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "38LvnuvLSA8PqdST5wKb8", "ctx": null, - "_testId": "urn:uuid:8f99e5b5-53ef-4a0c-8c99-69968088c4b0", + "_testId": "urn:uuid:64463a5e-fb25-4394-9e45-88ff88874b66", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "LearnCard", - "rowId": "\"credential.type\" MUST be an array." + "columnId": "Mavennet", + "rowId": "credential MUST have property \"issuer\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 18489, + "_idleStart": 24195, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 39, + "duration": 42, "state": "passed", "speed": "medium" }, { "type": "test", - "title": "\"credential.type\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"issuer\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -11837,32 +14860,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "parent": "NrRUPGI5Q0vLViuZ7nae2", "ctx": null, - "_testId": "urn:uuid:39b0e423-21c8-41a4-b66e-d46557831e7e", + "_testId": "urn:uuid:c9b4f684-1368-4158-8c0f-55c8a83c222e", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Mavennet", - "rowId": "\"credential.type\" MUST be an array." + "columnId": "Procivis One Core", + "rowId": "credential MUST have property \"issuer\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 20624, + "_idleStart": 27118, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 46, + "duration": 100, "state": "passed", - "speed": "medium" + "speed": "slow" }, { "type": "test", - "title": "\"credential.type\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"issuer\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -11872,38 +14895,38 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "CIVhSrWzaq1ScrdxZdxGd", "ctx": null, - "_testId": "urn:uuid:c573ce16-b17b-4021-a793-4af5206fd540", + "_testId": "urn:uuid:f5279285-9e60-42c0-bb9a-90d0d78a383f", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SecureKey", - "rowId": "\"credential.type\" MUST be an array." + "rowId": "credential MUST have property \"issuer\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 21920, + "_idleStart": 29027, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 31, + "duration": 137, "state": "failed", "err": { "name": "AssertionError", "message": "Expected an HTTP error response code.: expected undefined to exist", "showDiff": false, "operator": "strictEqual", - "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:108:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:131:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" } }, { "type": "test", - "title": "\"credential.type\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"issuer\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -11913,32 +14936,67 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "parent": "XQPIk5v_0YiAZdM9T9S22", "ctx": null, - "_testId": "urn:uuid:a5455110-b275-4b66-84b4-e2ef7577c66f", + "_testId": "urn:uuid:268ec2c7-05ab-4225-90a3-c6d0127ffc23", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SpruceID", - "rowId": "\"credential.type\" MUST be an array." + "rowId": "credential MUST have property \"issuer\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22669, + "_idleStart": 29929, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 26, + "duration": 31, "state": "passed", "speed": "fast" }, { "type": "test", - "title": "\"credential.type\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"issuer\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", + "ctx": null, + "_testId": "urn:uuid:c6216527-11c4-409f-adc3-d458afe6c83d", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Trential", + "rowId": "credential MUST have property \"issuer\"" + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 34809, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 213, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential MUST have property \"issuer\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -11948,37 +15006,37 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "parent": "19vf5nnKhcTHOUXbbvxLe", "ctx": null, - "_testId": "urn:uuid:041b1a17-d59a-4cfb-b8d8-d031b474cd3e", + "_testId": "urn:uuid:3024b974-fa0a-4fe1-95f6-8ff4eb54ab90", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Trinsic", - "rowId": "\"credential.type\" MUST be an array." + "rowId": "credential MUST have property \"issuer\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24117, + "_idleStart": 38054, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 20, + "duration": 29, "state": "passed", "speed": "fast" } ] }, { - "id": "\"credential.type\" items MUST be strings", + "id": "\"credential.issuer\" MUST be a string or an object", "cells": [ { "type": "test", - "title": "\"credential.type\" items MUST be strings", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.issuer\" MUST be a string or an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -11988,32 +15046,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "7r5GdTOboJDTtendLaUie", "ctx": null, - "_testId": "urn:uuid:4aeea521-03e8-4c99-a21c-93a9437d1235", + "_testId": "urn:uuid:1cfe9a1f-b660-4ffe-9756-319f1450b5a0", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "ACA-py", - "rowId": "\"credential.type\" items MUST be strings" + "rowId": "\"credential.issuer\" MUST be a string or an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 2538, + "_idleStart": 2582, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 280, + "duration": 287, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "\"credential.type\" items MUST be strings", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.issuer\" MUST be a string or an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -12023,32 +15081,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "OGy1YBvexRzvm4E4rogkf", "ctx": null, - "_testId": "urn:uuid:6b1c1c96-bba5-4722-beb2-0a7d78cf7a72", + "_testId": "urn:uuid:cbe6a52e-26d5-4d25-a7b1-600f860a8918", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "apicatalog.com", - "rowId": "\"credential.type\" items MUST be strings" + "rowId": "\"credential.issuer\" MUST be a string or an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 5169, + "_idleStart": 8970, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 177, + "duration": 208, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "\"credential.type\" items MUST be strings", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.issuer\" MUST be a string or an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -12058,32 +15116,43 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "W4GKczJeEHTLOnDWS6bAa", "ctx": null, - "_testId": "urn:uuid:6cf9fae1-ef99-45e4-be5e-2906cde72ba8", + "_testId": "urn:uuid:f1faccad-0e6a-4e65-9424-798747a678c1", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Danube Tech", - "rowId": "\"credential.type\" items MUST be strings" + "rowId": "\"credential.issuer\" MUST be a string or an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 7918, + "_idleStart": 12167, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 440, - "state": "passed", - "speed": "slow" + "duration": 221, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected status code 400 or 422.: expected 500 to be one of [ 400, 422 ]", + "showDiff": true, + "actual": 500, + "expected": [ + 400, + 422 + ], + "operator": "deepStrictEqual", + "stack": "AssertionError: Expected status code 400 or 422.: expected 500 to be one of [ 400, 422 ]\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:14:26)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:143:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } }, { "type": "test", - "title": "\"credential.type\" items MUST be strings", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.issuer\" MUST be a string or an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -12093,32 +15162,39 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", "ctx": null, - "_testId": "urn:uuid:950ce732-093d-4fbc-ba73-462f18f56455", + "_testId": "urn:uuid:b9ed63af-3064-4d90-84ba-65d8a5d03410", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Digital Bazaar", - "rowId": "\"credential.type\" items MUST be strings" + "rowId": "\"credential.issuer\" MUST be a string or an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 10314, + "_idleStart": 14870, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 250, - "state": "passed", - "speed": "slow" + "duration": 76, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'cache-control': 'no-cache, no-store, must-revalidate', pragma: 'no-cache', expires: '0', vary: 'X-HTTP-Method-Override, Accept-Encoding', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', etag: 'W/\"2f3-k8g0ZOF8gEcXfWa8N6UhyBOPz0o\"', 'x-cloud-trace-context': '3334cc6fd3de1460cdaf4f097e449233', date: 'Fri, 06 Dec 2024 18:26:04 GMT', server: 'Google Frontend', 'content-length': '755', via: '1.1 google', 'alt-svc': 'h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist", + "showDiff": false, + "actual": {}, + "operator": "notStrictEqual", + "stack": "AssertionError: Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'cache-control': 'no-cache, no-store, must-revalidate', pragma: 'no-cache', expires: '0', vary: 'X-HTTP-Method-Override, Accept-Encoding', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', etag: 'W/\"2f3-k8g0ZOF8gEcXfWa8N6UhyBOPz0o\"', 'x-cloud-trace-context': '3334cc6fd3de1460cdaf4f097e449233', date: 'Fri, 06 Dec 2024 18:26:04 GMT', server: 'Google Frontend', 'content-length': '755', via: '1.1 google', 'alt-svc': 'h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:9:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:143:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } }, { "type": "test", - "title": "\"credential.type\" items MUST be strings", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.issuer\" MUST be a string or an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -12128,32 +15204,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "9VXOGVr_lsKA13N3NMHmU", "ctx": null, - "_testId": "urn:uuid:247d689f-2623-4a59-a1b1-005299170255", + "_testId": "urn:uuid:a3045f51-3335-493b-a900-fe80cfbab7a3", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Digital Credentials Consortium", - "rowId": "\"credential.type\" items MUST be strings" + "rowId": "\"credential.issuer\" MUST be a string or an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11532, + "_idleStart": 15853, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 18, + "duration": 34, "state": "passed", "speed": "fast" }, { "type": "test", - "title": "\"credential.type\" items MUST be strings", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.issuer\" MUST be a string or an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -12163,32 +15239,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", "ctx": null, - "_testId": "urn:uuid:465c314f-9cbd-4c2f-8855-0abbd4f73229", + "_testId": "urn:uuid:5e33a94a-4efb-4775-b88a-5a0e2b82a193", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "EWF", - "rowId": "\"credential.type\" items MUST be strings" + "rowId": "\"credential.issuer\" MUST be a string or an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 13125, + "_idleStart": 18040, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 368, + "duration": 340, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "\"credential.type\" items MUST be strings", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.issuer\" MUST be a string or an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -12198,25 +15274,25 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "D6-GkpPGTPL0wawtrZGDq", "ctx": null, - "_testId": "urn:uuid:8bdc1aa0-9940-42da-9d7e-68fa3bf6a961", + "_testId": "urn:uuid:dd9c4f3b-f8bd-4571-9e60-b463e202a6b9", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "GS1 US", - "rowId": "\"credential.type\" items MUST be strings" + "rowId": "\"credential.issuer\" MUST be a string or an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 15894, + "_idleStart": 19727, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 156, + "duration": 56, "state": "failed", "err": { "response": {}, @@ -12296,21 +15372,21 @@ "status": 401, "data": { "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: 0dd3fdbb-fe3a-49a3-bc76-55fae24c0f00 Correlation ID: 7d88aeff-9472-4388-849b-dc2a5bc65f30 Timestamp: 2024-12-06 15:12:29Z", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: b0f77e46-52e3-4386-afb6-2cc449781400 Correlation ID: 7bdce45b-9214-4c38-9180-3e46ed067f12 Timestamp: 2024-12-06 18:26:09Z", "error_codes": [ 7000222 ], - "timestamp": "2024-12-06 15:12:29Z", - "trace_id": "0dd3fdbb-fe3a-49a3-bc76-55fae24c0f00", - "correlation_id": "7d88aeff-9472-4388-849b-dc2a5bc65f30", + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "b0f77e46-52e3-4386-afb6-2cc449781400", + "correlation_id": "7bdce45b-9214-4c38-9180-3e46ed067f12", "error_uri": "https://login.microsoftonline.com/error?code=7000222" } } }, { "type": "test", - "title": "\"credential.type\" items MUST be strings", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.issuer\" MUST be a string or an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -12320,32 +15396,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "L0KR3rmuFcVxuUSUzaji1", "ctx": null, - "_testId": "urn:uuid:3a575a19-a177-4c0f-a437-f5c78373a384", + "_testId": "urn:uuid:4d04483e-bf76-4d6a-be6f-930d938b2e5c", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Gen Digital", - "rowId": "\"credential.type\" items MUST be strings" + "rowId": "\"credential.issuer\" MUST be a string or an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17498, + "_idleStart": 21216, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 117, + "duration": 127, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "\"credential.type\" items MUST be strings", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.issuer\" MUST be a string or an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -12355,32 +15431,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "P9uyHnIzAqYIng5wxWLft", "ctx": null, - "_testId": "urn:uuid:e5ce144e-37a6-4f31-a18e-5d60e6f80b58", + "_testId": "urn:uuid:5020f72c-1fff-4145-bc03-4624cee1e665", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "LearnCard", - "rowId": "\"credential.type\" items MUST be strings" + "rowId": "\"credential.issuer\" MUST be a string or an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 18532, + "_idleStart": 22435, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 117, + "duration": 158, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "\"credential.type\" items MUST be strings", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.issuer\" MUST be a string or an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -12390,32 +15466,67 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "parent": "38LvnuvLSA8PqdST5wKb8", "ctx": null, - "_testId": "urn:uuid:77fd975e-02b0-4a52-ae67-64ada1bb0268", + "_testId": "urn:uuid:df2ef88e-04a5-46ad-9f0b-e1e47dee7152", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Mavennet", - "rowId": "\"credential.type\" items MUST be strings" + "rowId": "\"credential.issuer\" MUST be a string or an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 20669, + "_idleStart": 24237, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 209, + "duration": 649, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "\"credential.type\" items MUST be strings", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.issuer\" MUST be a string or an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "NrRUPGI5Q0vLViuZ7nae2", + "ctx": null, + "_testId": "urn:uuid:e032b2cb-d865-468c-8ba6-9f755532c76e", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Procivis One Core", + "rowId": "\"credential.issuer\" MUST be a string or an object" + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 27219, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 405, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "\"credential.issuer\" MUST be a string or an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -12425,38 +15536,73 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "CIVhSrWzaq1ScrdxZdxGd", "ctx": null, - "_testId": "urn:uuid:1b7b226d-09ce-4f00-acd4-aac8d3aa9717", + "_testId": "urn:uuid:f1d56bec-d53f-454d-8546-df9fae3f62a0", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SecureKey", - "rowId": "\"credential.type\" items MUST be strings" + "rowId": "\"credential.issuer\" MUST be a string or an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 21951, + "_idleStart": 29165, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 59, + "duration": 18, "state": "failed", "err": { "name": "AssertionError", "message": "Expected an HTTP error response code.: expected undefined to exist", "showDiff": false, "operator": "strictEqual", - "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:120:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:143:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" } }, { "type": "test", - "title": "\"credential.type\" items MUST be strings", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.issuer\" MUST be a string or an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "XQPIk5v_0YiAZdM9T9S22", + "ctx": null, + "_testId": "urn:uuid:90271e1a-0b59-4aab-b59c-1245d81f5f0c", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "SpruceID", + "rowId": "\"credential.issuer\" MUST be a string or an object" + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 29961, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 162, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "\"credential.issuer\" MUST be a string or an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -12466,32 +15612,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", "ctx": null, - "_testId": "urn:uuid:db1007f5-0e29-4e94-9dc6-bc31a98379bf", + "_testId": "urn:uuid:65d385ce-ec3d-4151-b1f8-5e59a2f8bac9", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", - "rowId": "\"credential.type\" items MUST be strings" + "columnId": "Trential", + "rowId": "\"credential.issuer\" MUST be a string or an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22696, + "_idleStart": 35022, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 92, + "duration": 851, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "\"credential.type\" items MUST be strings", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.issuer\" MUST be a string or an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -12501,37 +15647,37 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "parent": "19vf5nnKhcTHOUXbbvxLe", "ctx": null, - "_testId": "urn:uuid:6209208a-15f9-4923-95e7-3a192261b96d", + "_testId": "urn:uuid:0ef4a5af-99b4-4e4e-a558-44fb5bf4a68d", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Trinsic", - "rowId": "\"credential.type\" items MUST be strings" + "rowId": "\"credential.issuer\" MUST be a string or an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24136, + "_idleStart": 38083, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 95, + "duration": 114, "state": "passed", "speed": "slow" } ] }, { - "id": "credential MUST have property \"issuer\"", + "id": "credential MUST have property \"credentialSubject\"", "cells": [ { "type": "test", - "title": "credential MUST have property \"issuer\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"credentialSubject\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -12541,32 +15687,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "7r5GdTOboJDTtendLaUie", "ctx": null, - "_testId": "urn:uuid:5adbb624-3cd6-4381-9f25-d8a256416713", + "_testId": "urn:uuid:5343e97a-6956-4836-a969-8e6e8760d219", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "ACA-py", - "rowId": "credential MUST have property \"issuer\"" + "rowId": "credential MUST have property \"credentialSubject\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 2819, + "_idleStart": 2869, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 69, + "duration": 70, "state": "passed", "speed": "medium" }, { "type": "test", - "title": "credential MUST have property \"issuer\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"credentialSubject\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -12576,32 +15722,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "OGy1YBvexRzvm4E4rogkf", "ctx": null, - "_testId": "urn:uuid:fbcbcbf1-6c2f-4e33-bb19-deec324a9915", + "_testId": "urn:uuid:2c6d4dc0-6232-4018-b977-ce5289debe0b", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "apicatalog.com", - "rowId": "credential MUST have property \"issuer\"" + "rowId": "credential MUST have property \"credentialSubject\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 5346, + "_idleStart": 9178, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 45, + "duration": 52, "state": "passed", "speed": "medium" }, { "type": "test", - "title": "credential MUST have property \"issuer\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"credentialSubject\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -12611,20 +15757,20 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "W4GKczJeEHTLOnDWS6bAa", "ctx": null, - "_testId": "urn:uuid:7124df3a-0ef0-4b89-a425-e69ee4b470b5", + "_testId": "urn:uuid:e25ee4cb-ac98-48d5-b12e-c40aef5932d3", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Danube Tech", - "rowId": "credential MUST have property \"issuer\"" + "rowId": "credential MUST have property \"credentialSubject\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 8358, + "_idleStart": 12389, "_onTimeout": null, "_repeat": null, "_destroyed": true @@ -12635,8 +15781,8 @@ }, { "type": "test", - "title": "credential MUST have property \"issuer\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"credentialSubject\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -12646,39 +15792,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", "ctx": null, - "_testId": "urn:uuid:85fe179e-fb9d-482b-9e22-1fef6b6fcc97", + "_testId": "urn:uuid:6027d7b5-1ccd-483f-bafe-61ec1e2dfcb3", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Digital Bazaar", - "rowId": "credential MUST have property \"issuer\"" + "rowId": "credential MUST have property \"credentialSubject\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 10565, + "_idleStart": 14947, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 87, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'cache-control': 'no-cache, no-store, must-revalidate', pragma: 'no-cache', expires: '0', vary: 'X-HTTP-Method-Override, Accept-Encoding', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', etag: 'W/\"2eb-lsaWNjAi8+F2iz+1xw3D265CKO4\"', 'x-cloud-trace-context': 'b1a39279b3ea5c488911db0acff2e197', date: 'Fri, 06 Dec 2024 15:12:23 GMT', server: 'Google Frontend', 'content-length': '747', via: '1.1 google', 'alt-svc': 'h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist", - "showDiff": false, - "actual": {}, - "operator": "notStrictEqual", - "stack": "AssertionError: Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'cache-control': 'no-cache, no-store, must-revalidate', pragma: 'no-cache', expires: '0', vary: 'X-HTTP-Method-Override, Accept-Encoding', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', etag: 'W/\"2eb-lsaWNjAi8+F2iz+1xw3D265CKO4\"', 'x-cloud-trace-context': 'b1a39279b3ea5c488911db0acff2e197', date: 'Fri, 06 Dec 2024 15:12:23 GMT', server: 'Google Frontend', 'content-length': '747', via: '1.1 google', 'alt-svc': 'h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:9:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:131:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "duration": 54, + "state": "passed", + "speed": "medium" }, { "type": "test", - "title": "credential MUST have property \"issuer\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"credentialSubject\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -12688,32 +15827,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "9VXOGVr_lsKA13N3NMHmU", "ctx": null, - "_testId": "urn:uuid:d9bb46b8-2efa-43cd-9ac8-f3c88982d53d", + "_testId": "urn:uuid:9980a0af-644b-469d-83a9-9f1a0f695f58", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Digital Credentials Consortium", - "rowId": "credential MUST have property \"issuer\"" + "rowId": "credential MUST have property \"credentialSubject\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11551, + "_idleStart": 15888, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 5, + "duration": 10, "state": "passed", "speed": "fast" }, { "type": "test", - "title": "credential MUST have property \"issuer\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"credentialSubject\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -12723,32 +15862,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", "ctx": null, - "_testId": "urn:uuid:00232f77-c0b2-40c8-8add-0811fe86a782", + "_testId": "urn:uuid:544e553a-c891-4035-92c9-3c17dac1782f", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "EWF", - "rowId": "credential MUST have property \"issuer\"" + "rowId": "credential MUST have property \"credentialSubject\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 13493, + "_idleStart": 18379, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 88, + "duration": 83, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "credential MUST have property \"issuer\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"credentialSubject\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -12758,25 +15897,25 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "D6-GkpPGTPL0wawtrZGDq", "ctx": null, - "_testId": "urn:uuid:307290ee-3ec5-408d-aa58-d66154665f9f", + "_testId": "urn:uuid:82a4a9a2-463b-4b4d-a004-f3d8c8118e4e", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "GS1 US", - "rowId": "credential MUST have property \"issuer\"" + "rowId": "credential MUST have property \"credentialSubject\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 16051, + "_idleStart": 19783, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 146, + "duration": 95, "state": "failed", "err": { "response": {}, @@ -12856,21 +15995,21 @@ "status": 401, "data": { "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: c3adced2-471d-4138-9692-4ba263341200 Correlation ID: 8db11c32-826d-4e46-8964-3bf6153ce2c3 Timestamp: 2024-12-06 15:12:29Z", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: ed7be4d1-c7d1-49d8-970f-1fbda43c2f00 Correlation ID: d9914f4c-33b4-4687-bee9-1bca315761e5 Timestamp: 2024-12-06 18:26:09Z", "error_codes": [ 7000222 ], - "timestamp": "2024-12-06 15:12:29Z", - "trace_id": "c3adced2-471d-4138-9692-4ba263341200", - "correlation_id": "8db11c32-826d-4e46-8964-3bf6153ce2c3", + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "ed7be4d1-c7d1-49d8-970f-1fbda43c2f00", + "correlation_id": "d9914f4c-33b4-4687-bee9-1bca315761e5", "error_uri": "https://login.microsoftonline.com/error?code=7000222" } } }, { "type": "test", - "title": "credential MUST have property \"issuer\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"credentialSubject\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -12880,32 +16019,43 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "L0KR3rmuFcVxuUSUzaji1", "ctx": null, - "_testId": "urn:uuid:9407bdb8-2e8a-4494-9023-b04d3f24c73c", + "_testId": "urn:uuid:fa54ba1a-f61b-451a-b5a0-430e51b88985", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Gen Digital", - "rowId": "credential MUST have property \"issuer\"" + "rowId": "credential MUST have property \"credentialSubject\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17615, + "_idleStart": 21344, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 30, - "state": "passed", - "speed": "fast" + "duration": 34, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected status code 400 or 422.: expected 500 to be one of [ 400, 422 ]", + "showDiff": true, + "actual": 500, + "expected": [ + 400, + 422 + ], + "operator": "deepStrictEqual", + "stack": "AssertionError: Expected status code 400 or 422.: expected 500 to be one of [ 400, 422 ]\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:14:26)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:154:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } }, { "type": "test", - "title": "credential MUST have property \"issuer\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"credentialSubject\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -12915,32 +16065,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "P9uyHnIzAqYIng5wxWLft", "ctx": null, - "_testId": "urn:uuid:721515e6-4f23-445c-a54e-85bb22f95f8a", + "_testId": "urn:uuid:ebe264f1-e16c-42c0-a2cf-450659962b24", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "LearnCard", - "rowId": "credential MUST have property \"issuer\"" + "rowId": "credential MUST have property \"credentialSubject\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 18649, + "_idleStart": 22594, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 27, + "duration": 38, "state": "passed", - "speed": "fast" + "speed": "medium" }, { "type": "test", - "title": "credential MUST have property \"issuer\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"credentialSubject\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -12950,20 +16100,20 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "parent": "38LvnuvLSA8PqdST5wKb8", "ctx": null, - "_testId": "urn:uuid:73733cc8-4055-4cef-98ed-086f2569a6b9", + "_testId": "urn:uuid:6cad13d2-e1df-4846-8d5a-7ddc408d22a6", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Mavennet", - "rowId": "credential MUST have property \"issuer\"" + "rowId": "credential MUST have property \"credentialSubject\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 20879, + "_idleStart": 24886, "_onTimeout": null, "_repeat": null, "_destroyed": true @@ -12974,8 +16124,43 @@ }, { "type": "test", - "title": "credential MUST have property \"issuer\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"credentialSubject\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "NrRUPGI5Q0vLViuZ7nae2", + "ctx": null, + "_testId": "urn:uuid:b10bffa4-af49-4b31-9469-fc88a74cdc11", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Procivis One Core", + "rowId": "credential MUST have property \"credentialSubject\"" + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 27625, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 100, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential MUST have property \"credentialSubject\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -12985,38 +16170,38 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "CIVhSrWzaq1ScrdxZdxGd", "ctx": null, - "_testId": "urn:uuid:fd6aadd0-5f23-48d3-b394-f5b32aea88c0", + "_testId": "urn:uuid:c21cf8a1-7df8-411c-b15e-0b7f7bdf6069", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SecureKey", - "rowId": "credential MUST have property \"issuer\"" + "rowId": "credential MUST have property \"credentialSubject\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22010, + "_idleStart": 29182, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 123, + "duration": 62, "state": "failed", "err": { "name": "AssertionError", "message": "Expected an HTTP error response code.: expected undefined to exist", "showDiff": false, "operator": "strictEqual", - "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:131:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:154:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" } }, { "type": "test", - "title": "credential MUST have property \"issuer\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"credentialSubject\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -13026,32 +16211,67 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "parent": "XQPIk5v_0YiAZdM9T9S22", "ctx": null, - "_testId": "urn:uuid:a5b941fd-ae22-4e4e-8f50-12aa4adeb8d2", + "_testId": "urn:uuid:4065fbd0-3d66-47d9-9d38-52be5bef011a", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SpruceID", - "rowId": "credential MUST have property \"issuer\"" + "rowId": "credential MUST have property \"credentialSubject\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22788, + "_idleStart": 30123, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 25, + "duration": 39, "state": "passed", - "speed": "fast" + "speed": "medium" }, { "type": "test", - "title": "credential MUST have property \"issuer\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"credentialSubject\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", + "ctx": null, + "_testId": "urn:uuid:83242632-cb3c-4e75-9666-713002498fa7", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Trential", + "rowId": "credential MUST have property \"credentialSubject\"" + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 35873, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 212, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential MUST have property \"credentialSubject\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -13061,37 +16281,37 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "parent": "19vf5nnKhcTHOUXbbvxLe", "ctx": null, - "_testId": "urn:uuid:448ca8f7-f300-48cc-bf33-b9a311842213", + "_testId": "urn:uuid:c01349e1-0a75-41b4-93c8-9f419d7f6ca4", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Trinsic", - "rowId": "credential MUST have property \"issuer\"" + "rowId": "credential MUST have property \"credentialSubject\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24232, + "_idleStart": 38198, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 24, + "duration": 34, "state": "passed", "speed": "fast" } ] }, { - "id": "\"credential.issuer\" MUST be a string or an object", + "id": "\"credential.credentialSubject\" MUST be an object", "cells": [ { "type": "test", - "title": "\"credential.issuer\" MUST be a string or an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.credentialSubject\" MUST be an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -13101,32 +16321,43 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "7r5GdTOboJDTtendLaUie", "ctx": null, - "_testId": "urn:uuid:36bbd891-96f2-4bd4-8563-5107c4dc3f2a", + "_testId": "urn:uuid:7c8ffd92-577b-442b-9736-3714438e156c", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "ACA-py", - "rowId": "\"credential.issuer\" MUST be a string or an object" + "rowId": "\"credential.credentialSubject\" MUST be an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 2888, + "_idleStart": 2938, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 294, - "state": "passed", - "speed": "slow" + "duration": 292, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected status code 400 or 422.: expected 500 to be one of [ 400, 422 ]", + "showDiff": true, + "actual": 500, + "expected": [ + 400, + 422 + ], + "operator": "deepStrictEqual", + "stack": "AssertionError: Expected status code 400 or 422.: expected 500 to be one of [ 400, 422 ]\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:14:26)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:168:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } }, { "type": "test", - "title": "\"credential.issuer\" MUST be a string or an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.credentialSubject\" MUST be an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -13136,32 +16367,39 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "OGy1YBvexRzvm4E4rogkf", "ctx": null, - "_testId": "urn:uuid:1ca23c03-f97a-4b51-841e-cac43d2ae549", + "_testId": "urn:uuid:2fd5fa51-7655-46dc-b541-949293b4c4dc", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "apicatalog.com", - "rowId": "\"credential.issuer\" MUST be a string or an object" + "rowId": "\"credential.credentialSubject\" MUST be an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 5390, + "_idleStart": 9230, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 173, - "state": "passed", - "speed": "slow" + "duration": 315, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'content-type': 'application/ld+json', 'x-cloud-trace-context': '9cb57378cce9cf3373b111c6a63dfec0', date: 'Fri, 06 Dec 2024 18:25:59 GMT', server: 'Google Frontend', 'content-length': '681', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist", + "showDiff": false, + "actual": {}, + "operator": "notStrictEqual", + "stack": "AssertionError: Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'content-type': 'application/ld+json', 'x-cloud-trace-context': '9cb57378cce9cf3373b111c6a63dfec0', date: 'Fri, 06 Dec 2024 18:25:59 GMT', server: 'Google Frontend', 'content-length': '681', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:9:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:168:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } }, { "type": "test", - "title": "\"credential.issuer\" MUST be a string or an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.credentialSubject\" MUST be an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -13171,43 +16409,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "W4GKczJeEHTLOnDWS6bAa", "ctx": null, - "_testId": "urn:uuid:a539180e-5357-4b2b-9024-39895e4eda25", + "_testId": "urn:uuid:424caf4b-519f-4952-b34f-8e026caa5d63", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Danube Tech", - "rowId": "\"credential.issuer\" MUST be a string or an object" + "rowId": "\"credential.credentialSubject\" MUST be an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 8466, + "_idleStart": 12498, "_onTimeout": null, - "_repeat": null, - "_destroyed": true - }, - "duration": 239, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected status code 400 or 422.: expected 500 to be one of [ 400, 422 ]", - "showDiff": true, - "actual": 500, - "expected": [ - 400, - 422 - ], - "operator": "deepStrictEqual", - "stack": "AssertionError: Expected status code 400 or 422.: expected 500 to be one of [ 400, 422 ]\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:14:26)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:143:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "_repeat": null, + "_destroyed": true + }, + "duration": 553, + "state": "passed", + "speed": "slow" }, { "type": "test", - "title": "\"credential.issuer\" MUST be a string or an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.credentialSubject\" MUST be an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -13217,39 +16444,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", "ctx": null, - "_testId": "urn:uuid:90bdd138-8043-4d22-9096-5d61e4d8fb95", + "_testId": "urn:uuid:efbf8659-bd7e-4dbf-ad9d-336f76bd1669", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Digital Bazaar", - "rowId": "\"credential.issuer\" MUST be a string or an object" + "rowId": "\"credential.credentialSubject\" MUST be an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 10653, + "_idleStart": 15002, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 92, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'cache-control': 'no-cache, no-store, must-revalidate', pragma: 'no-cache', expires: '0', vary: 'X-HTTP-Method-Override, Accept-Encoding', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', etag: 'W/\"2f3-QMu1z8Klqbk7b1IDRSqskckG+9I\"', 'x-cloud-trace-context': 'b753580c00bdcc9285e618f150bbc2d3', date: 'Fri, 06 Dec 2024 15:12:23 GMT', server: 'Google Frontend', 'content-length': '755', via: '1.1 google', 'alt-svc': 'h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist", - "showDiff": false, - "actual": {}, - "operator": "notStrictEqual", - "stack": "AssertionError: Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'cache-control': 'no-cache, no-store, must-revalidate', pragma: 'no-cache', expires: '0', vary: 'X-HTTP-Method-Override, Accept-Encoding', 'access-control-allow-origin': '*', 'content-type': 'application/json; charset=utf-8', etag: 'W/\"2f3-QMu1z8Klqbk7b1IDRSqskckG+9I\"', 'x-cloud-trace-context': 'b753580c00bdcc9285e618f150bbc2d3', date: 'Fri, 06 Dec 2024 15:12:23 GMT', server: 'Google Frontend', 'content-length': '755', via: '1.1 google', 'alt-svc': 'h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:9:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:143:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "duration": 197, + "state": "passed", + "speed": "slow" }, { "type": "test", - "title": "\"credential.issuer\" MUST be a string or an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.credentialSubject\" MUST be an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -13259,32 +16479,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "9VXOGVr_lsKA13N3NMHmU", "ctx": null, - "_testId": "urn:uuid:163443fe-5103-417e-8abf-4bf10fcf447f", + "_testId": "urn:uuid:b6834512-54a8-4d59-94d6-166f42dccf54", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Digital Credentials Consortium", - "rowId": "\"credential.issuer\" MUST be a string or an object" + "rowId": "\"credential.credentialSubject\" MUST be an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11556, + "_idleStart": 15898, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 18, + "duration": 44, "state": "passed", - "speed": "fast" + "speed": "medium" }, { "type": "test", - "title": "\"credential.issuer\" MUST be a string or an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.credentialSubject\" MUST be an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -13294,32 +16514,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", "ctx": null, - "_testId": "urn:uuid:6a05ff18-37f9-49a4-9ede-f500624b7985", + "_testId": "urn:uuid:82473c51-06b6-46cc-a6dc-762031b54a95", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "EWF", - "rowId": "\"credential.issuer\" MUST be a string or an object" + "rowId": "\"credential.credentialSubject\" MUST be an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 13580, + "_idleStart": 18462, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 361, + "duration": 423, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "\"credential.issuer\" MUST be a string or an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.credentialSubject\" MUST be an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -13329,25 +16549,25 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "D6-GkpPGTPL0wawtrZGDq", "ctx": null, - "_testId": "urn:uuid:e204f878-9013-4efd-afe4-1cc9ca109e42", + "_testId": "urn:uuid:6b0306b6-4782-4c20-8047-35faa5118c55", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "GS1 US", - "rowId": "\"credential.issuer\" MUST be a string or an object" + "rowId": "\"credential.credentialSubject\" MUST be an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 16198, + "_idleStart": 19879, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 113, + "duration": 65, "state": "failed", "err": { "response": {}, @@ -13427,21 +16647,21 @@ "status": 401, "data": { "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: 79131799-dc78-4cff-b494-8aafe5dc1400 Correlation ID: b7277ed8-5b7e-4aa2-8fa8-005de5596230 Timestamp: 2024-12-06 15:12:29Z", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: a91b6331-6a1c-4fcc-8bb4-ff0b0e8e1600 Correlation ID: e8144222-06da-4861-bc04-446729663f39 Timestamp: 2024-12-06 18:26:09Z", "error_codes": [ 7000222 ], - "timestamp": "2024-12-06 15:12:29Z", - "trace_id": "79131799-dc78-4cff-b494-8aafe5dc1400", - "correlation_id": "b7277ed8-5b7e-4aa2-8fa8-005de5596230", + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "a91b6331-6a1c-4fcc-8bb4-ff0b0e8e1600", + "correlation_id": "e8144222-06da-4861-bc04-446729663f39", "error_uri": "https://login.microsoftonline.com/error?code=7000222" } } }, { "type": "test", - "title": "\"credential.issuer\" MUST be a string or an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.credentialSubject\" MUST be an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -13451,32 +16671,43 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "L0KR3rmuFcVxuUSUzaji1", "ctx": null, - "_testId": "urn:uuid:7f54aebd-2db0-4d67-975e-93d9753826b0", + "_testId": "urn:uuid:f770b242-d00f-433f-a2f1-f8680fed2fd0", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Gen Digital", - "rowId": "\"credential.issuer\" MUST be a string or an object" + "rowId": "\"credential.credentialSubject\" MUST be an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17645, + "_idleStart": 21377, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 120, - "state": "passed", - "speed": "slow" + "duration": 34, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected status code 400 or 422.: expected 500 to be one of [ 400, 422 ]", + "showDiff": true, + "actual": 500, + "expected": [ + 400, + 422 + ], + "operator": "deepStrictEqual", + "stack": "AssertionError: Expected status code 400 or 422.: expected 500 to be one of [ 400, 422 ]\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:14:26)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:168:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } }, { "type": "test", - "title": "\"credential.issuer\" MUST be a string or an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.credentialSubject\" MUST be an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -13486,32 +16717,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "P9uyHnIzAqYIng5wxWLft", "ctx": null, - "_testId": "urn:uuid:11342f06-38f3-4693-a6ce-393a1ce02f1c", + "_testId": "urn:uuid:88d331d5-14d5-4fb5-a760-7fefd614e457", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "LearnCard", - "rowId": "\"credential.issuer\" MUST be a string or an object" + "rowId": "\"credential.credentialSubject\" MUST be an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 18677, + "_idleStart": 22631, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 117, + "duration": 238, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "\"credential.issuer\" MUST be a string or an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.credentialSubject\" MUST be an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -13521,32 +16752,67 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "parent": "38LvnuvLSA8PqdST5wKb8", "ctx": null, - "_testId": "urn:uuid:3fae7ecf-5dde-45a1-8901-b8567c204690", + "_testId": "urn:uuid:46da3bcb-20cc-494d-be74-686c4126c480", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Mavennet", - "rowId": "\"credential.issuer\" MUST be a string or an object" + "rowId": "\"credential.credentialSubject\" MUST be an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 20926, + "_idleStart": 24932, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 169, + "duration": 217, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "\"credential.issuer\" MUST be a string or an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.credentialSubject\" MUST be an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "NrRUPGI5Q0vLViuZ7nae2", + "ctx": null, + "_testId": "urn:uuid:d07caf1a-c683-49df-b480-170ba1e1e334", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Procivis One Core", + "rowId": "\"credential.credentialSubject\" MUST be an object" + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 27724, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 501, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "\"credential.credentialSubject\" MUST be an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -13556,38 +16822,38 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "CIVhSrWzaq1ScrdxZdxGd", "ctx": null, - "_testId": "urn:uuid:be9ab041-4fd5-4e0d-885e-eb6c6efe578e", + "_testId": "urn:uuid:bc5bef82-792c-4b62-bb29-63cc8cbf1bd4", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SecureKey", - "rowId": "\"credential.issuer\" MUST be a string or an object" + "rowId": "\"credential.credentialSubject\" MUST be an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22136, + "_idleStart": 29244, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 75, + "duration": 105, "state": "failed", "err": { "name": "AssertionError", "message": "Expected an HTTP error response code.: expected undefined to exist", "showDiff": false, "operator": "strictEqual", - "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:143:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:168:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" } }, { "type": "test", - "title": "\"credential.issuer\" MUST be a string or an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.credentialSubject\" MUST be an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -13597,32 +16863,67 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "parent": "XQPIk5v_0YiAZdM9T9S22", "ctx": null, - "_testId": "urn:uuid:ae4bfd87-1a1a-45af-8c1a-d253ab266b3c", + "_testId": "urn:uuid:a9f680c5-fae5-447d-9aba-f7ae4ea67402", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SpruceID", - "rowId": "\"credential.issuer\" MUST be a string or an object" + "rowId": "\"credential.credentialSubject\" MUST be an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22813, + "_idleStart": 30163, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 107, + "duration": 203, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "\"credential.issuer\" MUST be a string or an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.credentialSubject\" MUST be an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", + "ctx": null, + "_testId": "urn:uuid:09558b62-b7dd-4500-a8fc-398bf54bc214", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Trential", + "rowId": "\"credential.credentialSubject\" MUST be an object" + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 36086, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 1061, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "\"credential.credentialSubject\" MUST be an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -13632,37 +16933,142 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "parent": "19vf5nnKhcTHOUXbbvxLe", "ctx": null, - "_testId": "urn:uuid:103d0870-b7bf-4010-9190-740ee5f85d9f", + "_testId": "urn:uuid:1eb2ccdc-9e1d-419d-86fa-8b6febad95d2", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "Trinsic", - "rowId": "\"credential.issuer\" MUST be a string or an object" + "rowId": "\"credential.credentialSubject\" MUST be an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24255, + "_idleStart": 38233, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 87, + "duration": 125, "state": "passed", "speed": "slow" } ] }, { - "id": "credential MUST have property \"credentialSubject\"", + "id": "credential MAY have property \"expirationDate\"", "cells": [ { "type": "test", - "title": "credential MUST have property \"credentialSubject\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MAY have property \"expirationDate\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "7r5GdTOboJDTtendLaUie", + "ctx": null, + "_testId": "urn:uuid:3fa4b155-997a-4e2c-b8db-bcbde67c1756", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "ACA-py", + "rowId": "credential MAY have property \"expirationDate\"" + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 3231, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 149, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential MAY have property \"expirationDate\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "OGy1YBvexRzvm4E4rogkf", + "ctx": null, + "_testId": "urn:uuid:f85a074f-8649-45a2-9742-84d476642fd8", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "apicatalog.com", + "rowId": "credential MAY have property \"expirationDate\"" + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 9546, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 95, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential MAY have property \"expirationDate\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", + "parent": "W4GKczJeEHTLOnDWS6bAa", + "ctx": null, + "_testId": "urn:uuid:371a5b9a-2b78-4924-bc44-7249ed8dce7b", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Danube Tech", + "rowId": "credential MAY have property \"expirationDate\"" + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 13052, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 171, + "state": "passed", + "speed": "slow" + }, + { + "type": "test", + "title": "credential MAY have property \"expirationDate\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -13672,32 +17078,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "parent": "Hq7UM1Q2IzQu1SbfuCc-v", "ctx": null, - "_testId": "urn:uuid:5d64f735-b164-46e0-b1ab-1c63512745da", + "_testId": "urn:uuid:72d523a2-7862-46dd-89d7-45e7e3400cb9", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "ACA-py", - "rowId": "credential MUST have property \"credentialSubject\"" + "columnId": "Digital Bazaar", + "rowId": "credential MAY have property \"expirationDate\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 3182, + "_idleStart": 15198, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 65, + "duration": 78, "state": "passed", - "speed": "medium" + "speed": "slow" }, { "type": "test", - "title": "credential MUST have property \"credentialSubject\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MAY have property \"expirationDate\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -13707,32 +17113,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "parent": "9VXOGVr_lsKA13N3NMHmU", "ctx": null, - "_testId": "urn:uuid:2ec96422-a7e1-453b-b597-f8d4402b56cf", + "_testId": "urn:uuid:ae5a5618-55f0-4839-9e56-b50313e1ec64", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "apicatalog.com", - "rowId": "credential MUST have property \"credentialSubject\"" + "columnId": "Digital Credentials Consortium", + "rowId": "credential MAY have property \"expirationDate\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 5564, + "_idleStart": 15941, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 43, + "duration": 17, "state": "passed", - "speed": "medium" + "speed": "fast" }, { "type": "test", - "title": "credential MUST have property \"credentialSubject\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MAY have property \"expirationDate\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -13742,32 +17148,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "parent": "nf_-p5_XZh4GmCdxk8Fxh", "ctx": null, - "_testId": "urn:uuid:3b308952-5b3c-46be-93f6-a0878b960ce5", + "_testId": "urn:uuid:70a5133d-35b7-45f8-8d1f-2044d4e95e60", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Danube Tech", - "rowId": "credential MUST have property \"credentialSubject\"" + "columnId": "EWF", + "rowId": "credential MAY have property \"expirationDate\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 8707, + "_idleStart": 18886, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 116, + "duration": 122, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "credential MUST have property \"credentialSubject\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MAY have property \"expirationDate\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -13777,32 +17183,119 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "parent": "D6-GkpPGTPL0wawtrZGDq", "ctx": null, - "_testId": "urn:uuid:d68fe5bd-8a63-4e98-b62d-66b26528ddd5", + "_testId": "urn:uuid:fbf0d57d-4185-4b9f-a119-bc06db0beebc", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Digital Bazaar", - "rowId": "credential MUST have property \"credentialSubject\"" + "columnId": "GS1 US", + "rowId": "credential MAY have property \"expirationDate\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 10746, + "_idleStart": 19944, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 44, - "state": "passed", - "speed": "medium" + "duration": 105, + "state": "failed", + "err": { + "response": {}, + "request": {}, + "options": { + "credentials": "same-origin", + "headers": {}, + "body": {}, + "method": "POST", + "agent": { + "_events": {}, + "_eventsCount": 2, + "defaultPort": 443, + "protocol": "https:", + "options": { + "rejectUnauthorized": false, + "noDelay": true, + "path": null + }, + "requests": {}, + "sockets": {}, + "freeSockets": {}, + "keepAliveMsecs": 1000, + "keepAlive": false, + "maxSockets": null, + "maxFreeSockets": 256, + "scheduling": "lifo", + "maxTotalSockets": null, + "totalSocketCount": 0, + "maxCachedSessions": 100, + "_sessionCache": { + "map": {}, + "list": [] + } + }, + "hooks": { + "beforeRequest": [], + "beforeRetry": [], + "beforeError": [], + "afterResponse": [] + }, + "prefixUrl": "", + "retry": { + "limit": 2, + "methods": [ + "get", + "put", + "head", + "delete", + "options", + "trace" + ], + "statusCodes": [ + 408, + 413, + 429, + 500, + 502, + 503, + 504 + ], + "afterStatusCodes": [ + 413, + 429, + 503 + ], + "maxRetryAfter": null, + "backoffLimit": null + }, + "throwHttpErrors": true, + "timeout": 10000, + "signal": {}, + "duplex": "half" + }, + "name": "HTTPError", + "requestUrl": "https://login.microsoftonline.com/e5e65807-3d2a-4f67-a262-72f255868da0/oauth2/v2.0/token", + "status": 401, + "data": { + "error": "invalid_client", + "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: 33927d68-a03b-47f2-8b6e-b676d8402c00 Correlation ID: 2c0a4748-c3ee-4b0b-b747-4379f5663dde Timestamp: 2024-12-06 18:26:09Z", + "error_codes": [ + 7000222 + ], + "timestamp": "2024-12-06 18:26:09Z", + "trace_id": "33927d68-a03b-47f2-8b6e-b676d8402c00", + "correlation_id": "2c0a4748-c3ee-4b0b-b747-4379f5663dde", + "error_uri": "https://login.microsoftonline.com/error?code=7000222" + } + } }, { "type": "test", - "title": "credential MUST have property \"credentialSubject\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MAY have property \"expirationDate\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -13812,32 +17305,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "parent": "L0KR3rmuFcVxuUSUzaji1", "ctx": null, - "_testId": "urn:uuid:c808c1ab-6d47-4de5-bf82-27ac478c64cc", + "_testId": "urn:uuid:ebfdb49d-8f66-4bbf-bb82-3a3eb7f65b86", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Digital Credentials Consortium", - "rowId": "credential MUST have property \"credentialSubject\"" + "columnId": "Gen Digital", + "rowId": "credential MAY have property \"expirationDate\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11575, + "_idleStart": 21412, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 5, + "duration": 90, "state": "passed", - "speed": "fast" + "speed": "slow" }, { "type": "test", - "title": "credential MUST have property \"credentialSubject\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MAY have property \"expirationDate\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -13847,32 +17340,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "parent": "P9uyHnIzAqYIng5wxWLft", "ctx": null, - "_testId": "urn:uuid:ca7790a5-70fe-4e79-862e-08def409a5e4", + "_testId": "urn:uuid:60f63368-e02a-4d18-b6cf-49b026ed5445", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "EWF", - "rowId": "credential MUST have property \"credentialSubject\"" + "columnId": "LearnCard", + "rowId": "credential MAY have property \"expirationDate\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 13942, + "_idleStart": 22870, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 89, + "duration": 93, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "credential MUST have property \"credentialSubject\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MAY have property \"expirationDate\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -13882,119 +17375,143 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "parent": "38LvnuvLSA8PqdST5wKb8", "ctx": null, - "_testId": "urn:uuid:901d13bc-b657-4974-ad4c-2a57667698e8", + "_testId": "urn:uuid:542c4891-f67e-4bac-af02-16ad69164778", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "GS1 US", - "rowId": "credential MUST have property \"credentialSubject\"" + "columnId": "Mavennet", + "rowId": "credential MAY have property \"expirationDate\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 16312, + "_idleStart": 25150, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 95, + "duration": 42, "state": "failed", "err": { - "response": {}, - "request": {}, - "options": { - "credentials": "same-origin", - "headers": {}, - "body": {}, - "method": "POST", - "agent": { - "_events": {}, - "_eventsCount": 2, - "defaultPort": 443, - "protocol": "https:", - "options": { - "rejectUnauthorized": false, - "noDelay": true, - "path": null + "name": "AssertionError", + "message": "Expected no error, got credential.validFrom must be a valid ISO 8601 date string,credential.validFrom should not be empty: expected HTTPError { message: [ …(2) ], …(6) } to not exist", + "showDiff": false, + "actual": { + "response": {}, + "request": {}, + "options": { + "credentials": "same-origin", + "headers": {}, + "body": "{\"credential\":{\"@context\":[\"https://www.w3.org/2018/credentials/v1\"],\"type\":[\"VerifiableCredential\"],\"credentialSubject\":{\"id\":\"did:key:z6MkhTNL7i2etLerDK8Acz5t528giE5KA4p75T6ka1E1D74r\"},\"issuanceDate\":\"2024-12-06T18:26:15Z\",\"id\":\"urn:uuid:fbd01228-66f6-425e-9751-cf6577b4e6cd\",\"issuer\":\"did:key:z6MkfFjyzk5CKMdnLacqay3kLMMaZEvKr8yxhks2HezmF4X3\",\"expirationDate\":\"2025-12-06T18:26:15Z\"},\"options\":{\"type\":\"Ed25519Signature2018\"}}", + "method": "POST", + "json": { + "credential": { + "@context": [ + "https://www.w3.org/2018/credentials/v1" + ], + "type": [ + "VerifiableCredential" + ], + "credentialSubject": { + "id": "did:key:z6MkhTNL7i2etLerDK8Acz5t528giE5KA4p75T6ka1E1D74r" + }, + "issuanceDate": "2024-12-06T18:26:15Z", + "id": "urn:uuid:fbd01228-66f6-425e-9751-cf6577b4e6cd", + "issuer": "did:key:z6MkfFjyzk5CKMdnLacqay3kLMMaZEvKr8yxhks2HezmF4X3", + "expirationDate": "2025-12-06T18:26:15Z" + }, + "options": { + "type": "Ed25519Signature2018" + } + }, + "agent": { + "_events": {}, + "_eventsCount": 2, + "defaultPort": 443, + "protocol": "https:", + "options": { + "rejectUnauthorized": false, + "noDelay": true, + "path": null + }, + "requests": {}, + "sockets": {}, + "freeSockets": {}, + "keepAliveMsecs": 1000, + "keepAlive": false, + "maxSockets": null, + "maxFreeSockets": 256, + "scheduling": "lifo", + "maxTotalSockets": null, + "totalSocketCount": 0, + "maxCachedSessions": 100, + "_sessionCache": { + "map": {}, + "list": [] + } + }, + "hooks": { + "beforeRequest": [], + "beforeRetry": [], + "beforeError": [], + "afterResponse": [] + }, + "prefixUrl": "", + "retry": { + "limit": 2, + "methods": [ + "get", + "put", + "head", + "delete", + "options", + "trace" + ], + "statusCodes": [ + 408, + 413, + 429, + 500, + 502, + 503, + 504 + ], + "afterStatusCodes": [ + 413, + 429, + 503 + ], + "maxRetryAfter": null, + "backoffLimit": null }, - "requests": {}, - "sockets": {}, - "freeSockets": {}, - "keepAliveMsecs": 1000, - "keepAlive": false, - "maxSockets": null, - "maxFreeSockets": 256, - "scheduling": "lifo", - "maxTotalSockets": null, - "totalSocketCount": 0, - "maxCachedSessions": 100, - "_sessionCache": { - "map": {}, - "list": [] - } - }, - "hooks": { - "beforeRequest": [], - "beforeRetry": [], - "beforeError": [], - "afterResponse": [] + "throwHttpErrors": true, + "timeout": 10000, + "signal": {}, + "duplex": "half" }, - "prefixUrl": "", - "retry": { - "limit": 2, - "methods": [ - "get", - "put", - "head", - "delete", - "options", - "trace" - ], - "statusCodes": [ - 408, - 413, - 429, - 500, - 502, - 503, - 504 - ], - "afterStatusCodes": [ - 413, - 429, - 503 + "name": "HTTPError", + "requestUrl": "https://api.staging.refiner.neoflow.energy/credentials/issue", + "status": 400, + "data": { + "message": [ + "credential.validFrom must be a valid ISO 8601 date string", + "credential.validFrom should not be empty" ], - "maxRetryAfter": null, - "backoffLimit": null - }, - "throwHttpErrors": true, - "timeout": 10000, - "signal": {}, - "duplex": "half" + "error": "Bad Request", + "statusCode": 400 + } }, - "name": "HTTPError", - "requestUrl": "https://login.microsoftonline.com/e5e65807-3d2a-4f67-a262-72f255868da0/oauth2/v2.0/token", - "status": 401, - "data": { - "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: a523d6d5-2be8-4d6d-980c-36a98f623000 Correlation ID: 7aac093d-00c2-49d2-b9a7-a4e2683be4d2 Timestamp: 2024-12-06 15:12:29Z", - "error_codes": [ - 7000222 - ], - "timestamp": "2024-12-06 15:12:29Z", - "trace_id": "a523d6d5-2be8-4d6d-980c-36a98f623000", - "correlation_id": "7aac093d-00c2-49d2-b9a7-a4e2683be4d2", - "error_uri": "https://login.microsoftonline.com/error?code=7000222" - } + "operator": "notStrictEqual", + "stack": "AssertionError: Expected no error, got credential.validFrom must be a valid ISO 8601 date string,credential.validFrom should not be empty: expected HTTPError { message: [ …(2) ], …(6) } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldReturnResult (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:19:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:193:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" } }, { "type": "test", - "title": "credential MUST have property \"credentialSubject\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MAY have property \"expirationDate\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14004,43 +17521,141 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "parent": "NrRUPGI5Q0vLViuZ7nae2", "ctx": null, - "_testId": "urn:uuid:ed62f04f-2de6-4a0f-9109-8d50fe4a0a6c", + "_testId": "urn:uuid:bc637b0b-249b-47a9-b308-fc604b24eb9f", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Gen Digital", - "rowId": "credential MUST have property \"credentialSubject\"" + "columnId": "Procivis One Core", + "rowId": "credential MAY have property \"expirationDate\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17764, + "_idleStart": 28226, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 31, + "duration": 100, "state": "failed", "err": { "name": "AssertionError", - "message": "Expected status code 400 or 422.: expected 500 to be one of [ 400, 422 ]", - "showDiff": true, - "actual": 500, - "expected": [ - 400, - 422 - ], - "operator": "deepStrictEqual", - "stack": "AssertionError: Expected status code 400 or 422.: expected 500 to be one of [ 400, 422 ]\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:14:26)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:154:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + "message": "Expected no error, got Request failed with status code 400 Bad Request: expected HTTPError: Request failed with status cod… { …(6) } to not exist", + "showDiff": false, + "actual": { + "response": {}, + "request": {}, + "options": { + "credentials": "same-origin", + "headers": {}, + "body": "{\"credential\":{\"@context\":[\"https://www.w3.org/2018/credentials/v1\"],\"type\":[\"VerifiableCredential\"],\"credentialSubject\":{\"id\":\"did:key:z6MkhTNL7i2etLerDK8Acz5t528giE5KA4p75T6ka1E1D74r\"},\"issuanceDate\":\"2024-12-06T18:26:18Z\",\"id\":\"urn:uuid:27276691-fda4-4ea7-8c7a-7c527ac4aa93\",\"issuer\":\"did:key:zDnaebiWvYW4sEFcncp6sLRmGPio1tVaXSDBwnYELtyvwpnYE\",\"expirationDate\":\"2025-12-06T18:26:18Z\"}}", + "method": "POST", + "json": { + "credential": { + "@context": [ + "https://www.w3.org/2018/credentials/v1" + ], + "type": [ + "VerifiableCredential" + ], + "credentialSubject": { + "id": "did:key:z6MkhTNL7i2etLerDK8Acz5t528giE5KA4p75T6ka1E1D74r" + }, + "issuanceDate": "2024-12-06T18:26:18Z", + "id": "urn:uuid:27276691-fda4-4ea7-8c7a-7c527ac4aa93", + "issuer": "did:key:zDnaebiWvYW4sEFcncp6sLRmGPio1tVaXSDBwnYELtyvwpnYE", + "expirationDate": "2025-12-06T18:26:18Z" + } + }, + "agent": { + "_events": {}, + "_eventsCount": 2, + "defaultPort": 443, + "protocol": "https:", + "options": { + "rejectUnauthorized": false, + "noDelay": true, + "path": null + }, + "requests": {}, + "sockets": {}, + "freeSockets": {}, + "keepAliveMsecs": 1000, + "keepAlive": false, + "maxSockets": null, + "maxFreeSockets": 256, + "scheduling": "lifo", + "maxTotalSockets": null, + "totalSocketCount": 0, + "maxCachedSessions": 100, + "_sessionCache": { + "map": {}, + "list": [] + } + }, + "hooks": { + "beforeRequest": [], + "beforeRetry": [], + "beforeError": [], + "afterResponse": [] + }, + "prefixUrl": "", + "retry": { + "limit": 2, + "methods": [ + "get", + "put", + "head", + "delete", + "options", + "trace" + ], + "statusCodes": [ + 408, + 413, + 429, + 500, + 502, + 503, + 504 + ], + "afterStatusCodes": [ + 413, + 429, + 503 + ], + "maxRetryAfter": null, + "backoffLimit": null + }, + "throwHttpErrors": true, + "timeout": 10000, + "signal": {}, + "duplex": "half" + }, + "name": "HTTPError", + "requestUrl": "https://canivc.core.dev.procivis-one.com/vc-api/credentials/issue", + "status": 400, + "data": { + "errors": [ + { + "status": 400, + "title": "Failed to deserialize the JSON body into the target type", + "detail": null + } + ] + } + }, + "operator": "notStrictEqual", + "stack": "AssertionError: Expected no error, got Request failed with status code 400 Bad Request: expected HTTPError: Request failed with status cod… { …(6) } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldReturnResult (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:19:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:193:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" } }, { "type": "test", - "title": "credential MUST have property \"credentialSubject\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MAY have property \"expirationDate\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14050,32 +17665,41 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "parent": "CIVhSrWzaq1ScrdxZdxGd", "ctx": null, - "_testId": "urn:uuid:a3ad9a5b-5df2-4d92-9bf4-88ef4018c4ff", + "_testId": "urn:uuid:6c6145bd-598a-4c4e-aba8-f90853c38f2c", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "LearnCard", - "rowId": "credential MUST have property \"credentialSubject\"" + "columnId": "SecureKey", + "rowId": "credential MAY have property \"expirationDate\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 18795, + "_idleStart": 29349, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 29, - "state": "passed", - "speed": "fast" + "duration": 19, + "state": "failed", + "err": { + "name": "AssertionError", + "message": "Expected no error, got fetch failed: expected TypeError: fetch failed { …(2) } to not exist", + "showDiff": false, + "actual": { + "requestUrl": "https://issuer-vcs.sandbox.trustbloc.dev/vc-issuer-interop-key/credentials/issue" + }, + "operator": "notStrictEqual", + "stack": "AssertionError: Expected no error, got fetch failed: expected TypeError: fetch failed { …(2) } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldReturnResult (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:19:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:193:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" + } }, { "type": "test", - "title": "credential MUST have property \"credentialSubject\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MAY have property \"expirationDate\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14085,32 +17709,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "parent": "XQPIk5v_0YiAZdM9T9S22", "ctx": null, - "_testId": "urn:uuid:fcd5489f-19dc-4e9f-9ea0-3abf343d34a8", + "_testId": "urn:uuid:e3b38ad2-4686-436c-8862-770f896313d7", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Mavennet", - "rowId": "credential MUST have property \"credentialSubject\"" + "columnId": "SpruceID", + "rowId": "credential MAY have property \"expirationDate\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 21095, + "_idleStart": 30366, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 50, + "duration": 31, "state": "passed", - "speed": "medium" + "speed": "fast" }, { "type": "test", - "title": "credential MUST have property \"credentialSubject\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MAY have property \"expirationDate\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14120,38 +17744,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "parent": "ZbRzBjzxVmNmsSiyZnE_u", "ctx": null, - "_testId": "urn:uuid:cb9579e1-b6f3-4f96-8ca0-956cf9993c1a", + "_testId": "urn:uuid:22ef5be6-5feb-4478-b385-7319faae502a", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SecureKey", - "rowId": "credential MUST have property \"credentialSubject\"" + "columnId": "Trential", + "rowId": "credential MAY have property \"expirationDate\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22211, + "_idleStart": 37147, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 7, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected an HTTP error response code.: expected undefined to exist", - "showDiff": false, - "operator": "strictEqual", - "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:154:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "duration": 219, + "state": "passed", + "speed": "slow" }, { "type": "test", - "title": "credential MUST have property \"credentialSubject\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MAY have property \"expirationDate\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14161,32 +17779,45 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "parent": "19vf5nnKhcTHOUXbbvxLe", "ctx": null, - "_testId": "urn:uuid:5024fee2-3555-4466-adad-cf38404cefc2", + "_testId": "urn:uuid:20357161-3f45-4841-a6da-31de5dce0420", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", - "rowId": "credential MUST have property \"credentialSubject\"" + "columnId": "Trinsic", + "rowId": "credential MAY have property \"expirationDate\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22920, + "_idleStart": 38358, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 30, - "state": "passed", - "speed": "fast" - }, + "duration": 40, + "state": "passed", + "speed": "medium" + } + ] + } + ] + }, + { + "title": "Issue Credential - JWT", + "ctx": null, + "suites": [ + { + "title": "SpruceID", + "ctx": null, + "suites": [], + "tests": [ { "type": "test", - "title": "credential MUST have property \"credentialSubject\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "MUST successfully issue a credential.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n should.exist(result, 'Expected result from issuer.');\n should.exist(issuedVc, 'Expected result to have data.');\n should.not.exist(error, 'Expected issuer to not Error.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14195,38 +17826,33 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:3a05c38f-7b48-4ab5-a510-d8b3a4771a1d", + "_testId": "urn:uuid:373c4603-81af-47eb-8eaf-5c5e03a26289", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Trinsic", - "rowId": "credential MUST have property \"credentialSubject\"" + "columnId": "SpruceID", + "rowId": "MUST successfully issue a credential." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24343, + "_idleStart": 38399, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 16, + "duration": 76, "state": "passed", - "speed": "fast" - } - ] - }, - { - "id": "\"credential.credentialSubject\" MUST be an object", - "cells": [ + "speed": "slow" + }, { "type": "test", - "title": "\"credential.credentialSubject\" MUST be an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "Request body MUST have property \"credential\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14235,44 +17861,33 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:ec91d01f-dd7b-4047-a9ed-0872a585b5b2", + "_testId": "urn:uuid:34be342a-0411-4fde-bcc5-555047645f7b", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "ACA-py", - "rowId": "\"credential.credentialSubject\" MUST be an object" + "columnId": "SpruceID", + "rowId": "Request body MUST have property \"credential\"." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 3247, + "_idleStart": 38475, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 276, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected status code 400 or 422.: expected 500 to be one of [ 400, 422 ]", - "showDiff": true, - "actual": 500, - "expected": [ - 400, - 422 - ], - "operator": "deepStrictEqual", - "stack": "AssertionError: Expected status code 400 or 422.: expected 500 to be one of [ 400, 422 ]\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:14:26)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:168:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "duration": 27, + "state": "passed", + "speed": "fast" }, { "type": "test", - "title": "\"credential.credentialSubject\" MUST be an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "credential MUST have property \"@context\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14281,40 +17896,33 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:cd34495e-5fd3-4e98-8859-d3bec40300e6", + "_testId": "urn:uuid:60192e67-8aee-465a-b4a6-fe461b8de52f", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "apicatalog.com", - "rowId": "\"credential.credentialSubject\" MUST be an object" + "columnId": "SpruceID", + "rowId": "credential MUST have property \"@context\"." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 5606, + "_idleStart": 38503, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 274, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'content-type': 'application/ld+json', 'x-cloud-trace-context': 'bcb5c28f403e99f0280dee8ee8154c4f', date: 'Fri, 06 Dec 2024 15:12:19 GMT', server: 'Google Frontend', 'content-length': '681', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist", - "showDiff": false, - "actual": {}, - "operator": "notStrictEqual", - "stack": "AssertionError: Expected no result from issuer.: expected Response { status: 201, statusText: 'Created', headers: Headers { 'content-type': 'application/ld+json', 'x-cloud-trace-context': 'bcb5c28f403e99f0280dee8ee8154c4f', date: 'Fri, 06 Dec 2024 15:12:19 GMT', server: 'Google Frontend', 'content-length': '681', Authorization: '** SANITIZED TO PREVENT EXPOSING OF SECRETS ***' }, body: ReadableStream { locked: false, state: 'readable', supportsBYOB: true }, bodyUsed: false, ok: true, redirected: false, type: 'default', url: '' } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:9:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:168:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "duration": 22, + "state": "passed", + "speed": "fast" }, { "type": "test", - "title": "\"credential.credentialSubject\" MUST be an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "credential \"@context\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14323,33 +17931,33 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:d8577473-7c93-4d75-88af-88cc7ba4c5af", + "_testId": "urn:uuid:d3bbdf3a-6d82-4919-ba7f-eb2f93ec7661", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Danube Tech", - "rowId": "\"credential.credentialSubject\" MUST be an object" + "columnId": "SpruceID", + "rowId": "credential \"@context\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 8823, + "_idleStart": 38526, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 553, + "duration": 22, "state": "passed", - "speed": "slow" + "speed": "fast" }, { "type": "test", - "title": "\"credential.credentialSubject\" MUST be an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "credential \"@context\" items MUST be strings.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14358,33 +17966,33 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:845477c8-22b3-485b-b969-604db36558a5", + "_testId": "urn:uuid:397abd79-84d0-4fed-8419-3b37995abc11", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Digital Bazaar", - "rowId": "\"credential.credentialSubject\" MUST be an object" + "columnId": "SpruceID", + "rowId": "credential \"@context\" items MUST be strings." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 10790, + "_idleStart": 38548, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 189, + "duration": 187, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "\"credential.credentialSubject\" MUST be an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "credential MUST have property \"type\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14393,33 +18001,33 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:9bc8b1b5-3b76-4f62-9dae-7777ae3874b6", + "_testId": "urn:uuid:6d15a2e7-f61e-42fb-9ca3-5b287042807e", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Digital Credentials Consortium", - "rowId": "\"credential.credentialSubject\" MUST be an object" + "columnId": "SpruceID", + "rowId": "credential MUST have property \"type\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11581, + "_idleStart": 38735, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 24, + "duration": 27, "state": "passed", "speed": "fast" }, { "type": "test", - "title": "\"credential.credentialSubject\" MUST be an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.type\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14428,33 +18036,33 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:b99e73d0-457f-4f9e-9182-ba67dc831777", + "_testId": "urn:uuid:f2fc17d4-dfed-486e-9505-7857b2e5cad2", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "EWF", - "rowId": "\"credential.credentialSubject\" MUST be an object" + "columnId": "SpruceID", + "rowId": "\"credential.type\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 14032, + "_idleStart": 38763, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 451, + "duration": 22, "state": "passed", - "speed": "slow" + "speed": "fast" }, { "type": "test", - "title": "\"credential.credentialSubject\" MUST be an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.type\" items MUST be strings", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14463,120 +18071,33 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:468d1b74-0a72-4e2e-a110-94835a4d1b49", + "_testId": "urn:uuid:7e2dd51e-cb52-4ab9-a480-fb867ca5859d", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "GS1 US", - "rowId": "\"credential.credentialSubject\" MUST be an object" + "columnId": "SpruceID", + "rowId": "\"credential.type\" items MUST be strings" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 16407, + "_idleStart": 38784, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 153, - "state": "failed", - "err": { - "response": {}, - "request": {}, - "options": { - "credentials": "same-origin", - "headers": {}, - "body": {}, - "method": "POST", - "agent": { - "_events": {}, - "_eventsCount": 2, - "defaultPort": 443, - "protocol": "https:", - "options": { - "rejectUnauthorized": false, - "noDelay": true, - "path": null - }, - "requests": {}, - "sockets": {}, - "freeSockets": {}, - "keepAliveMsecs": 1000, - "keepAlive": false, - "maxSockets": null, - "maxFreeSockets": 256, - "scheduling": "lifo", - "maxTotalSockets": null, - "totalSocketCount": 0, - "maxCachedSessions": 100, - "_sessionCache": { - "map": {}, - "list": [] - } - }, - "hooks": { - "beforeRequest": [], - "beforeRetry": [], - "beforeError": [], - "afterResponse": [] - }, - "prefixUrl": "", - "retry": { - "limit": 2, - "methods": [ - "get", - "put", - "head", - "delete", - "options", - "trace" - ], - "statusCodes": [ - 408, - 413, - 429, - 500, - 502, - 503, - 504 - ], - "afterStatusCodes": [ - 413, - 429, - 503 - ], - "maxRetryAfter": null, - "backoffLimit": null - }, - "throwHttpErrors": true, - "timeout": 10000, - "signal": {}, - "duplex": "half" - }, - "name": "HTTPError", - "requestUrl": "https://login.microsoftonline.com/e5e65807-3d2a-4f67-a262-72f255868da0/oauth2/v2.0/token", - "status": 401, - "data": { - "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: d25c09cf-c209-46cf-815d-f52d928d1100 Correlation ID: 6907c55e-192f-4acf-85e7-609b693aa566 Timestamp: 2024-12-06 15:12:29Z", - "error_codes": [ - 7000222 - ], - "timestamp": "2024-12-06 15:12:29Z", - "trace_id": "d25c09cf-c209-46cf-815d-f52d928d1100", - "correlation_id": "6907c55e-192f-4acf-85e7-609b693aa566", - "error_uri": "https://login.microsoftonline.com/error?code=7000222" - } - } + "duration": 99, + "state": "passed", + "speed": "slow" }, { "type": "test", - "title": "\"credential.credentialSubject\" MUST be an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "credential MUST have property \"issuer\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14585,44 +18106,33 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:fd2af84f-2413-4bb6-98d9-885bc687b30f", + "_testId": "urn:uuid:6e4c11b1-7613-4280-b4fd-0b49dbc21162", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Gen Digital", - "rowId": "\"credential.credentialSubject\" MUST be an object" + "columnId": "SpruceID", + "rowId": "credential MUST have property \"issuer\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17795, + "_idleStart": 38883, "_onTimeout": null, - "_repeat": null, - "_destroyed": true - }, - "duration": 31, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected status code 400 or 422.: expected 500 to be one of [ 400, 422 ]", - "showDiff": true, - "actual": 500, - "expected": [ - 400, - 422 - ], - "operator": "deepStrictEqual", - "stack": "AssertionError: Expected status code 400 or 422.: expected 500 to be one of [ 400, 422 ]\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:14:26)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:168:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "_repeat": null, + "_destroyed": true + }, + "duration": 21, + "state": "passed", + "speed": "fast" }, { "type": "test", - "title": "\"credential.credentialSubject\" MUST be an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.issuer\" MUST be a string or an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14631,33 +18141,33 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:b86da1c5-7426-4af3-a472-c011aed109d2", + "_testId": "urn:uuid:28203748-9753-449c-888f-bc91053f4abd", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "LearnCard", - "rowId": "\"credential.credentialSubject\" MUST be an object" + "columnId": "SpruceID", + "rowId": "\"credential.issuer\" MUST be a string or an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 18825, + "_idleStart": 38905, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 165, + "duration": 88, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "\"credential.credentialSubject\" MUST be an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "credential MUST have property \"credentialSubject\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14666,33 +18176,33 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:cb2827a2-f3e4-424c-acce-1b87ff24cd19", + "_testId": "urn:uuid:8dcf5b74-81c2-4155-a1a1-cfda4cff5c8d", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Mavennet", - "rowId": "\"credential.credentialSubject\" MUST be an object" + "columnId": "SpruceID", + "rowId": "credential MUST have property \"credentialSubject\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 21145, + "_idleStart": 38992, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 202, + "duration": 29, "state": "passed", - "speed": "slow" + "speed": "fast" }, { "type": "test", "title": "\"credential.credentialSubject\" MUST be an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes = [null, true, 4, []];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14701,39 +18211,33 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:98ecfc17-5aea-4d95-809f-ebd8dd4f3c43", + "_testId": "urn:uuid:1013402c-47e5-4639-a69f-ae5e9ad244d6", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SecureKey", + "columnId": "SpruceID", "rowId": "\"credential.credentialSubject\" MUST be an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22218, + "_idleStart": 39021, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 40, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected an HTTP error response code.: expected undefined to exist", - "showDiff": false, - "operator": "strictEqual", - "stack": "AssertionError: Expected an HTTP error response code.: expected undefined to exist\n at should.exist (node_modules/chai/lib/chai/interface/should.js:144:34)\n at shouldThrowInvalidInput (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:11:10)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:168:11)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "duration": 99, + "state": "passed", + "speed": "slow" }, { "type": "test", - "title": "\"credential.credentialSubject\" MUST be an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "credential MAY have property \"issuanceDate\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.issuanceDate = new Date().toISOString()\n .replace('.000Z', 'Z');\n const {result, error} = await issuer.post({json: body});\n should.exist(result, 'Expected result from issuer.');\n should.not.exist(error, 'Expected issuer to not Error.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14742,33 +18246,33 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:66b17ae4-7af3-4bae-86f8-b55c1c8315e0", + "_testId": "urn:uuid:9f218d15-ae25-4397-8fb3-fd569fd216a2", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SpruceID", - "rowId": "\"credential.credentialSubject\" MUST be an object" + "rowId": "credential MAY have property \"issuanceDate\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22950, + "_idleStart": 39121, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 107, + "duration": 29, "state": "passed", - "speed": "slow" + "speed": "fast" }, { "type": "test", - "title": "\"credential.credentialSubject\" MUST be an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes =\n [null, true, 4, [], 'did:example:1234'];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "credential MAY have property \"expirationDate\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYear = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = new Date(oneYear).toISOString()\n .replace('.000Z', 'Z');\n const {result, error} = await issuer.post({json: body});\n should.exist(result, 'Expected result from issuer.');\n should.not.exist(error, 'Expected issuer to not Error.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14777,38 +18281,56 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:045c5896-0961-44bd-87fc-e044354171eb", + "_testId": "urn:uuid:6e6938ee-b3b9-4c25-b72b-b17dbae38e62", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Trinsic", - "rowId": "\"credential.credentialSubject\" MUST be an object" + "columnId": "SpruceID", + "rowId": "credential MAY have property \"expirationDate\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24360, + "_idleStart": 39151, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 111, + "duration": 39, "state": "passed", - "speed": "slow" + "speed": "medium" } - ] + ], + "root": false, + "pending": false, + "_retries": -1, + "_beforeEach": [], + "_beforeAll": [], + "_afterEach": [], + "_afterAll": [], + "_timeout": 15000, + "_slow": 75, + "_bail": false, + "_onlyTests": [], + "_onlySuites": [], + "delayed": false, + "parent": "TYBOoQrSkDy0XlV9jFkyj", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "_testId": "urn:uuid:6e2a56c4-8d83-459d-af56-818baec88bfb" }, { - "id": "credential MAY have property \"expirationDate\"", - "cells": [ + "title": "Trential", + "ctx": null, + "suites": [], + "tests": [ { "type": "test", - "title": "credential MAY have property \"expirationDate\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", + "title": "MUST successfully issue a credential.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n should.exist(result, 'Expected result from issuer.');\n should.exist(issuedVc, 'Expected result to have data.');\n should.not.exist(error, 'Expected issuer to not Error.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14817,33 +18339,33 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "R8viz7zkvLCGNYVvNKT1U", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:7ea1885a-1981-42a7-ac4e-a4cdfbfc9e2e", + "_testId": "urn:uuid:b09d30a7-5c62-4734-b66b-9974ddd8ea65", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "ACA-py", - "rowId": "credential MAY have property \"expirationDate\"" + "columnId": "Trential", + "rowId": "MUST successfully issue a credential." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 3523, + "_idleStart": 39190, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 99, + "duration": 217, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "credential MAY have property \"expirationDate\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", + "title": "Request body MUST have property \"credential\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14852,33 +18374,33 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "8_daXRAu3drue_DvHyZH4", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:f0f71f14-60b1-494d-9fde-9e879184a399", + "_testId": "urn:uuid:aff2a7ef-67f7-4182-b769-d31d25ccacf6", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "apicatalog.com", - "rowId": "credential MAY have property \"expirationDate\"" + "columnId": "Trential", + "rowId": "Request body MUST have property \"credential\"." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 5882, + "_idleStart": 39408, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 90, + "duration": 215, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "credential MAY have property \"expirationDate\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", + "title": "credential MUST have property \"@context\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14887,33 +18409,33 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "cFi7gaoe0tYmLqAypVF3n", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:b6c72726-09f3-4991-a51c-790cc5cda7c9", + "_testId": "urn:uuid:ff2e1ebc-1acd-4a65-85e3-eb3a668f56e2", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Danube Tech", - "rowId": "credential MAY have property \"expirationDate\"" + "columnId": "Trential", + "rowId": "credential MUST have property \"@context\"." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 9376, + "_idleStart": 39622, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 165, + "duration": 212, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "credential MAY have property \"expirationDate\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", + "title": "credential \"@context\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14922,33 +18444,33 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "rSRwCHEJDwbZ2cAvB0KwJ", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:cc011cca-3673-4747-85e3-d7581bd5cf49", + "_testId": "urn:uuid:2d9496f0-f8a1-489c-9e0d-9bfab992849f", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Digital Bazaar", - "rowId": "credential MAY have property \"expirationDate\"" + "columnId": "Trential", + "rowId": "credential \"@context\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 10979, + "_idleStart": 39835, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 80, + "duration": 213, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "credential MAY have property \"expirationDate\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", + "title": "credential \"@context\" items MUST be strings.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14957,33 +18479,33 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "doEp1jfQtCMymjiLGd_gZ", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:9549b01a-e0c9-4024-b317-a49a535812ce", + "_testId": "urn:uuid:bead8da1-212f-42ca-9765-fde1bbf594db", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Digital Credentials Consortium", - "rowId": "credential MAY have property \"expirationDate\"" + "columnId": "Trential", + "rowId": "credential \"@context\" items MUST be strings." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 11605, + "_idleStart": 40049, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 14, + "duration": 849, "state": "passed", - "speed": "fast" + "speed": "slow" }, { "type": "test", - "title": "credential MAY have property \"expirationDate\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", + "title": "credential MUST have property \"type\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -14992,33 +18514,33 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "N7ikmNARdiQusAFDIeIJF", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:efec4451-63c5-4dab-b873-6108a5cbc015", + "_testId": "urn:uuid:e06572ee-ff69-41e4-b218-f5ca99eef1d2", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "EWF", - "rowId": "credential MAY have property \"expirationDate\"" + "columnId": "Trential", + "rowId": "credential MUST have property \"type\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 14483, + "_idleStart": 40897, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 97, + "duration": 215, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "credential MAY have property \"expirationDate\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", + "title": "\"credential.type\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -15027,120 +18549,33 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "FIuisbiyKuTSWtEp5vjZp", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:ead8a22e-004f-4b3f-b424-5b14f5086d39", + "_testId": "urn:uuid:de402872-be71-4fef-863e-c0d867919077", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "GS1 US", - "rowId": "credential MAY have property \"expirationDate\"" - }, - "timer": { - "_idleTimeout": -1, - "_idlePrev": null, - "_idleNext": null, - "_idleStart": 16560, - "_onTimeout": null, - "_repeat": null, - "_destroyed": true - }, - "duration": 139, - "state": "failed", - "err": { - "response": {}, - "request": {}, - "options": { - "credentials": "same-origin", - "headers": {}, - "body": {}, - "method": "POST", - "agent": { - "_events": {}, - "_eventsCount": 2, - "defaultPort": 443, - "protocol": "https:", - "options": { - "rejectUnauthorized": false, - "noDelay": true, - "path": null - }, - "requests": {}, - "sockets": {}, - "freeSockets": {}, - "keepAliveMsecs": 1000, - "keepAlive": false, - "maxSockets": null, - "maxFreeSockets": 256, - "scheduling": "lifo", - "maxTotalSockets": null, - "totalSocketCount": 0, - "maxCachedSessions": 100, - "_sessionCache": { - "map": {}, - "list": [] - } - }, - "hooks": { - "beforeRequest": [], - "beforeRetry": [], - "beforeError": [], - "afterResponse": [] - }, - "prefixUrl": "", - "retry": { - "limit": 2, - "methods": [ - "get", - "put", - "head", - "delete", - "options", - "trace" - ], - "statusCodes": [ - 408, - 413, - 429, - 500, - 502, - 503, - 504 - ], - "afterStatusCodes": [ - 413, - 429, - 503 - ], - "maxRetryAfter": null, - "backoffLimit": null - }, - "throwHttpErrors": true, - "timeout": 10000, - "signal": {}, - "duplex": "half" - }, - "name": "HTTPError", - "requestUrl": "https://login.microsoftonline.com/e5e65807-3d2a-4f67-a262-72f255868da0/oauth2/v2.0/token", - "status": 401, - "data": { - "error": "invalid_client", - "error_description": "AADSTS7000222: The provided client secret keys for app '73c9bee3-1371-409e-981f-349e8753d0fe' are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: b89d6856-0ab4-4b72-af24-4d5cb2621000 Correlation ID: 6507544d-43f7-4f08-a91c-6612b3160230 Timestamp: 2024-12-06 15:12:29Z", - "error_codes": [ - 7000222 - ], - "timestamp": "2024-12-06 15:12:29Z", - "trace_id": "b89d6856-0ab4-4b72-af24-4d5cb2621000", - "correlation_id": "6507544d-43f7-4f08-a91c-6612b3160230", - "error_uri": "https://login.microsoftonline.com/error?code=7000222" - } - } + "columnId": "Trential", + "rowId": "\"credential.type\" MUST be an array." + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 41112, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 879, + "state": "passed", + "speed": "slow" }, { "type": "test", - "title": "credential MAY have property \"expirationDate\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", + "title": "\"credential.type\" items MUST be strings", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -15149,33 +18584,33 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "iqmTi-DPLl_m7M1g7skEx", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:d918fa0f-0222-4da0-aa8e-3685c5a6fdd8", + "_testId": "urn:uuid:35cd2057-6887-49ee-886e-77c61ba8b912", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Gen Digital", - "rowId": "credential MAY have property \"expirationDate\"" + "columnId": "Trential", + "rowId": "\"credential.type\" items MUST be strings" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 17827, + "_idleStart": 41991, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 117, + "duration": 1499, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "credential MAY have property \"expirationDate\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", + "title": "credential MUST have property \"issuer\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -15184,33 +18619,33 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "WQubsTL0XWRKYsoWCl0Xf", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:bec6fdc2-aee5-46c4-ab94-2b8447399a67", + "_testId": "urn:uuid:d5a6f063-db36-4df4-a928-d0cc5bcb9135", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "LearnCard", - "rowId": "credential MAY have property \"expirationDate\"" + "columnId": "Trential", + "rowId": "credential MUST have property \"issuer\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 18991, + "_idleStart": 43491, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 77, + "duration": 226, "state": "passed", "speed": "slow" }, { "type": "test", - "title": "credential MAY have property \"expirationDate\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", + "title": "\"credential.issuer\" MUST be a string or an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -15219,144 +18654,33 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "7cmVdb2e2W43mVBBRgNR2", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:7da16466-73c1-49ad-b6d4-9c43d5cd5d04", + "_testId": "urn:uuid:746d1cfa-4bfe-49cc-a1ea-09691106dfdf", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Mavennet", - "rowId": "credential MAY have property \"expirationDate\"" + "columnId": "Trential", + "rowId": "\"credential.issuer\" MUST be a string or an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 21346, + "_idleStart": 43717, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 46, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected no error, got credential.validFrom must be a valid ISO 8601 date string,credential.validFrom should not be empty: expected HTTPError { message: [ …(2) ], …(6) } to not exist", - "showDiff": false, - "actual": { - "response": {}, - "request": {}, - "options": { - "credentials": "same-origin", - "headers": {}, - "body": "{\"credential\":{\"@context\":[\"https://www.w3.org/2018/credentials/v1\"],\"type\":[\"VerifiableCredential\"],\"credentialSubject\":{\"id\":\"did:key:z6MkhTNL7i2etLerDK8Acz5t528giE5KA4p75T6ka1E1D74r\"},\"issuanceDate\":\"2024-12-06T15:12:34Z\",\"id\":\"urn:uuid:cd1eddef-2a8b-4923-be28-cd2a9172afd9\",\"issuer\":\"did:key:z6MkfFjyzk5CKMdnLacqay3kLMMaZEvKr8yxhks2HezmF4X3\",\"expirationDate\":\"2025-12-06T15:12:34Z\"},\"options\":{\"type\":\"Ed25519Signature2018\"}}", - "method": "POST", - "json": { - "credential": { - "@context": [ - "https://www.w3.org/2018/credentials/v1" - ], - "type": [ - "VerifiableCredential" - ], - "credentialSubject": { - "id": "did:key:z6MkhTNL7i2etLerDK8Acz5t528giE5KA4p75T6ka1E1D74r" - }, - "issuanceDate": "2024-12-06T15:12:34Z", - "id": "urn:uuid:cd1eddef-2a8b-4923-be28-cd2a9172afd9", - "issuer": "did:key:z6MkfFjyzk5CKMdnLacqay3kLMMaZEvKr8yxhks2HezmF4X3", - "expirationDate": "2025-12-06T15:12:34Z" - }, - "options": { - "type": "Ed25519Signature2018" - } - }, - "agent": { - "_events": {}, - "_eventsCount": 2, - "defaultPort": 443, - "protocol": "https:", - "options": { - "rejectUnauthorized": false, - "noDelay": true, - "path": null - }, - "requests": {}, - "sockets": {}, - "freeSockets": {}, - "keepAliveMsecs": 1000, - "keepAlive": false, - "maxSockets": null, - "maxFreeSockets": 256, - "scheduling": "lifo", - "maxTotalSockets": null, - "totalSocketCount": 0, - "maxCachedSessions": 100, - "_sessionCache": { - "map": {}, - "list": [] - } - }, - "hooks": { - "beforeRequest": [], - "beforeRetry": [], - "beforeError": [], - "afterResponse": [] - }, - "prefixUrl": "", - "retry": { - "limit": 2, - "methods": [ - "get", - "put", - "head", - "delete", - "options", - "trace" - ], - "statusCodes": [ - 408, - 413, - 429, - 500, - 502, - 503, - 504 - ], - "afterStatusCodes": [ - 413, - 429, - 503 - ], - "maxRetryAfter": null, - "backoffLimit": null - }, - "throwHttpErrors": true, - "timeout": 10000, - "signal": {}, - "duplex": "half" - }, - "name": "HTTPError", - "requestUrl": "https://api.staging.refiner.neoflow.energy/credentials/issue", - "status": 400, - "data": { - "message": [ - "credential.validFrom must be a valid ISO 8601 date string", - "credential.validFrom should not be empty" - ], - "error": "Bad Request", - "statusCode": 400 - } - }, - "operator": "notStrictEqual", - "stack": "AssertionError: Expected no error, got credential.validFrom must be a valid ISO 8601 date string,credential.validFrom should not be empty: expected HTTPError { message: [ …(2) ], …(6) } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldReturnResult (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:19:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:193:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "duration": 858, + "state": "passed", + "speed": "slow" }, { "type": "test", - "title": "credential MAY have property \"expirationDate\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", + "title": "credential MUST have property \"credentialSubject\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -15365,42 +18689,33 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "lB70_I6BCdX0lJ1BmJ0FE", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:62ed2988-b422-4724-a710-9b0c3c70beb7", + "_testId": "urn:uuid:9a9d37cc-5142-473c-bef9-2c67e1960e2b", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SecureKey", - "rowId": "credential MAY have property \"expirationDate\"" + "columnId": "Trential", + "rowId": "credential MUST have property \"credentialSubject\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 22258, + "_idleStart": 44576, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 30, - "state": "failed", - "err": { - "name": "AssertionError", - "message": "Expected no error, got fetch failed: expected TypeError: fetch failed { …(2) } to not exist", - "showDiff": false, - "actual": { - "requestUrl": "https://issuer-vcs.sandbox.trustbloc.dev/vc-issuer-interop-key/credentials/issue" - }, - "operator": "notStrictEqual", - "stack": "AssertionError: Expected no error, got fetch failed: expected TypeError: fetch failed { …(2) } to not exist\n at should.not.exist (node_modules/chai/lib/chai/interface/should.js:208:38)\n at shouldReturnResult (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/assertions.js:19:14)\n at Context. (file:///home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js:193:9)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)" - } + "duration": 214, + "state": "passed", + "speed": "slow" }, { "type": "test", - "title": "credential MAY have property \"expirationDate\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", + "title": "\"credential.credentialSubject\" MUST be an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes = [null, true, 4, []];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -15409,33 +18724,68 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "ocn90lJyrf-TcvK04ixAa", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:ed256f36-1716-4f9e-bdce-ed6a30b62307", + "_testId": "urn:uuid:f175acdf-abf2-40c0-a826-be6a4d0db471", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", - "rowId": "credential MAY have property \"expirationDate\"" + "columnId": "Trential", + "rowId": "\"credential.credentialSubject\" MUST be an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 23057, + "_idleStart": 44790, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 23, + "duration": 861, "state": "passed", - "speed": "fast" + "speed": "slow" + }, + { + "type": "test", + "title": "credential MAY have property \"issuanceDate\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.issuanceDate = new Date().toISOString()\n .replace('.000Z', 'Z');\n const {result, error} = await issuer.post({json: body});\n should.exist(result, 'Expected result from issuer.');\n should.not.exist(error, 'Expected issuer to not Error.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", + "async": 0, + "sync": true, + "_timeout": 15000, + "_slow": 75, + "_retries": -1, + "timedOut": false, + "_currentRetry": 0, + "pending": false, + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "jwu8BnNQsU9UZaIeFxqSH", + "ctx": null, + "_testId": "urn:uuid:f2b7a219-9870-4b56-9f69-309750974cf6", + "_events": {}, + "_eventsCount": 1, + "cell": { + "columnId": "Trential", + "rowId": "credential MAY have property \"issuanceDate\"" + }, + "timer": { + "_idleTimeout": -1, + "_idlePrev": null, + "_idleNext": null, + "_idleStart": 45651, + "_onTimeout": null, + "_repeat": null, + "_destroyed": true + }, + "duration": 219, + "state": "passed", + "speed": "slow" }, { "type": "test", "title": "credential MAY have property \"expirationDate\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYearLater = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = createISOTimeStamp(oneYearLater);\n const {result, error} = await issuer.post({json: body});\n shouldReturnResult({result, error});\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYear = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = new Date(oneYear).toISOString()\n .replace('.000Z', 'Z');\n const {result, error} = await issuer.post({json: body});\n should.exist(result, 'Expected result from issuer.');\n should.not.exist(error, 'Expected issuer to not Error.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -15444,42 +18794,78 @@ "timedOut": false, "_currentRetry": 0, "pending": false, - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/10-issuer.js", - "parent": "dWzI6x5sBuIXSeUSebGq_", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:8dad2e71-a1d2-4261-8307-4035e6c99597", + "_testId": "urn:uuid:902f8b76-4a77-47b4-92dd-1996f0016833", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "Trinsic", + "columnId": "Trential", "rowId": "credential MAY have property \"expirationDate\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24471, + "_idleStart": 45870, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 41, + "duration": 217, "state": "passed", - "speed": "medium" + "speed": "slow" } - ] + ], + "root": false, + "pending": false, + "_retries": -1, + "_beforeEach": [], + "_beforeAll": [], + "_afterEach": [], + "_afterAll": [], + "_timeout": 15000, + "_slow": 75, + "_bail": false, + "_onlyTests": [], + "_onlySuites": [], + "delayed": false, + "parent": "TYBOoQrSkDy0XlV9jFkyj", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "_testId": "urn:uuid:a439a7bc-ff1c-43a6-b067-70815b0e03ad" } - ] - }, - { - "title": "Issue Credential - JWT", - "ctx": null, - "suites": [ + ], + "root": false, + "pending": false, + "_retries": -1, + "_beforeEach": [], + "_beforeAll": [], + "_afterEach": [], + "_afterAll": [], + "_timeout": 15000, + "_slow": 75, + "_bail": false, + "_onlyTests": [], + "_onlySuites": [], + "delayed": false, + "parent": "e6mzBHiRUU5k0qtKIW-hd", + "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", + "summary": {}, + "matrix": true, + "report": true, + "rowLabel": "Test Name", + "columnLabel": "Issuer", + "reportData": [], + "_testId": "urn:uuid:8b62063d-f738-4aec-9f5a-56dacefa60a2", + "columns": [ + "SpruceID", + "Trential" + ], + "rows": [ { - "title": "SpruceID", - "ctx": null, - "suites": [], - "tests": [ + "id": "MUST successfully issue a credential.", + "cells": [ { "type": "test", "title": "MUST successfully issue a credential.", @@ -15493,9 +18879,9 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:d25761a4-4ca7-436c-941c-edfe79aeed3e", + "_testId": "urn:uuid:373c4603-81af-47eb-8eaf-5c5e03a26289", "_events": {}, "_eventsCount": 1, "cell": { @@ -15506,19 +18892,19 @@ "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24513, + "_idleStart": 38399, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 30, + "duration": 76, "state": "passed", - "speed": "fast" + "speed": "slow" }, { "type": "test", - "title": "Request body MUST have property \"credential\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "MUST successfully issue a credential.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n should.exist(result, 'Expected result from issuer.');\n should.exist(issuedVc, 'Expected result to have data.');\n should.not.exist(error, 'Expected issuer to not Error.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -15528,32 +18914,37 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:dca54721-389a-43ee-87f0-d84fbb6f8a66", + "_testId": "urn:uuid:b09d30a7-5c62-4734-b66b-9974ddd8ea65", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", - "rowId": "Request body MUST have property \"credential\"." + "columnId": "Trential", + "rowId": "MUST successfully issue a credential." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24543, + "_idleStart": 39190, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 30, + "duration": 217, "state": "passed", - "speed": "fast" - }, + "speed": "slow" + } + ] + }, + { + "id": "Request body MUST have property \"credential\".", + "cells": [ { "type": "test", - "title": "credential MUST have property \"@context\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "Request body MUST have property \"credential\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -15563,32 +18954,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:6677d7d3-cec1-432a-9c14-efd71622c932", + "_testId": "urn:uuid:34be342a-0411-4fde-bcc5-555047645f7b", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SpruceID", - "rowId": "credential MUST have property \"@context\"." + "rowId": "Request body MUST have property \"credential\"." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24573, + "_idleStart": 38475, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 28, + "duration": 27, "state": "passed", "speed": "fast" }, { "type": "test", - "title": "credential \"@context\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "Request body MUST have property \"credential\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -15598,32 +18989,37 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:880d0995-fe4f-4414-a98c-aa9f09de8696", + "_testId": "urn:uuid:aff2a7ef-67f7-4182-b769-d31d25ccacf6", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", - "rowId": "credential \"@context\" MUST be an array." + "columnId": "Trential", + "rowId": "Request body MUST have property \"credential\"." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24601, + "_idleStart": 39408, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 35, + "duration": 215, "state": "passed", - "speed": "fast" - }, + "speed": "slow" + } + ] + }, + { + "id": "credential MUST have property \"@context\".", + "cells": [ { "type": "test", - "title": "credential \"@context\" items MUST be strings.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "credential MUST have property \"@context\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -15633,32 +19029,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:36ade108-0ae4-427f-8178-acbc3a0752a3", + "_testId": "urn:uuid:60192e67-8aee-465a-b4a6-fe461b8de52f", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SpruceID", - "rowId": "credential \"@context\" items MUST be strings." + "rowId": "credential MUST have property \"@context\"." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24636, + "_idleStart": 38503, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 89, + "duration": 22, "state": "passed", - "speed": "slow" + "speed": "fast" }, { "type": "test", - "title": "credential MUST have property \"type\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"@context\".", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -15668,32 +19064,37 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:c9f76736-2e7b-41ae-b367-644d128a2301", + "_testId": "urn:uuid:ff2e1ebc-1acd-4a65-85e3-eb3a668f56e2", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", - "rowId": "credential MUST have property \"type\"" + "columnId": "Trential", + "rowId": "credential MUST have property \"@context\"." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24726, + "_idleStart": 39622, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 22, + "duration": 212, "state": "passed", - "speed": "fast" - }, + "speed": "slow" + } + ] + }, + { + "id": "credential \"@context\" MUST be an array.", + "cells": [ { "type": "test", - "title": "\"credential.type\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential \"@context\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -15703,32 +19104,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:74f3a37e-898e-476a-b500-c2a55dc05070", + "_testId": "urn:uuid:d3bbdf3a-6d82-4919-ba7f-eb2f93ec7661", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SpruceID", - "rowId": "\"credential.type\" MUST be an array." + "rowId": "credential \"@context\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24749, + "_idleStart": 38526, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 19, + "duration": 22, "state": "passed", "speed": "fast" }, { "type": "test", - "title": "\"credential.type\" items MUST be strings", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "credential \"@context\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -15738,32 +19139,37 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:71dc5d9e-8e81-4873-b97b-c41b05da27ef", + "_testId": "urn:uuid:2d9496f0-f8a1-489c-9e0d-9bfab992849f", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", - "rowId": "\"credential.type\" items MUST be strings" + "columnId": "Trential", + "rowId": "credential \"@context\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24768, + "_idleStart": 39835, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 71, + "duration": 213, "state": "passed", - "speed": "medium" - }, + "speed": "slow" + } + ] + }, + { + "id": "credential \"@context\" items MUST be strings.", + "cells": [ { "type": "test", - "title": "credential MUST have property \"issuer\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential \"@context\" items MUST be strings.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -15773,32 +19179,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:a6cff78e-57d6-45de-91f2-500785a7cb3d", + "_testId": "urn:uuid:397abd79-84d0-4fed-8419-3b37995abc11", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SpruceID", - "rowId": "credential MUST have property \"issuer\"" + "rowId": "credential \"@context\" items MUST be strings." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24840, + "_idleStart": 38548, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 24, + "duration": 187, "state": "passed", - "speed": "fast" + "speed": "slow" }, { "type": "test", - "title": "\"credential.issuer\" MUST be a string or an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "credential \"@context\" items MUST be strings.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -15808,32 +19214,37 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:47a7b77a-a4ae-4611-8366-dc15dda284c8", + "_testId": "urn:uuid:bead8da1-212f-42ca-9765-fde1bbf594db", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", - "rowId": "\"credential.issuer\" MUST be a string or an object" + "columnId": "Trential", + "rowId": "credential \"@context\" items MUST be strings." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24864, + "_idleStart": 40049, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 88, + "duration": 849, "state": "passed", "speed": "slow" - }, + } + ] + }, + { + "id": "credential MUST have property \"type\"", + "cells": [ { "type": "test", - "title": "credential MUST have property \"credentialSubject\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"type\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -15843,32 +19254,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:c84bcbc1-97a2-44fe-bdff-c1bb094af11d", + "_testId": "urn:uuid:6d15a2e7-f61e-42fb-9ca3-5b287042807e", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SpruceID", - "rowId": "credential MUST have property \"credentialSubject\"" + "rowId": "credential MUST have property \"type\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24952, + "_idleStart": 38735, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 22, + "duration": 27, "state": "passed", "speed": "fast" }, { "type": "test", - "title": "\"credential.credentialSubject\" MUST be an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes = [null, true, 4, []];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "credential MUST have property \"type\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -15878,32 +19289,37 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:d587e8e6-5d3d-4c10-a9bc-37ccf04e2dc6", + "_testId": "urn:uuid:e06572ee-ff69-41e4-b218-f5ca99eef1d2", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", - "rowId": "\"credential.credentialSubject\" MUST be an object" + "columnId": "Trential", + "rowId": "credential MUST have property \"type\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24973, + "_idleStart": 40897, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 88, + "duration": 215, "state": "passed", "speed": "slow" - }, + } + ] + }, + { + "id": "\"credential.type\" MUST be an array.", + "cells": [ { "type": "test", - "title": "credential MAY have property \"issuanceDate\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.issuanceDate = new Date().toISOString()\n .replace('.000Z', 'Z');\n const {result, error} = await issuer.post({json: body});\n should.exist(result, 'Expected result from issuer.');\n should.not.exist(error, 'Expected issuer to not Error.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", + "title": "\"credential.type\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -15913,32 +19329,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:02f9c68e-cdb7-49b9-abc1-851b1eeeddba", + "_testId": "urn:uuid:f2fc17d4-dfed-486e-9505-7857b2e5cad2", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SpruceID", - "rowId": "credential MAY have property \"issuanceDate\"" + "rowId": "\"credential.type\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 25062, + "_idleStart": 38763, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 31, + "duration": 22, "state": "passed", "speed": "fast" }, { "type": "test", - "title": "credential MAY have property \"expirationDate\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYear = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = new Date(oneYear).toISOString()\n .replace('.000Z', 'Z');\n const {result, error} = await issuer.post({json: body});\n should.exist(result, 'Expected result from issuer.');\n should.not.exist(error, 'Expected issuer to not Error.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", + "title": "\"credential.type\" MUST be an array.", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -15948,80 +19364,37 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:f1c38953-3e06-4a3f-bbbb-4a6e5c7f4fe2", + "_testId": "urn:uuid:de402872-be71-4fef-863e-c0d867919077", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", - "rowId": "credential MAY have property \"expirationDate\"" + "columnId": "Trential", + "rowId": "\"credential.type\" MUST be an array." }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 25093, + "_idleStart": 41112, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 25, + "duration": 879, "state": "passed", - "speed": "fast" + "speed": "slow" } - ], - "root": false, - "pending": false, - "_retries": -1, - "_beforeEach": [], - "_beforeAll": [], - "_afterEach": [], - "_afterAll": [], - "_timeout": 15000, - "_slow": 75, - "_bail": false, - "_onlyTests": [], - "_onlySuites": [], - "delayed": false, - "parent": "g480IeLDVHTVANF_R8D2J", - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "_testId": "urn:uuid:d862703e-f750-432f-80f6-7b67acb72e05" - } - ], - "root": false, - "pending": false, - "_retries": -1, - "_beforeEach": [], - "_beforeAll": [], - "_afterEach": [], - "_afterAll": [], - "_timeout": 15000, - "_slow": 75, - "_bail": false, - "_onlyTests": [], - "_onlySuites": [], - "delayed": false, - "parent": "hLLtd2xtfwA-1wmshVuxM", - "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "summary": {}, - "matrix": true, - "report": true, - "rowLabel": "Test Name", - "columnLabel": "Issuer", - "reportData": [], - "_testId": "urn:uuid:82e40911-5d56-4ba6-9583-44b83ce5936e", - "columns": [ - "SpruceID" - ], - "rows": [ + ] + }, { - "id": "MUST successfully issue a credential.", + "id": "\"credential.type\" items MUST be strings", "cells": [ { "type": "test", - "title": "MUST successfully issue a credential.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const {result, data: issuedVc, error} = await issuer.post({json: body});\n should.exist(result, 'Expected result from issuer.');\n should.exist(issuedVc, 'Expected result to have data.');\n should.not.exist(error, 'Expected issuer to not Error.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n shouldBeIssuedVc({issuedVc});\n }", + "title": "\"credential.type\" items MUST be strings", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -16031,37 +19404,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:d25761a4-4ca7-436c-941c-edfe79aeed3e", + "_testId": "urn:uuid:7e2dd51e-cb52-4ab9-a480-fb867ca5859d", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SpruceID", - "rowId": "MUST successfully issue a credential." + "rowId": "\"credential.type\" items MUST be strings" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24513, + "_idleStart": 38784, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 30, + "duration": 99, "state": "passed", - "speed": "fast" - } - ] - }, - { - "id": "Request body MUST have property \"credential\".", - "cells": [ + "speed": "slow" + }, { "type": "test", - "title": "Request body MUST have property \"credential\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.verifiableCredential = {...body.credential};\n delete body.credential;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "\"credential.type\" items MUST be strings", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -16071,37 +19439,37 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:dca54721-389a-43ee-87f0-d84fbb6f8a66", + "_testId": "urn:uuid:35cd2057-6887-49ee-886e-77c61ba8b912", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", - "rowId": "Request body MUST have property \"credential\"." + "columnId": "Trential", + "rowId": "\"credential.type\" items MUST be strings" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24543, + "_idleStart": 41991, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 30, + "duration": 1499, "state": "passed", - "speed": "fast" + "speed": "slow" } ] }, { - "id": "credential MUST have property \"@context\".", + "id": "credential MUST have property \"issuer\"", "cells": [ { "type": "test", - "title": "credential MUST have property \"@context\".", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential['@context'];\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"issuer\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -16111,37 +19479,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:6677d7d3-cec1-432a-9c14-efd71622c932", + "_testId": "urn:uuid:6e4c11b1-7613-4280-b4fd-0b49dbc21162", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SpruceID", - "rowId": "credential MUST have property \"@context\"." + "rowId": "credential MUST have property \"issuer\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24573, + "_idleStart": 38883, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 28, + "duration": 21, "state": "passed", "speed": "fast" - } - ] - }, - { - "id": "credential \"@context\" MUST be an array.", - "cells": [ + }, { "type": "test", - "title": "credential \"@context\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential['@context'] = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"issuer\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -16151,37 +19514,37 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:880d0995-fe4f-4414-a98c-aa9f09de8696", + "_testId": "urn:uuid:d5a6f063-db36-4df4-a928-d0cc5bcb9135", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", - "rowId": "credential \"@context\" MUST be an array." + "columnId": "Trential", + "rowId": "credential MUST have property \"issuer\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24601, + "_idleStart": 43491, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 35, + "duration": 226, "state": "passed", - "speed": "fast" + "speed": "slow" } ] }, { - "id": "credential \"@context\" items MUST be strings.", + "id": "\"credential.issuer\" MUST be a string or an object", "cells": [ { "type": "test", - "title": "credential \"@context\" items MUST be strings.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidContextTypes = [{foo: true}, 4, false, null];\n for(const invalidContextType of invalidContextTypes) {\n body.credential['@context'] = invalidContextType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.issuer\" MUST be a string or an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -16191,37 +19554,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:36ade108-0ae4-427f-8178-acbc3a0752a3", + "_testId": "urn:uuid:28203748-9753-449c-888f-bc91053f4abd", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SpruceID", - "rowId": "credential \"@context\" items MUST be strings." + "rowId": "\"credential.issuer\" MUST be a string or an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24636, + "_idleStart": 38905, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 89, + "duration": 88, "state": "passed", "speed": "slow" - } - ] - }, - { - "id": "credential MUST have property \"type\"", - "cells": [ + }, { "type": "test", - "title": "credential MUST have property \"type\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.type;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "\"credential.issuer\" MUST be a string or an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -16231,37 +19589,37 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:c9f76736-2e7b-41ae-b367-644d128a2301", + "_testId": "urn:uuid:746d1cfa-4bfe-49cc-a1ea-09691106dfdf", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", - "rowId": "credential MUST have property \"type\"" + "columnId": "Trential", + "rowId": "\"credential.issuer\" MUST be a string or an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24726, + "_idleStart": 43717, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 22, + "duration": 858, "state": "passed", - "speed": "fast" + "speed": "slow" } ] }, { - "id": "\"credential.type\" MUST be an array.", + "id": "credential MUST have property \"credentialSubject\"", "cells": [ { "type": "test", - "title": "\"credential.type\" MUST be an array.", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.type = 4;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MUST have property \"credentialSubject\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -16271,37 +19629,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:74f3a37e-898e-476a-b500-c2a55dc05070", + "_testId": "urn:uuid:8dcf5b74-81c2-4155-a1a1-cfda4cff5c8d", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SpruceID", - "rowId": "\"credential.type\" MUST be an array." + "rowId": "credential MUST have property \"credentialSubject\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24749, + "_idleStart": 38992, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 19, + "duration": 29, "state": "passed", "speed": "fast" - } - ] - }, - { - "id": "\"credential.type\" items MUST be strings", - "cells": [ + }, { "type": "test", - "title": "\"credential.type\" items MUST be strings", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialTypes = [null, true, 4, []];\n for(const invalidCredentialType of invalidCredentialTypes) {\n body.credential.type = invalidCredentialType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "credential MUST have property \"credentialSubject\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -16311,37 +19664,37 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:71dc5d9e-8e81-4873-b97b-c41b05da27ef", + "_testId": "urn:uuid:9a9d37cc-5142-473c-bef9-2c67e1960e2b", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", - "rowId": "\"credential.type\" items MUST be strings" + "columnId": "Trential", + "rowId": "credential MUST have property \"credentialSubject\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24768, + "_idleStart": 44576, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 71, + "duration": 214, "state": "passed", - "speed": "medium" + "speed": "slow" } ] }, { - "id": "credential MUST have property \"issuer\"", + "id": "\"credential.credentialSubject\" MUST be an object", "cells": [ { "type": "test", - "title": "credential MUST have property \"issuer\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.issuer;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "\"credential.credentialSubject\" MUST be an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes = [null, true, 4, []];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -16351,37 +19704,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:a6cff78e-57d6-45de-91f2-500785a7cb3d", + "_testId": "urn:uuid:1013402c-47e5-4639-a69f-ae5e9ad244d6", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SpruceID", - "rowId": "credential MUST have property \"issuer\"" + "rowId": "\"credential.credentialSubject\" MUST be an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24840, + "_idleStart": 39021, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 24, + "duration": 99, "state": "passed", - "speed": "fast" - } - ] - }, - { - "id": "\"credential.issuer\" MUST be a string or an object", - "cells": [ + "speed": "slow" + }, { "type": "test", - "title": "\"credential.issuer\" MUST be a string or an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidIssuerTypes = [null, true, 4, []];\n for(const invalidIssuerType of invalidIssuerTypes) {\n body.credential.issuer = invalidIssuerType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "\"credential.credentialSubject\" MUST be an object", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes = [null, true, 4, []];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -16391,37 +19739,37 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:47a7b77a-a4ae-4611-8366-dc15dda284c8", + "_testId": "urn:uuid:f175acdf-abf2-40c0-a826-be6a4d0db471", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", - "rowId": "\"credential.issuer\" MUST be a string or an object" + "columnId": "Trential", + "rowId": "\"credential.credentialSubject\" MUST be an object" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24864, + "_idleStart": 44790, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 88, + "duration": 861, "state": "passed", "speed": "slow" } ] }, { - "id": "credential MUST have property \"credentialSubject\"", + "id": "credential MAY have property \"issuanceDate\"", "cells": [ { "type": "test", - "title": "credential MUST have property \"credentialSubject\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n delete body.credential.credentialSubject;\n const {result, error} = await issuer.post({json: body});\n shouldThrowInvalidInput({result, error});\n }", + "title": "credential MAY have property \"issuanceDate\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.issuanceDate = new Date().toISOString()\n .replace('.000Z', 'Z');\n const {result, error} = await issuer.post({json: body});\n should.exist(result, 'Expected result from issuer.');\n should.not.exist(error, 'Expected issuer to not Error.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -16431,37 +19779,32 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:c84bcbc1-97a2-44fe-bdff-c1bb094af11d", + "_testId": "urn:uuid:9f218d15-ae25-4397-8fb3-fd569fd216a2", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SpruceID", - "rowId": "credential MUST have property \"credentialSubject\"" + "rowId": "credential MAY have property \"issuanceDate\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24952, + "_idleStart": 39121, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 22, + "duration": 29, "state": "passed", "speed": "fast" - } - ] - }, - { - "id": "\"credential.credentialSubject\" MUST be an object", - "cells": [ + }, { "type": "test", - "title": "\"credential.credentialSubject\" MUST be an object", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n const invalidCredentialSubjectTypes = [null, true, 4, []];\n for(const invalidCredentialSubjectType of\n invalidCredentialSubjectTypes) {\n body.credential.credentialSubject = invalidCredentialSubjectType;\n const {result, error} = await issuer.post({json: {...body}});\n shouldThrowInvalidInput({result, error});\n }\n }", + "title": "credential MAY have property \"issuanceDate\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.issuanceDate = new Date().toISOString()\n .replace('.000Z', 'Z');\n const {result, error} = await issuer.post({json: body});\n should.exist(result, 'Expected result from issuer.');\n should.not.exist(error, 'Expected issuer to not Error.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -16471,37 +19814,37 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:d587e8e6-5d3d-4c10-a9bc-37ccf04e2dc6", + "_testId": "urn:uuid:f2b7a219-9870-4b56-9f69-309750974cf6", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", - "rowId": "\"credential.credentialSubject\" MUST be an object" + "columnId": "Trential", + "rowId": "credential MAY have property \"issuanceDate\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 24973, + "_idleStart": 45651, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 88, + "duration": 219, "state": "passed", "speed": "slow" } ] }, { - "id": "credential MAY have property \"issuanceDate\"", + "id": "credential MAY have property \"expirationDate\"", "cells": [ { "type": "test", - "title": "credential MAY have property \"issuanceDate\"", - "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n body.credential.issuanceDate = new Date().toISOString()\n .replace('.000Z', 'Z');\n const {result, error} = await issuer.post({json: body});\n should.exist(result, 'Expected result from issuer.');\n should.not.exist(error, 'Expected issuer to not Error.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", + "title": "credential MAY have property \"expirationDate\"", + "body": "async function() {\n this.test.cell = {\n columnId: name,\n rowId: this.test.title\n };\n const body = createRequestBody({issuer});\n // expires in a year\n const oneYear = Date.now() + 365 * 24 * 60 * 60 * 1000;\n body.credential.expirationDate = new Date(oneYear).toISOString()\n .replace('.000Z', 'Z');\n const {result, error} = await issuer.post({json: body});\n should.exist(result, 'Expected result from issuer.');\n should.not.exist(error, 'Expected issuer to not Error.');\n result.status.should.equal(201, 'Expected statusCode 201.');\n }", "async": 0, "sync": true, "_timeout": 15000, @@ -16511,33 +19854,28 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "3WkMbzVHiKXWa5HHM4Gg6", "ctx": null, - "_testId": "urn:uuid:02f9c68e-cdb7-49b9-abc1-851b1eeeddba", + "_testId": "urn:uuid:6e6938ee-b3b9-4c25-b72b-b17dbae38e62", "_events": {}, "_eventsCount": 1, "cell": { "columnId": "SpruceID", - "rowId": "credential MAY have property \"issuanceDate\"" + "rowId": "credential MAY have property \"expirationDate\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 25062, + "_idleStart": 39151, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 31, + "duration": 39, "state": "passed", - "speed": "fast" - } - ] - }, - { - "id": "credential MAY have property \"expirationDate\"", - "cells": [ + "speed": "medium" + }, { "type": "test", "title": "credential MAY have property \"expirationDate\"", @@ -16551,149 +19889,27 @@ "_currentRetry": 0, "pending": false, "file": "/home/runner/work/vc-api-issuer-test-suite/vc-api-issuer-test-suite/tests/11-issuer-jwt.js", - "parent": "iTXYi6g6ZGDMm9WQh-3Be", + "parent": "jwu8BnNQsU9UZaIeFxqSH", "ctx": null, - "_testId": "urn:uuid:f1c38953-3e06-4a3f-bbbb-4a6e5c7f4fe2", + "_testId": "urn:uuid:902f8b76-4a77-47b4-92dd-1996f0016833", "_events": {}, "_eventsCount": 1, "cell": { - "columnId": "SpruceID", + "columnId": "Trential", "rowId": "credential MAY have property \"expirationDate\"" }, "timer": { "_idleTimeout": -1, "_idlePrev": null, "_idleNext": null, - "_idleStart": 25093, + "_idleStart": 45870, "_onTimeout": null, "_repeat": null, "_destroyed": true }, - "duration": 25, + "duration": 217, "state": "passed", - "speed": "fast" - } - ] - } - ] - }, - { - "title": "At Risk", - "rowLabel": "Statement", - "columnLabel": "Reason", - "columns": [ - "At least 2 passing implementations" - ], - "rows": [ - { - "id": "MUST successfully issue a credential.", - "cells": [ - { - "state": "failed" - } - ] - }, - { - "id": "Request body MUST have property \"credential\".", - "cells": [ - { - "state": "failed" - } - ] - }, - { - "id": "credential MUST have property \"@context\".", - "cells": [ - { - "state": "failed" - } - ] - }, - { - "id": "credential \"@context\" MUST be an array.", - "cells": [ - { - "state": "failed" - } - ] - }, - { - "id": "credential \"@context\" items MUST be strings.", - "cells": [ - { - "state": "failed" - } - ] - }, - { - "id": "credential MUST have property \"type\"", - "cells": [ - { - "state": "failed" - } - ] - }, - { - "id": "\"credential.type\" MUST be an array.", - "cells": [ - { - "state": "failed" - } - ] - }, - { - "id": "\"credential.type\" items MUST be strings", - "cells": [ - { - "state": "failed" - } - ] - }, - { - "id": "credential MUST have property \"issuer\"", - "cells": [ - { - "state": "failed" - } - ] - }, - { - "id": "\"credential.issuer\" MUST be a string or an object", - "cells": [ - { - "state": "failed" - } - ] - }, - { - "id": "credential MUST have property \"credentialSubject\"", - "cells": [ - { - "state": "failed" - } - ] - }, - { - "id": "\"credential.credentialSubject\" MUST be an object", - "cells": [ - { - "state": "failed" - } - ] - }, - { - "id": "credential MAY have property \"issuanceDate\"", - "cells": [ - { - "state": "failed" - } - ] - }, - { - "id": "credential MAY have property \"expirationDate\"", - "cells": [ - { - "state": "failed" + "speed": "slow" } ] } @@ -16735,11 +19951,11 @@ }, "title": "VC API Issuer Interoperability Report 1.0", "stats": [ - "Tests passed 147/183 80%", - "Tests failed 36/183 20%", - "Failures 36", - "Tests skipped 13", - "Total tests 196" + "Tests passed 185/223 82%", + "Tests failed 38/223 18%", + "Failures 38", + "Tests skipped 15", + "Total tests 238" ], "statusMarkLabels": { "pending": {
-
- Reason ⇒ -
-
- Statement -
-
At least 2 passing implementations
- MUST successfully issue a credential. + "credential.type" items MUST be strings -
+
+
- Request body MUST have property "credential". - -
+
+
- credential MUST have property "@context". + credential MUST have property "issuer" -
+
+
- credential "@context" MUST be an array. - -
+
+
- credential "@context" items MUST be strings. + "credential.issuer" MUST be a string or an object -
+
+
- credential MUST have property "type" - -
+
+
- "credential.type" MUST be an array. + credential MUST have property "credentialSubject" -
+
+
- "credential.type" items MUST be strings - -
+
+
- credential MUST have property "issuer" + "credential.credentialSubject" MUST be an object -
+
+
- "credential.issuer" MUST be a string or an object - -
+
+
- credential MUST have property "credentialSubject" + credential MAY have property "issuanceDate" -
+
+
- "credential.credentialSubject" MUST be an object - -
+
+
- credential MAY have property "issuanceDate" + credential MAY have property "expirationDate" -
+
+
- credential MAY have property "expirationDate" - -
+
+