summaryrefslogtreecommitdiffhomepage
path: root/packages/server/src
diff options
context:
space:
mode:
Diffstat (limited to 'packages/server/src')
-rw-r--r--packages/server/src/helpers/convertCOSEtoPKCS.test.ts29
1 files changed, 29 insertions, 0 deletions
diff --git a/packages/server/src/helpers/convertCOSEtoPKCS.test.ts b/packages/server/src/helpers/convertCOSEtoPKCS.test.ts
new file mode 100644
index 0000000..1d0ad6e
--- /dev/null
+++ b/packages/server/src/helpers/convertCOSEtoPKCS.test.ts
@@ -0,0 +1,29 @@
+import cbor from 'cbor';
+import { COSEKEYS } from '@webauthntine/typescript-types';
+
+import convertCOSEtoPKCS from './convertCOSEtoPKCS';
+
+
+test('should throw an error curve if, somehow, curve coordinate x is missing', () => {
+ const mockCOSEKey = new Map<number, number | Buffer>();
+
+ mockCOSEKey.set(COSEKEYS.y, 1);
+
+ jest.spyOn(cbor, 'decodeFirstSync').mockReturnValue(mockCOSEKey);
+
+ expect(() => {
+ convertCOSEtoPKCS(Buffer.from('123', 'ascii'));
+ }).toThrow();
+});
+
+test('should throw an error curve if, somehow, curve coordinate y is missing', () => {
+ const mockCOSEKey = new Map<number, number | Buffer>();
+
+ mockCOSEKey.set(COSEKEYS.x, 1);
+
+ jest.spyOn(cbor, 'decodeFirstSync').mockReturnValue(mockCOSEKey);
+
+ expect(() => {
+ convertCOSEtoPKCS(Buffer.from('123', 'ascii'));
+ }).toThrow();
+});