allow tests
This commit is contained in:
parent
358311e8ac
commit
7c4a981434
10
package.json
10
package.json
@ -6,18 +6,24 @@
|
|||||||
"dev": "webpack --mode development --watch",
|
"dev": "webpack --mode development --watch",
|
||||||
"build": "webpack --mode production",
|
"build": "webpack --mode production",
|
||||||
"format": "npx prettier --write .",
|
"format": "npx prettier --write .",
|
||||||
"clean": "npx rimraf main.js"
|
"clean": "npx rimraf main.js",
|
||||||
|
"test": "env TS_NODE_COMPILER_OPTIONS='{\"module\": \"commonjs\" }' mocha -r ts-node/register -r jsdom-global/register 'tests/**/*.ts'"
|
||||||
},
|
},
|
||||||
"source": "main.ts",
|
"source": "main.ts",
|
||||||
"keywords": [],
|
"keywords": [],
|
||||||
"author": "",
|
"author": "",
|
||||||
"license": "Apache-2.0",
|
"license": "Apache-2.0",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@types/node": "^14.14.37",
|
"@types/chai": "^4.2.22",
|
||||||
"@types/mime-types": "^2.1.1",
|
"@types/mime-types": "^2.1.1",
|
||||||
|
"@types/mocha": "^9.0.0",
|
||||||
|
"@types/node": "^14.14.37",
|
||||||
|
"chai": "^4.3.4",
|
||||||
|
"mocha": "^9.1.3",
|
||||||
"prettier": "^2.4.1",
|
"prettier": "^2.4.1",
|
||||||
"terser-webpack-plugin": "^5.2.4",
|
"terser-webpack-plugin": "^5.2.4",
|
||||||
"ts-loader": "^9.2.6",
|
"ts-loader": "^9.2.6",
|
||||||
|
"ts-node": "^10.4.0",
|
||||||
"tslib": "^2.2.0",
|
"tslib": "^2.2.0",
|
||||||
"typescript": "^4.4.4",
|
"typescript": "^4.4.4",
|
||||||
"webdav-server": "^2.6.2",
|
"webdav-server": "^2.6.2",
|
||||||
|
|||||||
@ -1,6 +1,12 @@
|
|||||||
import * as base32 from "hi-base32";
|
import * as base32 from "hi-base32";
|
||||||
import { bufferToArrayBuffer, arrayBufferToBuffer } from "./misc";
|
import { bufferToArrayBuffer, arrayBufferToBuffer } from "./misc";
|
||||||
|
|
||||||
|
if (window === undefined) {
|
||||||
|
global.window = {
|
||||||
|
crypto: require("crypto").webcrypto,
|
||||||
|
} as any;
|
||||||
|
}
|
||||||
|
|
||||||
const DEFAULT_ITER = 10000;
|
const DEFAULT_ITER = 10000;
|
||||||
|
|
||||||
const getKeyIVFromPassword = async (
|
const getKeyIVFromPassword = async (
|
||||||
|
|||||||
21
tests/test-encrypt.ts
Normal file
21
tests/test-encrypt.ts
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
const webcrypto = require("crypto").webcrypto;
|
||||||
|
|
||||||
|
import { expect } from "chai";
|
||||||
|
import { encryptStringToBase32 } from "../src/encrypt";
|
||||||
|
|
||||||
|
describe("Encryption tests", () => {
|
||||||
|
beforeEach(function () {
|
||||||
|
const window = {
|
||||||
|
crypto: webcrypto,
|
||||||
|
};
|
||||||
|
|
||||||
|
global.window = window as any;
|
||||||
|
});
|
||||||
|
|
||||||
|
it("should encrypt string", async () => {
|
||||||
|
const k = "dkjdhkfhdkjgsdklxxd";
|
||||||
|
const password = "hey";
|
||||||
|
//console.log(window.crypto.getRandomValues)
|
||||||
|
expect(await encryptStringToBase32(k, password)).to.not.equal(k);
|
||||||
|
});
|
||||||
|
});
|
||||||
@ -38,6 +38,7 @@ module.exports = {
|
|||||||
// console: require.resolve("console-browserify"),
|
// console: require.resolve("console-browserify"),
|
||||||
// constants: require.resolve("constants-browserify"),
|
// constants: require.resolve("constants-browserify"),
|
||||||
// crypto: require.resolve("crypto-browserify"),
|
// crypto: require.resolve("crypto-browserify"),
|
||||||
|
crypto: false, // deliberately set to false, since we use webcrypto here
|
||||||
// domain: require.resolve("domain-browser"),
|
// domain: require.resolve("domain-browser"),
|
||||||
// events: require.resolve("events"),
|
// events: require.resolve("events"),
|
||||||
// http: require.resolve("stream-http"),
|
// http: require.resolve("stream-http"),
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user