Skip to content

Commit

Permalink
add status list 2021 tests
Browse files Browse the repository at this point in the history
Signed-off-by: F-Node-Karlsruhe <christian.fries@eecc.de>
  • Loading branch information
F-Node-Karlsruhe committed Sep 1, 2023
1 parent d78da96 commit 847b899
Showing 1 changed file with 104 additions and 2 deletions.
106 changes: 104 additions & 2 deletions api/__tests__/credential.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import request from "supertest";

import app from "../src/index";

const revokedCredential: any = {
const revoked2020Credential: any = {
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://ssi.eecc.de/api/registry/context/productpassport",
Expand Down Expand Up @@ -35,6 +35,84 @@ const revokedCredential: any = {
}
}

const revoked2021Credential: any = {
"@context": [
"https://www.w3.org/2018/credentials/v1",
"ipfs://QmSsQwjhtA86KEAdUoUpwqHysTiTmoScdUes5BcjTEmHEf",
"https://ssi.eecc.de/api/registry/context",
"https://w3id.org/vc/status-list/2021/v1",
"https://w3id.org/security/suites/ed25519-2020/v1"
],
"id": "https://ssi.eecc.de/api/registry/vc/d8810623-e522-4962-bbc9-54dfd6aa9b8b",
"type": [
"VerifiableCredential",
"GS1PrefixLicenceCredential"
],
"issuer": {
"id": "did:web:ssi.eecc.de",
"image": "https://id.eecc.de/assets/img/logo_big.png",
"name": "EECC"
},
"issuanceDate": "2023-09-01T13:58:11Z",
"credentialStatus": {
"id": "https://ssi.eecc.de/api/registry/vc/revocation/did:web:ssi.eecc.de/1#0",
"type": "StatusList2021Entry",
"statusPurpose": "revocation",
"statusListIndex": 0,
"statusListCredential": "https://ssi.eecc.de/api/registry/vc/revocation/did:web:ssi.eecc.de/1"
},
"credentialSubject": {
"id": "https://test.de/test1",
"licenceValue": "1"
},
"proof": {
"type": "Ed25519Signature2020",
"created": "2023-09-01T13:58:11Z",
"proofPurpose": "assertionMethod",
"verificationMethod": "did:web:ssi.eecc.de#z6MkoHWsmSZnHisAxnVdokYHnXaVqWFZ4H33FnNg13zyymxd",
"proofValue": "z4QnfqAyD3mDHWwYRmXpAWkcnk3QkhhGuy4yNXY94S9iydTSjPYkNkkto1CBB5KYFqnvpmR7YC1mMVpSpegeJnZJq"
}
}

const suspended2021Credential: any = {
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://ref.gs1.org/gs1/vc/licence-context/",
"https://ssi.eecc.de/api/registry/context",
"https://w3id.org/vc/status-list/2021/v1",
"https://w3id.org/security/suites/ed25519-2020/v1"
],
"id": "https://ssi.eecc.de/api/registry/vc/918aad61-4087-4495-9341-074655af6902",
"type": [
"VerifiableCredential",
"GS1PrefixLicenceCredential"
],
"issuer": {
"id": "did:web:ssi.eecc.de",
"image": "https://id.eecc.de/assets/img/logo_big.png",
"name": "EECC"
},
"issuanceDate": "2023-09-01T14:07:10Z",
"credentialStatus": {
"id": "https://ssi.eecc.de/api/registry/vc/suspension/did:web:ssi.eecc.de/1#0",
"type": "StatusList2021Entry",
"statusPurpose": "suspension",
"statusListIndex": 0,
"statusListCredential": "https://ssi.eecc.de/api/registry/vc/suspension/did:web:ssi.eecc.de/1"
},
"credentialSubject": {
"id": "https://test.de/test1",
"alternativeLicenceValue": "1"
},
"proof": {
"type": "Ed25519Signature2020",
"created": "2023-09-01T14:07:10Z",
"proofPurpose": "assertionMethod",
"verificationMethod": "did:web:ssi.eecc.de#z6MkoHWsmSZnHisAxnVdokYHnXaVqWFZ4H33FnNg13zyymxd",
"proofValue": "z361uVV9KVfpEWgf5HYss9WrBiRhzUDBpigcSLhYLqCwsV3v8e3VetVCHG4BCHaU7RN1V2RMx7nQRR2ikziwT6Apx"
}
}

const SDCredential: any = {
"@context": [
"https://www.w3.org/2018/credentials/v1",
Expand Down Expand Up @@ -150,7 +228,31 @@ describe("Verifier API Test for Credentials", () => {
* Test StatusList2020 revoked credential
*/
test("Verify revoked credential", async () => {
const res = await request(app).post("/api/verifier").send([revokedCredential]);
const res = await request(app).post("/api/verifier").send([revoked2020Credential]);
expect(res.statusCode).toEqual(200);
expect(res.body[0]).toHaveProperty('verified');
expect(res.body[0].verified).toBe(false);
expect(res.body[0]).toHaveProperty('statusResult');
expect(res.body[0].statusResult.verified).toBe(false);
});

/**
* Test StatusList2021 revoked credential
*/
test("Verify revoked credential", async () => {
const res = await request(app).post("/api/verifier").send([revoked2021Credential]);
expect(res.statusCode).toEqual(200);
expect(res.body[0]).toHaveProperty('verified');
expect(res.body[0].verified).toBe(false);
expect(res.body[0]).toHaveProperty('statusResult');
expect(res.body[0].statusResult.verified).toBe(false);
});

/**
* Test StatusList2021 suspended credential
*/
test("Verify suspended credential", async () => {
const res = await request(app).post("/api/verifier").send([suspended2021Credential]);
expect(res.statusCode).toEqual(200);
expect(res.body[0]).toHaveProperty('verified');
expect(res.body[0].verified).toBe(false);
Expand Down

0 comments on commit 847b899

Please sign in to comment.