agreed-client
Advanced tools
Comparing version 1.0.0 to 2.0.0
16
index.js
'use strict'; | ||
const agreed = require('agreed-core'); | ||
const Agreed = require('agreed-core'); | ||
const filter = require('./lib/filter'); | ||
const reporter = require('./lib/reporter'); | ||
const requestPromise = require('./lib/requestPromise'); | ||
const agreedReporter = require('./lib/reporter'); | ||
@@ -20,6 +21,13 @@ module.exports = (opts) => { | ||
const agreed = new Agreed(); | ||
const client = agreed.createClient(opts); | ||
const agrees = filter(client.getAgreement(), opts.filter); | ||
const responses = client.executeAgreement(agrees); | ||
return client.checkResponse(responses, agrees).then(reporter(agrees, opts)); | ||
client.requestPromise = requestPromise; | ||
const reporter = agreedReporter(agrees); | ||
return { | ||
client, | ||
agrees, | ||
reporter, | ||
}; | ||
}; |
@@ -7,3 +7,3 @@ 'use strict'; | ||
module.exports = (agrees, opts) => (results) => { | ||
module.exports = (agrees) => (results) => { | ||
return results.map((result, i) => { | ||
@@ -15,7 +15,7 @@ const agree = agrees[i]; | ||
const url = `${opts.scheme}://${opts.host}:${opts.port}${agree.request.path}`; | ||
const path = `${agree.request.path}`; | ||
if ((isEmpty(result) || isEmpty(diff)) && isEmpty(schemaErrors)) { | ||
console.log(`${colo.bold.green('✔ pass!')} ${agree.request.method} ${url}`); | ||
console.log(`${colo.bold.green('✔ pass!')} ${agree.request.method} ${path}`); | ||
} else { | ||
console.log(`${colo.bold.red('✗ fail!')} ${agree.request.method} ${url}`); | ||
console.log(`${colo.bold.red('✗ fail!')} ${agree.request.method} ${path}`); | ||
body && console.log(`${colo.green('body: ')}`, body); | ||
@@ -22,0 +22,0 @@ reason.diff(diff); |
{ | ||
"name": "agreed-client", | ||
"version": "1.0.0", | ||
"version": "2.0.0", | ||
"description": "agreed client, testing utilities", | ||
"main": "index.js", | ||
"bin": "bin/agreed-client.js", | ||
"scripts": { | ||
@@ -22,3 +23,3 @@ "test": "eater" | ||
"dependencies": { | ||
"agreed-core": "*", | ||
"agreed-core": "^2.1.1", | ||
"colo": "^0.3.2", | ||
@@ -28,3 +29,3 @@ "is-empty": "^1.0.0" | ||
"devDependencies": { | ||
"agreed-server": "^0.2.1", | ||
"agreed-server": "^2.0.0", | ||
"eater": "^3.0.0-5", | ||
@@ -31,0 +32,0 @@ "plz-port": "^1.0.0" |
@@ -16,5 +16,10 @@ agreed-client | ||
```javascript | ||
const client = require('agreed-client'); | ||
const agreedClient = require('agreed-client'); | ||
client({ | ||
const { | ||
client, | ||
agrees, | ||
responses, | ||
reporter, | ||
} = agreedClient({ | ||
path: './test/agreed.json5', // required | ||
@@ -24,5 +29,10 @@ scheme: 'http', // optional, default is http | ||
port: 30103, // optional, default is 80 | ||
}).then(() => { | ||
console.log('DONE!!!'); | ||
defaultRequestHeaders: { | ||
'x-jwt-token': 'foobarbaz' | ||
} | ||
}); | ||
client.checkResponse(responses, agrees) | ||
.then(reporter(agrees)) | ||
.then(() => console.log('DONE!!!')); | ||
``` |
'use strict'; | ||
const client = require('../index'); | ||
const server = require('agreed-server'); | ||
const agreedClient = require('../index'); | ||
const agreedServer = require('agreed-server'); | ||
const test = require('eater/runner').test; | ||
const plzPort = require('plz-port'); | ||
test('client: ', () => { | ||
plzPort().then((port) => { | ||
const app = server({ | ||
path: './test/agreed_server.json5', | ||
port: port, | ||
}); | ||
test('client: smoke', () => { | ||
const server = agreedServer({ | ||
path: './test/agreed_server.json5', | ||
port: 0, | ||
}).createServer(); | ||
app.on('listening', () => { | ||
client({ | ||
path: './test/agreed.json5', | ||
port: port, | ||
}).then(() => { | ||
app.close(); | ||
}); | ||
server.on('listening', () => { | ||
const { client, agrees, reporter } = agreedClient({ | ||
path: './test/agreed.json5', | ||
port: server.address().port, | ||
}); | ||
client.requestPromise(agrees).then(reporter).then(() => { | ||
server.close(); | ||
}); | ||
}); | ||
}); |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Shell access
Supply chain riskThis module accesses the system shell. Accessing the system shell increases the risk of executing arbitrary code.
Found 1 instance in 1 package
Wildcard dependency
QualityPackage has a dependency with a floating version range. This can cause issues if the dependency publishes a new major version.
Found 1 instance in 1 package
10593
17
266
1
37
1
+ Addedagreed-core@2.9.0(transitive)
- Removed@types/node@10.17.60(transitive)
- Removedagreed-core@3.2.5(transitive)
- Removedstable@0.1.8(transitive)
- Removedtypescript@3.9.10(transitive)
Updatedagreed-core@^2.1.1