diff --git a/package-lock.json b/package-lock.json index 3ca6de03..8a10146c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -215,14 +215,15 @@ } }, "@openstapps/core-tools": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@openstapps/core-tools/-/core-tools-0.1.1.tgz", - "integrity": "sha512-TGToynTkkud72q83JMY/pj28mFqW6tMNRX/SeGuAs0EDvlUaYDZBWiX7AlM7gM2MQSBWJIvK5pQ8S2Xct9js/w==", + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@openstapps/core-tools/-/core-tools-0.2.0.tgz", + "integrity": "sha512-sDRibFLdJP0K2eLx8wNHVYjizwKP2t5iZpnsBQGnybppAjOPXlDPwdJuDi6OGo0A0QSW/eiqdnDmAGnlh0a32Q==", "dev": true, "requires": { "@openstapps/logger": "0.0.3", "@types/async": "2.0.50", "@types/chai": "4.1.7", + "@types/del": "3.0.1", "@types/glob": "7.1.1", "@types/humanize-string": "1.0.0", "@types/mocha": "5.2.5", @@ -233,12 +234,14 @@ "async-pool-native": "0.1.0", "chai": "4.2.0", "commander": "2.19.0", + "del": "3.0.0", "glob": "7.1.3", "humanize-string": "1.0.2", "jsonschema": "1.2.4", "mocha": "5.2.0", "mocha-typescript": "1.1.17", "mustache": "3.0.1", + "toposort": "2.0.2", "ts-json-schema-generator": "0.38.1", "ts-node": "7.0.1", "typedoc": "0.14.0" @@ -374,6 +377,15 @@ "@types/node": "*" } }, + "@types/del": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/del/-/del-3.0.1.tgz", + "integrity": "sha512-y6qRq6raBuu965clKgx6FHuiPu3oHdtmzMPXi8Uahsjdq1L6DL5fS/aY5/s71YwM7k6K1QIWvem5vNwlnNGIkQ==", + "dev": true, + "requires": { + "@types/glob": "*" + } + }, "@types/events": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz", @@ -578,6 +590,21 @@ "integrity": "sha1-nlKHYrSpBmrRY6aWKjZEGOlibs4=", "dev": true }, + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "dev": true, + "requires": { + "array-uniq": "^1.0.1" + } + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "dev": true + }, "arrify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", @@ -1135,6 +1162,20 @@ "type-detect": "^4.0.0" } }, + "del": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/del/-/del-3.0.0.tgz", + "integrity": "sha1-U+z2mf/LyzljdpGrE7rxYIGXZuU=", + "dev": true, + "requires": { + "globby": "^6.1.0", + "is-path-cwd": "^1.0.0", + "is-path-in-cwd": "^1.0.0", + "p-map": "^1.1.1", + "pify": "^3.0.0", + "rimraf": "^2.2.8" + } + }, "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", @@ -1583,6 +1624,27 @@ "integrity": "sha512-0GZF1RiPKU97IHUO5TORo9w1PwrH/NBPl+fS7oMLdaTRiYmYbwK4NWoZWrAdd0/abG9R2BU+OiwyQpTpE6pdfQ==", "dev": true }, + "globby": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", + "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "dev": true, + "requires": { + "array-union": "^1.0.1", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + }, "graceful-fs": { "version": "4.1.15", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", @@ -1756,6 +1818,30 @@ "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", "dev": true }, + "is-path-cwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", + "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=", + "dev": true + }, + "is-path-in-cwd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz", + "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==", + "dev": true, + "requires": { + "is-path-inside": "^1.0.0" + } + }, + "is-path-inside": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", + "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "dev": true, + "requires": { + "path-is-inside": "^1.0.1" + } + }, "is-plain-obj": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", @@ -3456,6 +3542,12 @@ "p-limit": "^1.1.0" } }, + "p-map": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-1.2.0.tgz", + "integrity": "sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA==", + "dev": true + }, "p-try": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", @@ -3490,6 +3582,12 @@ "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", "dev": true }, + "path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", + "dev": true + }, "path-key": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", @@ -3713,6 +3811,15 @@ "path-parse": "^1.0.6" } }, + "rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", @@ -3951,6 +4058,12 @@ "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", "dev": true }, + "toposort": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/toposort/-/toposort-2.0.2.tgz", + "integrity": "sha1-riF2gXXRVZ1IvvNUILL0li8JwzA=", + "dev": true + }, "tough-cookie": { "version": "2.4.3", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", diff --git a/package.json b/package.json index 2e4bf9ff..d12f1292 100644 --- a/package.json +++ b/package.json @@ -33,7 +33,7 @@ }, "devDependencies": { "@openstapps/configuration": "0.5.1", - "@openstapps/core-tools": "0.1.1", + "@openstapps/core-tools": "0.2.0", "@types/chai": "4.1.7", "@types/mocha": "5.2.5", "@types/node": "10.12.18", diff --git a/test/index.spec.ts b/test/index.spec.ts index 83b5c90a..c0dc6f9c 100644 --- a/test/index.spec.ts +++ b/test/index.spec.ts @@ -26,17 +26,18 @@ export class MinimalConnectorSpec { static before() { this.validator = new Validator(); - this.validator.addSchemas('./node_modules/@openstapps/core/lib/schema'); this.connector = new MinimalConnector(); } static validateThings(things: SCMessage[]) { - things.forEach((thing: SCMessage) => { - // validate thing - expect(MinimalConnectorSpec.validator.validateThing(thing).errors).to.have.lengthOf(0, JSON.stringify({ - errors: MinimalConnectorSpec.validator.validateThing(thing).errors, - thing: thing, - })); + this.validator.addSchemas('./node_modules/@openstapps/core/lib/schema').then(() => { + things.forEach((thing: SCMessage) => { + // validate thing + expect(MinimalConnectorSpec.validator.validate(thing,"SCMessage").errors).to.have.lengthOf(0, JSON.stringify({ + errors: MinimalConnectorSpec.validator.validate(thing,"SCMessage").errors, + thing: thing, + })); + }); }); }