rxome-generator
Version:
Generates QR codes containing medical information for use with the FindMe2Care platform.
22 lines (19 loc) • 1.14 kB
JavaScript
import * as RxAPI from './rxome-api.js';
import { readFileSync, existsSync, statSync } from 'fs';
import * as ED from 'noble-ed25519';
describe('API access', () => {
test.skip('generates valid API access keys', async () => {
await RxAPI.writeApiKeys( '__TESTSUITE_jesttest' );
expect( existsSync('__TESTSUITE_jesttest.private.apikey') ).toBe( true );
expect( existsSync('__TESTSUITE_jesttest.public.apikey') ).toBe( true );
expect( statSync('__TESTSUITE_jesttest.private.apikey').size - 44 ).toBeLessThan( 2 );
expect( statSync('__TESTSUITE_jesttest.public.apikey').size - 44 ).toBeLessThan( 2 );
const message='Answer to life the universe and everything';
const messageUi8 = RxAPI.unpack(Array.from(message));
const privKey = RxAPI.unpack([...RxAPI.base64ToBuffer( readFileSync('__TESTSUITE_jesttest.private.apikey'))])
const pubKey = RxAPI.unpack([...RxAPI.base64ToBuffer( readFileSync('__TESTSUITE_jesttest.public.apikey'))])
const signature = await ED.sign(messageUi8, privKey);
const isValid = await ED.verify(signature, messageUi8, pubKey);
expect( isValid ).toBeTruthy;
});
});