diff --git a/README.md b/README.md index f5caeb0..e736a1f 100644 --- a/README.md +++ b/README.md @@ -45,7 +45,7 @@ module('Pact | People', function(hooks) { // Record the state(s) the provider should be in prior to the interaction under test. // When verifying the generated pact document against the 'my-api' provider later, // its own 'a person exists' state will be invoked with the same parameters. - given('a person exists', { id: '123', name: 'Alice' }); + const person = given('a person exists', { id: '123', name: 'Alice' }); // Perform the interaction that this test is intended to record, in this case // fetching a particular person record by ID. @@ -481,7 +481,7 @@ For instance, the `'a person exists'` provider state described above could be de import { providerState } from 'ember-cli-pact'; providerState('a person exists', (server, { id, name }) => { - server.create('person', { id, name }); + return server.create('person', { id, name }); }); ``` diff --git a/addon-test-support/-private/interaction.js b/addon-test-support/-private/interaction.js index 5613563..6f8b3ed 100644 --- a/addon-test-support/-private/interaction.js +++ b/addon-test-support/-private/interaction.js @@ -10,7 +10,7 @@ export default class Interaction { } addProviderState(name, params) { - this.providerStates.push({ name, params }); + return this.providerStates.push({ name, params }); } recordRequest(request) { diff --git a/addon-test-support/mock-provider/index.js b/addon-test-support/mock-provider/index.js index 741b279..46054c4 100644 --- a/addon-test-support/mock-provider/index.js +++ b/addon-test-support/mock-provider/index.js @@ -46,9 +46,10 @@ export default class MockProvider { * @method addState * @param {string} name * @param {object} [params] + * @return {number} */ addState(name, params) { - this.interaction.addProviderState(name, params); + return this.interaction.addProviderState(name, params); } /** diff --git a/addon-test-support/mock-provider/mirage.js b/addon-test-support/mock-provider/mirage.js index fcfdc6e..071ac97 100644 --- a/addon-test-support/mock-provider/mirage.js +++ b/addon-test-support/mock-provider/mirage.js @@ -23,7 +23,7 @@ export default class MirageProvider extends MockProvider { let state = this.lookupProviderState(name); assert('Mirage provider states require a callback function', typeof state.config === 'function'); - state.config.call(null, this.server, params); + return state.config.call(null, this.server, params); } endInteraction() { diff --git a/tests/helpers/pact-provider-states/beds.js b/tests/helpers/pact-provider-states/beds.js index 4aafc04..46ca0ba 100644 --- a/tests/helpers/pact-provider-states/beds.js +++ b/tests/helpers/pact-provider-states/beds.js @@ -1,5 +1,5 @@ import { providerState } from 'ember-cli-pact'; providerState('a bed exists', (server, { id, size }) => { - server.create('bed', { id, size }); + return server.create('bed', { id, size }); }); diff --git a/tests/pact/beds-mocha-test.js b/tests/pact/beds-mocha-test.js index 8925b79..f30c800 100644 --- a/tests/pact/beds-mocha-test.js +++ b/tests/pact/beds-mocha-test.js @@ -8,12 +8,14 @@ describe('Pact | Beds', function() { setupPact(); beforeEach(function() { - given('a bed exists', { id: '1', size: 'double' }); - given('a bed exists', { id: '2', size: 'queen' }); + this.bed1 = given('a bed exists', { id: '1', size: 'double' }); + this.bed2 = given('a bed exists', { id: '2', size: 'queen' }); }); it('listing beds', async function() { let beds = await interaction(() => this.store().findAll('bed')); + assert.equal(this.bed1.id, 1); + assert.equal(this.bed2.id, 2); assert.deepEqual([...beds.mapBy('id')], ['1', '2']); assert.deepEqual([...beds.mapBy('size')], ['double', 'queen']); diff --git a/tests/pact/beds-qunit-test.js b/tests/pact/beds-qunit-test.js index 5491e35..d1ea5e1 100644 --- a/tests/pact/beds-qunit-test.js +++ b/tests/pact/beds-qunit-test.js @@ -7,12 +7,14 @@ module('Pact | Beds', function(hooks) { setupPact(hooks); hooks.beforeEach(function() { - given('a bed exists', { id: '1', size: 'double' }); - given('a bed exists', { id: '2', size: 'queen' }); + this.bed1 = given('a bed exists', { id: '1', size: 'double' }); + this.bed2 = given('a bed exists', { id: '2', size: 'queen' }); }); test('listing beds', async function(assert) { let beds = await interaction(() => this.store().findAll('bed')); + assert.equal(this.bed1.id, 1); + assert.equal(this.bed2.id, 2); assert.deepEqual([...beds.mapBy('id')], ['1', '2']); assert.deepEqual([...beds.mapBy('size')], ['double', 'queen']);