58 lines
2.0 KiB
JavaScript
58 lines
2.0 KiB
JavaScript
const helpers = require('./helpers');
|
|
const path = require('path');
|
|
const fs = require('fs');
|
|
const Constants = require('./constants');
|
|
|
|
test('verify signature success', () => {
|
|
return helpers
|
|
.verifySignature(
|
|
path.resolve('test/test_verify_signature.dat'),
|
|
path.resolve('test/test_verify_signature.dat.sig'),
|
|
path.resolve('blockstorage_dev_public.pem'))
|
|
.then(stdout => {
|
|
expect(stdout).toBeDefined();
|
|
});
|
|
});
|
|
|
|
test('verify signature fail', () => {
|
|
return expect(helpers
|
|
.verifySignature(
|
|
path.resolve('test/test_verify_signature_fail.dat'),
|
|
path.resolve('test/test_verify_signature.dat.sig'),
|
|
path.resolve('blockstorage_dev_public.pem')))
|
|
.rejects
|
|
.toThrow()
|
|
});
|
|
|
|
test('create temp signature files', () => {
|
|
const b64signature = fs.readFileSync(path.resolve('test/test_create_signature.sig.b64'), {encoding: 'utf8'}).replace(/(\r\n|\n|\r)/gm,"");
|
|
const data = helpers
|
|
.createSignatureFiles(
|
|
b64signature,
|
|
Constants.DEV_PUBLIC_KEY);
|
|
expect(data).toBeDefined();
|
|
expect(data.PublicKeyFile).toBeDefined();
|
|
expect(data.SignatureFile).toBeDefined();
|
|
|
|
expect(fs.statSync(data.SignatureFile).isFile()).toBe(true);
|
|
expect(fs.statSync(data.PublicKeyFile).isFile()).toBe(true);
|
|
|
|
const b64signature2 = fs.readFileSync(data.SignatureFile).toString('base64').replace(/(\r\n|\n|\r)/gm,"");
|
|
expect(b64signature2).toEqual(b64signature);
|
|
|
|
expect(fs.readFileSync(data.PublicKeyFile, {encoding: 'utf8'})).toEqual(Constants.DEV_PUBLIC_KEY);
|
|
fs.unlinkSync(data.PublicKeyFile);
|
|
fs.unlinkSync(data.SignatureFile);
|
|
});
|
|
|
|
test('verify sha56 success', ()=> {
|
|
const hash = fs.readFileSync('test/test_verify_sha256.dat.sha256', {encoding: 'utf8'});
|
|
return expect(helpers.verifyHash(path.resolve('test/test_verify_sha256.dat'), hash))
|
|
.resolves.toBe(hash)
|
|
});
|
|
|
|
test('verify sha56 fail', ()=> {
|
|
const hash = fs.readFileSync('test/test_verify_sha256.dat.sha256', {encoding: 'utf8'});
|
|
return expect(helpers.verifyHash(path.resolve('test/test_verify_sha256_fail.dat'), hash))
|
|
.rejects.toThrow();
|
|
}); |