From 001bbecd006f859db50e5c14a9e87ae62ee8a308 Mon Sep 17 00:00:00 2001 From: Berend Sliedrecht Date: Tue, 29 Mar 2022 13:35:31 +0200 Subject: [PATCH] feat: working repository and record Signed-off-by: Berend Sliedrecht --- .../src/modules/vc/W3cCredentialService.ts | 7 +++---- .../vc/__tests__/W3cCredentialService.test.ts | 18 +++++++++++++++++- 2 files changed, 20 insertions(+), 5 deletions(-) diff --git a/packages/core/src/modules/vc/W3cCredentialService.ts b/packages/core/src/modules/vc/W3cCredentialService.ts index 0bfcc4ec20..de578625d1 100644 --- a/packages/core/src/modules/vc/W3cCredentialService.ts +++ b/packages/core/src/modules/vc/W3cCredentialService.ts @@ -1,18 +1,17 @@ import type { JwsLinkedDataSignature } from '../../crypto/JwsLinkedDataSignature' -import type { DidInfo } from '../../wallet' import type { VerifyCredentialResult, W3cCredential, W3cVerifyCredentialResult } from './models' import type { VerifyPresentationResult } from './models/presentation/VerifyPresentationResult' import type { W3cPresentation } from './models/presentation/W3Presentation' import type { RemoteDocument, Url } from 'jsonld/jsonld-spec' -// @ts-ignore -import { expand } from '@digitalcredentials/jsonld' +import jsonld, { expand } from '@digitalcredentials/jsonld' +// eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore import documentLoaderNode from '@digitalcredentials/jsonld/lib/documentLoaders/node' +// eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore import documentLoaderXhr from '@digitalcredentials/jsonld/lib/documentLoaders/xhr' import vc from '@digitalcredentials/vc' -import exp from 'constants' import { inject, Lifecycle, scoped } from 'tsyringe' import { AgentConfig } from '../../agent/AgentConfig' diff --git a/packages/core/src/modules/vc/__tests__/W3cCredentialService.test.ts b/packages/core/src/modules/vc/__tests__/W3cCredentialService.test.ts index 903df0fbad..63bf151fbe 100644 --- a/packages/core/src/modules/vc/__tests__/W3cCredentialService.test.ts +++ b/packages/core/src/modules/vc/__tests__/W3cCredentialService.test.ts @@ -18,6 +18,8 @@ jest.mock('../../ledger/services/IndyLedgerService') const IndyLedgerServiceMock = IndyLedgerService as jest.Mock const DidRepositoryMock = DidRepository as unknown as jest.Mock + +jest.mock('../models/credential/W3cCredentialRepository') const W3cCredentialRepositoryMock = W3cCredentialRepository as jest.Mock describe('W3cCredentialService', () => { @@ -76,7 +78,21 @@ describe('W3cCredentialService', () => { W3cVerifiableCredential ) - await expect(w3cCredentialService.storeCredential(credential)).resolves.toMatchObject({ id: expect.any(String) }) + const w3cCredentialRecord = await w3cCredentialService.storeCredential(credential) + + expect(w3cCredentialRecord).toMatchObject({ + type: 'W3cCredentialRecord', + id: expect.any(String), + createdAt: expect.any(Date), + credential: expect.any(W3cVerifiableCredential), + }) + + expect(w3cCredentialRecord.getTags()).toMatchObject({ + expandedTypes: [ + 'https://www.w3.org/2018/credentials#VerifiableCredential', + 'https://example.org/examples#UniversityDegreeCredential', + ], + }) }) })