diff options
Diffstat (limited to 'packages/server/src/helpers')
-rw-r--r-- | packages/server/src/helpers/decodeAttestationObject.ts | 9 | ||||
-rw-r--r-- | packages/server/src/helpers/decodeCredentialPublicKey.ts | 9 | ||||
-rw-r--r-- | packages/server/src/helpers/verifySignature.ts | 19 |
3 files changed, 29 insertions, 8 deletions
diff --git a/packages/server/src/helpers/decodeAttestationObject.ts b/packages/server/src/helpers/decodeAttestationObject.ts index 8cf036d..ebfe42b 100644 --- a/packages/server/src/helpers/decodeAttestationObject.ts +++ b/packages/server/src/helpers/decodeAttestationObject.ts @@ -8,7 +8,9 @@ import { isoCBOR } from "./iso/index.ts"; export function decodeAttestationObject( attestationObject: Uint8Array, ): AttestationObject { - return isoCBOR.decodeFirst<AttestationObject>(attestationObject); + return _decodeAttestationObjectInternals.stubThis( + isoCBOR.decodeFirst<AttestationObject>(attestationObject), + ); } export type AttestationFormat = @@ -41,3 +43,8 @@ export type AttestationStatement = { // `Map` properties readonly size: number; }; + +// Make it possible to stub the return value during testing +export const _decodeAttestationObjectInternals = { + stubThis: (value: AttestationObject) => value, +}; diff --git a/packages/server/src/helpers/decodeCredentialPublicKey.ts b/packages/server/src/helpers/decodeCredentialPublicKey.ts index b6d0f21..bb5dab4 100644 --- a/packages/server/src/helpers/decodeCredentialPublicKey.ts +++ b/packages/server/src/helpers/decodeCredentialPublicKey.ts @@ -4,5 +4,12 @@ import { isoCBOR } from "./iso/index.ts"; export function decodeCredentialPublicKey( publicKey: Uint8Array, ): COSEPublicKey { - return isoCBOR.decodeFirst<COSEPublicKey>(publicKey); + return _decodeCredentialPublicKeyInternals.stubThis( + isoCBOR.decodeFirst<COSEPublicKey>(publicKey), + ); } + +// Make it possible to stub the return value during testing +export const _decodeCredentialPublicKeyInternals = { + stubThis: (value: COSEPublicKey) => value, +}; diff --git a/packages/server/src/helpers/verifySignature.ts b/packages/server/src/helpers/verifySignature.ts index 613436b..593c2e4 100644 --- a/packages/server/src/helpers/verifySignature.ts +++ b/packages/server/src/helpers/verifySignature.ts @@ -39,10 +39,17 @@ export function verifySignature(opts: { cosePublicKey = convertX509PublicKeyToCOSE(x509Certificate); } - return isoCrypto.verify({ - cosePublicKey, - signature, - data, - shaHashOverride: hashAlgorithm, - }); + return _verifySignatureInternals.stubThis( + isoCrypto.verify({ + cosePublicKey, + signature, + data, + shaHashOverride: hashAlgorithm, + }), + ); } + +// Make it possible to stub the return value during testing +export const _verifySignatureInternals = { + stubThis: (value: Promise<boolean>) => value, +}; |