pact-foundation / pact-mock_service

Provides a mock service for use with Pact
https://pact.io
MIT License
72 stars 68 forks source link

Feature request - Response based on provider state #134

Open foliv57 opened 2 years ago

foliv57 commented 2 years ago

Hi,

For now, if there is multiple matching interactions, the mock service return only one response.

From doc: Where multiple matching interactions are found, the interactions will be sorted by response status, and the first one will be returned. This may lead to some non-deterministic behaviour.

To stay in line with the Pact philosophy and pact description, why not just introducing a custom HTTP header "X-Provider-State" to let the consumer set the expected provider state.

Like this, the mock service can know the response to produce based on the pact.

Regards

Thank you

iku000888 commented 1 year ago

:+1: on this! Although what I gather from how https://github.com/pact-foundation/pact-provider-verifier behaves, the provider state will be communicated via an explicit POST request before the interaction step.