/
path.provider.pact.test.js
48 lines (44 loc) · 1.28 KB
/
path.provider.pact.test.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
const { Verifier } = require('@pact-foundation/pact');
const { server } = require('./provider');
describe('Pact Verification', () => {
let listener;
beforeAll(() => {
listener = server.listen(8081);
});
it('validates the expectations of PathProviderService', () => {
const opts = {
logLevel: 'INFO',
providerBaseUrl: 'http://localhost:8081',
providerVersion: '1.0.0-someprovidersha',
provider: 'path-provider',
consumerVersionSelectors: [
{ tag: 'master', latest: true },
{ tag: 'prod', latest: true }
],
pactUrls: [
'./pacts/v2-path-consumer-path-provider.json',
],
enablePending: true,
stateHandlers: {
["an id of 12 exists"]: {
setup: (parameters) => {
// do your setup here
// return a promise if you need to
return Promise.resolve("Seeded data")
},
teardown: (parameters) => {
// do your teardown here
// return a promise if you need to
},
}
}
};
return new Verifier(opts)
.verifyProvider()
.then((output) => {
console.log('Pact Verification Complete!');
console.log(output);
})
.finally(() => listener.close());
});
});