fixes to test harness
This commit is contained in:
parent
afb9fba64b
commit
5dfa8d79e1
@ -57,12 +57,14 @@ const paths = {
|
|||||||
"popup/*.{ts,tsx}",
|
"popup/*.{ts,tsx}",
|
||||||
"pages/*.{ts,tsx}",
|
"pages/*.{ts,tsx}",
|
||||||
"!**/*.d.ts",
|
"!**/*.d.ts",
|
||||||
|
"!**/*-test*.ts",
|
||||||
],
|
],
|
||||||
decl: [
|
decl: [
|
||||||
"lib/refs.d.ts",
|
"lib/refs.d.ts",
|
||||||
],
|
],
|
||||||
dev: [
|
dev: [
|
||||||
"testlib/**/.ts",
|
"testlib/**/.ts",
|
||||||
|
"**/*-test*.ts",
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
dist: [
|
dist: [
|
||||||
|
@ -1,6 +1,9 @@
|
|||||||
import {CryptoApi} from "./cryptoApi";
|
import {CryptoApi} from "./cryptoApi";
|
||||||
import {test, TestLib} from "testlib/talertest";
|
import {test, TestLib} from "testlib/talertest";
|
||||||
|
|
||||||
test("string hashing", (t: TestLib) => {
|
test("string hashing bla", async (t: TestLib) => {
|
||||||
|
let crypto = new CryptoApi();
|
||||||
|
let s = await crypto.hashString("hello taler");
|
||||||
|
console.log(s);
|
||||||
|
t.pass();
|
||||||
});
|
});
|
||||||
|
2
node_modules/.yarn-integrity
generated
vendored
2
node_modules/.yarn-integrity
generated
vendored
@ -1 +1 @@
|
|||||||
4ba2f689d57511507e94d43fc06be3ad7c3198ea985e1cb661c2eef84d2fc993
|
b17d9b8daaa8d5ec093068da508250296323997ac6ead0747fcdc5090a390154
|
@ -15,6 +15,7 @@
|
|||||||
"license": "GPL-3.0",
|
"license": "GPL-3.0",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"better-assert": "^1.0.2",
|
"better-assert": "^1.0.2",
|
||||||
|
"connect": "^3.5.0",
|
||||||
"del": "^2.2.0",
|
"del": "^2.2.0",
|
||||||
"glob": "^7.0.3",
|
"glob": "^7.0.3",
|
||||||
"gulp": "^3.9.1",
|
"gulp": "^3.9.1",
|
||||||
@ -30,9 +31,11 @@
|
|||||||
"gulp-zip": "^3.1.0",
|
"gulp-zip": "^3.1.0",
|
||||||
"istanbul-lib-instrument": "^1.0.0-alpha.6",
|
"istanbul-lib-instrument": "^1.0.0-alpha.6",
|
||||||
"map-stream": "0.0.6",
|
"map-stream": "0.0.6",
|
||||||
|
"minimist": "^1.2.0",
|
||||||
"mocha": "^2.4.5",
|
"mocha": "^2.4.5",
|
||||||
"po2json": "git+https://github.com/mikeedwards/po2json",
|
"po2json": "git+https://github.com/mikeedwards/po2json",
|
||||||
"selenium-webdriver": "^3.0.0-beta-3",
|
"selenium-webdriver": "^3.0.0-beta-3",
|
||||||
|
"serve-static": "^1.11.1",
|
||||||
"systemjs": "^0.19.14",
|
"systemjs": "^0.19.14",
|
||||||
"through2": "^2.0.1",
|
"through2": "^2.0.1",
|
||||||
"typescript": "^2.0.3",
|
"typescript": "^2.0.3",
|
||||||
|
@ -53,6 +53,11 @@ let mod = System.newModule({Module: emsc, default: emsc});
|
|||||||
let modName = System.normalizeSync(__dirname + "/../../lib/emscripten/taler-emscripten-lib.js");
|
let modName = System.normalizeSync(__dirname + "/../../lib/emscripten/taler-emscripten-lib.js");
|
||||||
System.set(modName, mod);
|
System.set(modName, mod);
|
||||||
|
|
||||||
|
process.on('unhandledRejection', function(reason, p){
|
||||||
|
console.log("Possibly Unhandled Rejection at: Promise ", p, " reason: ", reason);
|
||||||
|
process.exit(1);
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
let testName = process.argv[2];
|
let testName = process.argv[2];
|
||||||
System.import("testlib/talertest")
|
System.import("testlib/talertest")
|
||||||
|
@ -25,21 +25,63 @@ var webdriver = require('selenium-webdriver');
|
|||||||
var chrome = require('selenium-webdriver/chrome');
|
var chrome = require('selenium-webdriver/chrome');
|
||||||
var path = require("path");
|
var path = require("path");
|
||||||
var process = require("process");
|
var process = require("process");
|
||||||
|
var fs = require("fs");
|
||||||
|
|
||||||
var p = "file://" + __dirname + "/testhost.html";
|
var connect = require('connect');
|
||||||
|
var serveStatic = require('serve-static');
|
||||||
|
|
||||||
if (!process.argv[2]) {
|
// Port of the web server used to serve the test files
|
||||||
console.log("no test script given");
|
var httpPort = 8080;
|
||||||
|
|
||||||
|
var p = `http://localhost:${httpPort}/testlib/selenium/testhost.html`;
|
||||||
|
|
||||||
|
var argv = require('minimist')(process.argv.slice(2), {"boolean": ["keep-open"]});
|
||||||
|
|
||||||
|
console.log(argv);
|
||||||
|
|
||||||
|
function printUsage() {
|
||||||
|
console.log(`Usage: [--keep-open] TESTSCRIPT`);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (argv._.length != 1) {
|
||||||
|
console.log("exactly one test script must be given");
|
||||||
|
printUsage();
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
var testScript = path.resolve(process.argv[2]);
|
var testScriptName = path.resolve(argv._[0]);
|
||||||
|
var projectRoot = path.resolve(__dirname, "../../");
|
||||||
|
if (!testScriptName.startsWith(projectRoot)) {
|
||||||
|
console.log("test file must be inside wallet project root");
|
||||||
|
process.exit(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
var testScript = "./" + testScriptName.substring(projectRoot.length);
|
||||||
|
console.log("test script:", testScript);
|
||||||
|
console.log("test script name:", testScriptName);
|
||||||
|
console.log("root:", projectRoot);
|
||||||
|
|
||||||
|
try {
|
||||||
|
var stats = fs.lstatSync(path.resolve(projectRoot, testScript));
|
||||||
|
if (!stats.isFile()) {
|
||||||
|
throw Error("test must be a file");
|
||||||
|
}
|
||||||
|
} catch (e) {
|
||||||
|
console.log("can't execute test");
|
||||||
|
console.log(e);
|
||||||
|
process.exit(e);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
var script = `
|
var script = `
|
||||||
function f() {
|
function f() {
|
||||||
|
if ("undefined" == typeof System) {
|
||||||
|
console.log("can't access module loader");
|
||||||
|
return
|
||||||
|
}
|
||||||
System.import("testlib/talertest")
|
System.import("testlib/talertest")
|
||||||
.then(tt => {
|
.then(tt => {
|
||||||
SystemJS.import("file://${testScript}")
|
SystemJS.import("http://localhost:${httpPort}/${testScript}")
|
||||||
.then(() => {
|
.then(() => {
|
||||||
return tt.run();
|
return tt.run();
|
||||||
})
|
})
|
||||||
@ -69,6 +111,9 @@ function untilTestOver() {
|
|||||||
|
|
||||||
console.log("TAP version 13");
|
console.log("TAP version 13");
|
||||||
|
|
||||||
|
let srv = connect().use(serveStatic(__dirname + "/../../"));
|
||||||
|
let l = srv.listen(8080);
|
||||||
|
|
||||||
var driver = new webdriver.Builder()
|
var driver = new webdriver.Builder()
|
||||||
.setLoggingPrefs({browser: 'ALL'})
|
.setLoggingPrefs({browser: 'ALL'})
|
||||||
.forBrowser('chrome')
|
.forBrowser('chrome')
|
||||||
@ -80,9 +125,6 @@ driver.wait(untilTestOver);
|
|||||||
|
|
||||||
driver.manage().logs().get("browser").then((logs) => {
|
driver.manage().logs().get("browser").then((logs) => {
|
||||||
for (let l of logs) {
|
for (let l of logs) {
|
||||||
if (l.level.name != "INFO") {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
if (l.message.startsWith("{")) {
|
if (l.message.startsWith("{")) {
|
||||||
// format not understood, sometimes messages are logged
|
// format not understood, sometimes messages are logged
|
||||||
// with more structure, just pass it on
|
// with more structure, just pass it on
|
||||||
@ -94,7 +136,10 @@ driver.manage().logs().get("browser").then((logs) => {
|
|||||||
// Skip file url and LINE:COL
|
// Skip file url and LINE:COL
|
||||||
console.log(l.message.substring(s2));
|
console.log(l.message.substring(s2));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!argv["keep-open"]) {
|
||||||
|
driver.quit();
|
||||||
|
l.close();
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
driver.quit();
|
|
||||||
|
|
||||||
|
@ -2,10 +2,10 @@
|
|||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<title>Browser Test Host</title>
|
<title>Browser Test Host</title>
|
||||||
<script src="../../lib/vendor/system-csp-production.src.js"></script>
|
<script src="/lib/vendor/system-csp-production.src.js"></script>
|
||||||
<script>
|
<script>
|
||||||
System.config({
|
System.config({
|
||||||
baseURL: "../../",
|
baseURL: "/",
|
||||||
defaultJSExtensions: true,
|
defaultJSExtensions: true,
|
||||||
meta: {
|
meta: {
|
||||||
"lib/emscripten/taler-emscripten-lib": {
|
"lib/emscripten/taler-emscripten-lib": {
|
||||||
|
@ -19,7 +19,7 @@
|
|||||||
* @author Florian Dold
|
* @author Florian Dold
|
||||||
*/
|
*/
|
||||||
|
|
||||||
type TestFn = (t: TestLib) => void;
|
type TestFn = (t: TestLib) => void | Promise<void>;
|
||||||
|
|
||||||
interface Test {
|
interface Test {
|
||||||
name: string;
|
name: string;
|
||||||
@ -51,9 +51,15 @@ export async function run() {
|
|||||||
console.log(`1..${tests.length}`);
|
console.log(`1..${tests.length}`);
|
||||||
for (let i in tests) {
|
for (let i in tests) {
|
||||||
let t = tests[i];
|
let t = tests[i];
|
||||||
|
let passed = false;
|
||||||
let lastMsg: string|undefined = undefined;
|
let lastMsg: string|undefined = undefined;
|
||||||
let p = new Promise((resolve, reject) => {
|
let p = new Promise((resolve, reject) => {
|
||||||
let pass = (msg?: string) => {
|
let pass = (msg?: string) => {
|
||||||
|
if (passed) {
|
||||||
|
reject(Error("called pass twice"));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
passed = true;
|
||||||
lastMsg = msg;
|
lastMsg = msg;
|
||||||
resolve();
|
resolve();
|
||||||
};
|
};
|
||||||
@ -69,7 +75,9 @@ export async function run() {
|
|||||||
throw Error("test failed");
|
throw Error("test failed");
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
t.testFn({pass,fail, assert});
|
// Test might return a promise. If so, wait for it.
|
||||||
|
let r = t.testFn({pass,fail, assert});
|
||||||
|
r.then(() => resolve(), (e) => reject(e));
|
||||||
});
|
});
|
||||||
|
|
||||||
console.log(`# ${t.name}`);
|
console.log(`# ${t.name}`);
|
||||||
@ -80,6 +88,9 @@ export async function run() {
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
await p;
|
await p;
|
||||||
|
if (passed) {
|
||||||
|
throw Error("test did not call 'pass'");
|
||||||
|
}
|
||||||
console.log(`ok ${Number(i) + 1} ${lastMsg}`);
|
console.log(`ok ${Number(i) + 1} ${lastMsg}`);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.error(e);
|
console.error(e);
|
||||||
|
@ -16,15 +16,15 @@
|
|||||||
"lib/components.ts",
|
"lib/components.ts",
|
||||||
"lib/refs.d.ts",
|
"lib/refs.d.ts",
|
||||||
"lib/i18n.ts",
|
"lib/i18n.ts",
|
||||||
|
"lib/wallet/cryptoApi-test.ts",
|
||||||
"lib/taler-wallet-lib.ts",
|
"lib/taler-wallet-lib.ts",
|
||||||
|
"lib/wallet/emscriptif-test.ts",
|
||||||
"lib/wallet/checkable.ts",
|
"lib/wallet/checkable.ts",
|
||||||
"lib/wallet/chromeBadge.ts",
|
"lib/wallet/chromeBadge.ts",
|
||||||
"lib/wallet/cryptoApi-test.ts",
|
|
||||||
"lib/wallet/cryptoApi.ts",
|
"lib/wallet/cryptoApi.ts",
|
||||||
"lib/wallet/cryptoLib.ts",
|
"lib/wallet/cryptoLib.ts",
|
||||||
"lib/wallet/cryptoWorker.ts",
|
"lib/wallet/cryptoWorker.ts",
|
||||||
"lib/wallet/db.ts",
|
"lib/wallet/db.ts",
|
||||||
"lib/wallet/emscriptif-test.ts",
|
|
||||||
"lib/wallet/emscriptif.ts",
|
"lib/wallet/emscriptif.ts",
|
||||||
"lib/wallet/helpers.ts",
|
"lib/wallet/helpers.ts",
|
||||||
"lib/wallet/http.ts",
|
"lib/wallet/http.ts",
|
||||||
|
130
yarn.lock
130
yarn.lock
@ -325,6 +325,15 @@ concat-with-sourcemaps@^1.0.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
source-map "^0.5.1"
|
source-map "^0.5.1"
|
||||||
|
|
||||||
|
connect:
|
||||||
|
version "3.5.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/connect/-/connect-3.5.0.tgz#b357525a0b4c1f50599cd983e1d9efeea9677198"
|
||||||
|
dependencies:
|
||||||
|
debug "~2.2.0"
|
||||||
|
finalhandler "0.5.0"
|
||||||
|
parseurl "~1.3.1"
|
||||||
|
utils-merge "1.0.0"
|
||||||
|
|
||||||
convert-source-map@^1.1.1:
|
convert-source-map@^1.1.1:
|
||||||
version "1.3.0"
|
version "1.3.0"
|
||||||
resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.3.0.tgz#e9f3e9c6e2728efc2676696a70eb382f73106a67"
|
resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.3.0.tgz#e9f3e9c6e2728efc2676696a70eb382f73106a67"
|
||||||
@ -357,7 +366,7 @@ dateformat@^1.0.11, dateformat@^1.0.7-1.2.3:
|
|||||||
get-stdin "^4.0.1"
|
get-stdin "^4.0.1"
|
||||||
meow "^3.3.0"
|
meow "^3.3.0"
|
||||||
|
|
||||||
debug@^2.2.0, debug@2.2.0:
|
debug@^2.2.0, debug@~2.2.0, debug@2.2.0:
|
||||||
version "2.2.0"
|
version "2.2.0"
|
||||||
resolved "https://registry.yarnpkg.com/debug/-/debug-2.2.0.tgz#f87057e995b1a1f6ae6a4960664137bc56f039da"
|
resolved "https://registry.yarnpkg.com/debug/-/debug-2.2.0.tgz#f87057e995b1a1f6ae6a4960664137bc56f039da"
|
||||||
dependencies:
|
dependencies:
|
||||||
@ -385,10 +394,18 @@ del@^2.2.0:
|
|||||||
pinkie-promise "^2.0.0"
|
pinkie-promise "^2.0.0"
|
||||||
rimraf "^2.2.8"
|
rimraf "^2.2.8"
|
||||||
|
|
||||||
|
depd@~1.1.0:
|
||||||
|
version "1.1.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.0.tgz#e1bd82c6aab6ced965b97b88b17ed3e528ca18c3"
|
||||||
|
|
||||||
deprecated@^0.0.1:
|
deprecated@^0.0.1:
|
||||||
version "0.0.1"
|
version "0.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/deprecated/-/deprecated-0.0.1.tgz#f9c9af5464afa1e7a971458a8bdef2aa94d5bb19"
|
resolved "https://registry.yarnpkg.com/deprecated/-/deprecated-0.0.1.tgz#f9c9af5464afa1e7a971458a8bdef2aa94d5bb19"
|
||||||
|
|
||||||
|
destroy@~1.0.4:
|
||||||
|
version "1.0.4"
|
||||||
|
resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80"
|
||||||
|
|
||||||
detect-file@^0.1.0:
|
detect-file@^0.1.0:
|
||||||
version "0.1.0"
|
version "0.1.0"
|
||||||
resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-0.1.0.tgz#4935dedfd9488648e006b0129566e9386711ea63"
|
resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-0.1.0.tgz#4935dedfd9488648e006b0129566e9386711ea63"
|
||||||
@ -420,6 +437,14 @@ duplexify@^3.2.0:
|
|||||||
readable-stream "^2.0.0"
|
readable-stream "^2.0.0"
|
||||||
stream-shift "^1.0.0"
|
stream-shift "^1.0.0"
|
||||||
|
|
||||||
|
ee-first@1.1.1:
|
||||||
|
version "1.1.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d"
|
||||||
|
|
||||||
|
encodeurl@~1.0.1:
|
||||||
|
version "1.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.1.tgz#79e3d58655346909fe6f0f45a5de68103b294d20"
|
||||||
|
|
||||||
encoding@^0.1.11:
|
encoding@^0.1.11:
|
||||||
version "0.1.12"
|
version "0.1.12"
|
||||||
resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb"
|
resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb"
|
||||||
@ -450,6 +475,10 @@ error-ex@^1.2.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
is-arrayish "^0.2.1"
|
is-arrayish "^0.2.1"
|
||||||
|
|
||||||
|
escape-html@~1.0.3:
|
||||||
|
version "1.0.3"
|
||||||
|
resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988"
|
||||||
|
|
||||||
escape-string-regexp@^1.0.0, escape-string-regexp@^1.0.2:
|
escape-string-regexp@^1.0.0, escape-string-regexp@^1.0.2:
|
||||||
version "1.0.5"
|
version "1.0.5"
|
||||||
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
|
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
|
||||||
@ -462,6 +491,10 @@ esutils@^2.0.2:
|
|||||||
version "2.0.2"
|
version "2.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b"
|
resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b"
|
||||||
|
|
||||||
|
etag@~1.7.0:
|
||||||
|
version "1.7.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/etag/-/etag-1.7.0.tgz#03d30b5f67dd6e632d2945d30d6652731a34d5d8"
|
||||||
|
|
||||||
expand-brackets@^0.1.4:
|
expand-brackets@^0.1.4:
|
||||||
version "0.1.5"
|
version "0.1.5"
|
||||||
resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b"
|
resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b"
|
||||||
@ -517,6 +550,16 @@ fill-range@^2.1.0:
|
|||||||
repeat-element "^1.1.2"
|
repeat-element "^1.1.2"
|
||||||
repeat-string "^1.5.2"
|
repeat-string "^1.5.2"
|
||||||
|
|
||||||
|
finalhandler@0.5.0:
|
||||||
|
version "0.5.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-0.5.0.tgz#e9508abece9b6dba871a6942a1d7911b91911ac7"
|
||||||
|
dependencies:
|
||||||
|
debug "~2.2.0"
|
||||||
|
escape-html "~1.0.3"
|
||||||
|
on-finished "~2.3.0"
|
||||||
|
statuses "~1.3.0"
|
||||||
|
unpipe "~1.0.0"
|
||||||
|
|
||||||
find-index@^0.1.1:
|
find-index@^0.1.1:
|
||||||
version "0.1.1"
|
version "0.1.1"
|
||||||
resolved "https://registry.yarnpkg.com/find-index/-/find-index-0.1.1.tgz#675d358b2ca3892d795a1ab47232f8b6e2e0dde4"
|
resolved "https://registry.yarnpkg.com/find-index/-/find-index-0.1.1.tgz#675d358b2ca3892d795a1ab47232f8b6e2e0dde4"
|
||||||
@ -567,6 +610,10 @@ for-own@^0.1.4:
|
|||||||
dependencies:
|
dependencies:
|
||||||
for-in "^0.1.5"
|
for-in "^0.1.5"
|
||||||
|
|
||||||
|
fresh@0.3.0:
|
||||||
|
version "0.3.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.3.0.tgz#651f838e22424e7566de161d8358caa199f83d4f"
|
||||||
|
|
||||||
fs-exists-sync@^0.1.0:
|
fs-exists-sync@^0.1.0:
|
||||||
version "0.1.0"
|
version "0.1.0"
|
||||||
resolved "https://registry.yarnpkg.com/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz#982d6893af918e72d08dec9e8673ff2b5a8d6add"
|
resolved "https://registry.yarnpkg.com/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz#982d6893af918e72d08dec9e8673ff2b5a8d6add"
|
||||||
@ -935,6 +982,14 @@ hosted-git-info@^2.1.4:
|
|||||||
version "2.1.5"
|
version "2.1.5"
|
||||||
resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.1.5.tgz#0ba81d90da2e25ab34a332e6ec77936e1598118b"
|
resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.1.5.tgz#0ba81d90da2e25ab34a332e6ec77936e1598118b"
|
||||||
|
|
||||||
|
http-errors@~1.5.0:
|
||||||
|
version "1.5.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.5.0.tgz#b1cb3d8260fd8e2386cad3189045943372d48211"
|
||||||
|
dependencies:
|
||||||
|
inherits "2.0.1"
|
||||||
|
setprototypeof "1.0.1"
|
||||||
|
statuses ">= 1.3.0 < 2"
|
||||||
|
|
||||||
iconv-lite@~0.4.13:
|
iconv-lite@~0.4.13:
|
||||||
version "0.4.13"
|
version "0.4.13"
|
||||||
resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.13.tgz#1f88aba4ab0b1508e8312acc39345f36e992e2f2"
|
resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.13.tgz#1f88aba4ab0b1508e8312acc39345f36e992e2f2"
|
||||||
@ -960,6 +1015,10 @@ inherits@1:
|
|||||||
version "1.0.2"
|
version "1.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/inherits/-/inherits-1.0.2.tgz#ca4309dadee6b54cc0b8d247e8d7c7a0975bdc9b"
|
resolved "https://registry.yarnpkg.com/inherits/-/inherits-1.0.2.tgz#ca4309dadee6b54cc0b8d247e8d7c7a0975bdc9b"
|
||||||
|
|
||||||
|
inherits@2.0.1:
|
||||||
|
version "2.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1"
|
||||||
|
|
||||||
ini@^1.3.4:
|
ini@^1.3.4:
|
||||||
version "1.3.4"
|
version "1.3.4"
|
||||||
resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e"
|
resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e"
|
||||||
@ -1480,6 +1539,10 @@ micromatch@^2.3.7:
|
|||||||
parse-glob "^3.0.4"
|
parse-glob "^3.0.4"
|
||||||
regex-cache "^0.4.2"
|
regex-cache "^0.4.2"
|
||||||
|
|
||||||
|
mime@1.3.4:
|
||||||
|
version "1.3.4"
|
||||||
|
resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.4.tgz#115f9e3b6b3daf2959983cb38f149a2d40eb5d53"
|
||||||
|
|
||||||
minimatch@^2.0.1:
|
minimatch@^2.0.1:
|
||||||
version "2.0.10"
|
version "2.0.10"
|
||||||
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-2.0.10.tgz#8d087c39c6b38c001b97fca7ce6d0e1e80afbac7"
|
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-2.0.10.tgz#8d087c39c6b38c001b97fca7ce6d0e1e80afbac7"
|
||||||
@ -1506,14 +1569,14 @@ minimatch@0.3:
|
|||||||
lru-cache "2"
|
lru-cache "2"
|
||||||
sigmund "~1.0.0"
|
sigmund "~1.0.0"
|
||||||
|
|
||||||
|
minimist, minimist@^1.1.0, minimist@^1.1.3:
|
||||||
|
version "1.2.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
|
||||||
|
|
||||||
minimist@^0.2.0:
|
minimist@^0.2.0:
|
||||||
version "0.2.0"
|
version "0.2.0"
|
||||||
resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.2.0.tgz#4dffe525dae2b864c66c2e23c6271d7afdecefce"
|
resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.2.0.tgz#4dffe525dae2b864c66c2e23c6271d7afdecefce"
|
||||||
|
|
||||||
minimist@^1.1.0, minimist@^1.1.3:
|
|
||||||
version "1.2.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
|
|
||||||
|
|
||||||
minimist@0.0.8:
|
minimist@0.0.8:
|
||||||
version "0.0.8"
|
version "0.0.8"
|
||||||
resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
|
resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
|
||||||
@ -1600,6 +1663,12 @@ object.omit@^2.0.0:
|
|||||||
for-own "^0.1.4"
|
for-own "^0.1.4"
|
||||||
is-extendable "^0.1.1"
|
is-extendable "^0.1.1"
|
||||||
|
|
||||||
|
on-finished@~2.3.0:
|
||||||
|
version "2.3.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947"
|
||||||
|
dependencies:
|
||||||
|
ee-first "1.1.1"
|
||||||
|
|
||||||
once@^1.3.0:
|
once@^1.3.0:
|
||||||
version "1.4.0"
|
version "1.4.0"
|
||||||
resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
|
resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
|
||||||
@ -1673,6 +1742,10 @@ parse-json@^2.2.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
error-ex "^1.2.0"
|
error-ex "^1.2.0"
|
||||||
|
|
||||||
|
parseurl@~1.3.1:
|
||||||
|
version "1.3.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.1.tgz#c8ab8c9223ba34888aa64a297b28853bec18da56"
|
||||||
|
|
||||||
path-dirname@^1.0.0:
|
path-dirname@^1.0.0:
|
||||||
version "1.0.2"
|
version "1.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0"
|
resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0"
|
||||||
@ -1761,6 +1834,10 @@ randomatic@^1.1.3:
|
|||||||
is-number "^2.0.2"
|
is-number "^2.0.2"
|
||||||
kind-of "^3.0.2"
|
kind-of "^3.0.2"
|
||||||
|
|
||||||
|
range-parser@~1.2.0:
|
||||||
|
version "1.2.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e"
|
||||||
|
|
||||||
read-pkg-up@^1.0.1:
|
read-pkg-up@^1.0.1:
|
||||||
version "1.0.1"
|
version "1.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02"
|
resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02"
|
||||||
@ -1906,10 +1983,41 @@ semver@^5.3.0, "semver@2 || 3 || 4 || 5":
|
|||||||
version "5.3.0"
|
version "5.3.0"
|
||||||
resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f"
|
resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f"
|
||||||
|
|
||||||
|
send@0.14.1:
|
||||||
|
version "0.14.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/send/-/send-0.14.1.tgz#a954984325392f51532a7760760e459598c89f7a"
|
||||||
|
dependencies:
|
||||||
|
debug "~2.2.0"
|
||||||
|
depd "~1.1.0"
|
||||||
|
destroy "~1.0.4"
|
||||||
|
encodeurl "~1.0.1"
|
||||||
|
escape-html "~1.0.3"
|
||||||
|
etag "~1.7.0"
|
||||||
|
fresh "0.3.0"
|
||||||
|
http-errors "~1.5.0"
|
||||||
|
mime "1.3.4"
|
||||||
|
ms "0.7.1"
|
||||||
|
on-finished "~2.3.0"
|
||||||
|
range-parser "~1.2.0"
|
||||||
|
statuses "~1.3.0"
|
||||||
|
|
||||||
sequencify@~0.0.7:
|
sequencify@~0.0.7:
|
||||||
version "0.0.7"
|
version "0.0.7"
|
||||||
resolved "https://registry.yarnpkg.com/sequencify/-/sequencify-0.0.7.tgz#90cff19d02e07027fd767f5ead3e7b95d1e7380c"
|
resolved "https://registry.yarnpkg.com/sequencify/-/sequencify-0.0.7.tgz#90cff19d02e07027fd767f5ead3e7b95d1e7380c"
|
||||||
|
|
||||||
|
serve-static:
|
||||||
|
version "1.11.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.11.1.tgz#d6cce7693505f733c759de57befc1af76c0f0805"
|
||||||
|
dependencies:
|
||||||
|
encodeurl "~1.0.1"
|
||||||
|
escape-html "~1.0.3"
|
||||||
|
parseurl "~1.3.1"
|
||||||
|
send "0.14.1"
|
||||||
|
|
||||||
|
setprototypeof@1.0.1:
|
||||||
|
version "1.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.1.tgz#52009b27888c4dc48f591949c0a8275834c1ca7e"
|
||||||
|
|
||||||
sigmund@~1.0.0:
|
sigmund@~1.0.0:
|
||||||
version "1.0.1"
|
version "1.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590"
|
resolved "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590"
|
||||||
@ -1940,6 +2048,10 @@ spdx-license-ids@^1.0.2:
|
|||||||
version "1.2.2"
|
version "1.2.2"
|
||||||
resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57"
|
resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57"
|
||||||
|
|
||||||
|
"statuses@>= 1.3.0 < 2", statuses@~1.3.0:
|
||||||
|
version "1.3.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.0.tgz#8e55758cb20e7682c1f4fce8dcab30bf01d1e07a"
|
||||||
|
|
||||||
stream-consume@~0.1.0:
|
stream-consume@~0.1.0:
|
||||||
version "0.1.0"
|
version "0.1.0"
|
||||||
resolved "https://registry.yarnpkg.com/stream-consume/-/stream-consume-0.1.0.tgz#a41ead1a6d6081ceb79f65b061901b6d8f3d1d0f"
|
resolved "https://registry.yarnpkg.com/stream-consume/-/stream-consume-0.1.0.tgz#a41ead1a6d6081ceb79f65b061901b6d8f3d1d0f"
|
||||||
@ -2134,6 +2246,10 @@ unique-stream@^2.0.2:
|
|||||||
json-stable-stringify "^1.0.0"
|
json-stable-stringify "^1.0.0"
|
||||||
through2-filter "^2.0.0"
|
through2-filter "^2.0.0"
|
||||||
|
|
||||||
|
unpipe@~1.0.0:
|
||||||
|
version "1.0.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec"
|
||||||
|
|
||||||
user-home@^1.1.1:
|
user-home@^1.1.1:
|
||||||
version "1.1.1"
|
version "1.1.1"
|
||||||
resolved "https://registry.yarnpkg.com/user-home/-/user-home-1.1.1.tgz#2b5be23a32b63a7c9deb8d0f28d485724a3df190"
|
resolved "https://registry.yarnpkg.com/user-home/-/user-home-1.1.1.tgz#2b5be23a32b63a7c9deb8d0f28d485724a3df190"
|
||||||
@ -2142,6 +2258,10 @@ util-deprecate@~1.0.1:
|
|||||||
version "1.0.2"
|
version "1.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
|
resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
|
||||||
|
|
||||||
|
utils-merge@1.0.0:
|
||||||
|
version "1.0.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.0.tgz#0294fb922bb9375153541c4f7096231f287c8af8"
|
||||||
|
|
||||||
v8flags@^2.0.2:
|
v8flags@^2.0.2:
|
||||||
version "2.0.11"
|
version "2.0.11"
|
||||||
resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-2.0.11.tgz#bca8f30f0d6d60612cc2c00641e6962d42ae6881"
|
resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-2.0.11.tgz#bca8f30f0d6d60612cc2c00641e6962d42ae6881"
|
||||||
|
Loading…
Reference in New Issue
Block a user