UNPKG

@microsoft/useragent-sdk

Version:

SDK for building decentralized identity wallets and enterprise agents.

39 lines 2.44 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); /*--------------------------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ const CryptoFactory_1 = require("../../../src/crypto/plugin/CryptoFactory"); const KeyStoreInMemory_1 = require("../../../src/crypto/keyStore/KeyStoreInMemory"); const src_1 = require("../../../src"); const useragent_plugin_secp256k1_1 = require("@microsoft/useragent-plugin-secp256k1"); const CryptoFactoryNode_1 = require("../../../src/crypto/plugin/CryptoFactoryNode"); describe('CryptoFactory', () => { it('should create a crypto suite', () => { const keyStore = new KeyStoreInMemory_1.default(); const factory = new CryptoFactory_1.default(keyStore, src_1.SubtleCryptoNode.getSubtleCrypto()); expect(factory).toBeDefined(); const keyEncrypter = factory.getKeyEncrypter('*'); expect(keyEncrypter).toBeDefined(); const macSigner = factory.getMessageAuthenticationCodeSigners('*'); expect(macSigner).toBeDefined(); const messageDigest = factory.getMessageDigest('*'); expect(messageDigest).toBeDefined(); const messageSigner = factory.getMessageSigner('*'); expect(messageSigner).toBeDefined(); const sharedKeyEncrypter = factory.getSharedKeyEncrypter('*'); expect(sharedKeyEncrypter).toBeDefined(); const symmetricEncrypter = factory.getSymmetricEncrypter('*'); expect(symmetricEncrypter).toBeDefined(); }); it('should plugin a new algorithm into crypto suite', () => { const keyStore = new KeyStoreInMemory_1.default(); const factory = new CryptoFactoryNode_1.default(keyStore, src_1.SubtleCryptoNode.getSubtleCrypto()); const messageSigner = factory.getMessageSigner('ed25519'); expect(messageSigner instanceof useragent_plugin_secp256k1_1.SubtleCryptoElliptic).toBeTruthy(); expect(messageSigner.providers.algorithms.includes('EDDSA')).toBeTruthy(); expect(messageSigner.providers.algorithms.includes('ECDSA')).toBeTruthy(); }); }); //# sourceMappingURL=CryptoFactory.spec.js.map