Get desktop application:
View/edit binary Protocol Buffers messages
Check that the plugin loaded OK. Returns the catalogue entries describing what the plugin provides
Request to verify the plugin has loaded OK
Implementation calling the plugin
Version of the implementation
Response to init plugin, providing the catalogue entries the plugin provides
List of entries the plugin supports
Updated catalogue. This will be sent when the core catalogue has been updated (probably by a plugin loading).
Catalogue of Core Pact + Plugin features
List of entries from the core catalogue
Request to perform a comparison of some contents (matching request)
Request to preform a comparison on an actual body given the expected one
Expected body from the Pact interaction
Actual received body
If unexpected keys or attributes should be allowed. Setting this to false results in additional keys or fields will cause a mismatch
Map of expressions to matching rules. The expressions follow the documented Pact matching rule expressions
Additional data added to the Pact/Interaction by the plugin
Response to the CompareContentsRequest with the results of the comparison
Error message if an error occurred. If this field is set, the remaining fields will be ignored and the verification marked as failed
There was a mismatch with the types of content. If this is set, the results may not be set.
Results of the match, keyed by matching rule expression
Request to configure/setup the interaction for later verification. Data returned will be persisted in the pact file.
Request to configure/setup an interaction so that it can be verified later
Content type of the interaction (MIME format)
This is data specified by the user in the consumer test
Response to the configure/setup an interaction request
If an error occurred. In this case, the other fields will be ignored/not set
The actual response if no error occurred.
Plugin specific data to be persisted in the pact file
Request to generate the content using any defined generators
Request to generate the contents using any defined generators
Original contents
Generators to apply
Additional data added to the Pact/Interaction by the plugin
Context data provided by the test framework
Generated body/message response
Start a mock server
Request to start a mock server
Interface to bind to. Will default to the loopback adapter
Port to bind to. Default (or a value of 0) get the OS to open a random port
If TLS should be used (if supported by the mock server)
Pact as JSON to use for the mock server behaviour
Context data provided by the test framework
Response to the start mock server request
If an error occurred
Mock server details
Shutdown a running mock server TODO: Replace the message types with MockServerRequest and MockServerResults in the next major version
Request to shut down a running mock server TODO: replace this with MockServerRequest in the next major version
The server ID to shutdown
Response to the shut down mock server request TODO: replace this with MockServerResults in the next major version
If the mock status is all ok
The results of the test run, will contain an entry for each request received by the mock server
Get the matching results from a running mock server
Request for a running mock server by ID
The server ID to shutdown
Matching results of the mock server.
If the mock status is all ok
The results of the test run, will contain an entry for each request received by the mock server
Prepare an interaction for verification. This should return any data required to construct any request so that it can be amended before the verification is run
Request to prepare an interaction for verification
Pact as JSON to use for the verification
Interaction key for the interaction from the Pact that is being verified
Any data supplied by the user to verify the interaction
Response for the prepare an interaction for verification request
If an error occurred
Interaction data required to construct any request
Execute the verification for the interaction.
Request data to verify an interaction
Interaction data required to construct the request
Any data supplied by the user to verify the interaction
Pact as JSON to use for the verification
Interaction key for the interaction from the Pact that is being verified
Result of running the verification
If an error occurred trying to run the verification
Message representing a request, response or message body
Used in:
, , , ,The content type of the body in MIME format (i.e. application/json)
Bytes of the actual content
Content type override to apply (if required). If omitted, the default rules of the Pact implementation will be used
Enum of content type override. This is a hint on how the content type should be treated.
Used in:
Determine the form of the content using the default rules of the Pact implementation
Contents must always be treated as a text form
Contents must always be treated as a binary form
Entry to be added to the core catalogue. Each entry describes one of the features the plugin provides. Entries will be stored in the catalogue under the key "plugin/$name/$type/$key".
Used in:
,Entry type
Entry key
Associated data required for the entry. For CONTENT_MATCHER and CONTENT_GENERATOR types, a "content-types" value (separated by semi-colons) is required for all the content types the plugin supports.
Used in:
Matcher for contents of messages, requests or response bodies
Generator for contents of messages, requests or response bodies
Transport for a network protocol
Matching rule for content field/values
Type of interaction
A mismatch for an particular item of content
Used in:
, ,Expected data bytes
Actual data bytes
Description of the mismatch
Path to the item that was matched. This is the value as per the documented Pact matching rule expressions.
Optional diff of the contents
Part of the interaction that the mismatch is for: body, headers, metadata, etc.
List of content mismatches
Used in:
Indicates that there was a mismatch with the content type
Used in:
Expected content type (MIME format)
Actual content type received (MIME format)
Which part the content is for
Used in:
The mode of the generation, if running from a consumer test or during provider verification
Used in:
Running on the consumer side
Running on the provider side
Example generator
Used in:
,Type of generator
Associated data for the generator
Interaction request data to be sent or received for verification
Used in:
, ,Request/Response body as bytes
Metadata associated with the request/response
Response to the configure/setup an interaction request
Used in:
Contents for the interaction
All matching rules to apply
Generators to apply
For message interactions, any metadata to be applied
Plugin specific data to be persisted in the pact file
Markdown/HTML formatted text representation of the interaction
Description of what part this interaction belongs to (in the case of there being more than one, for instance, request/response messages)
All matching rules to apply to any message metadata
Generators to apply to any message metadata
Type of markup used
Used in:
CommonMark format
HTML format
Represents a matching rule
Used in:
Type of the matching rule
Associated data for the matching rule
List of matching rules
Used in:
,Request metadata value. Will either be a JSON-like value, or binary data
Used in:
Details on a running mock server
Used in:
Mock server unique ID
Port the mock server is running on
IP address the mock server is bound to. Probably an IP6 address, but may be IP4
Result of a request that the mock server received
Used in:
,service + method that was requested
If an error occurred trying to handle the request
Any mismatches that occurred
Plugin configuration added to the pact file by the ConfigureInteraction step
Used in:
, , ,Data to be persisted against the interaction
Data to be persisted in the Pact file metadata (Global data)
Result of running the verification
Used in:
Was the verification successful?
Interaction data retrieved from the provider (optional)
Any mismatches that occurred
Output for the verification to display to the user
Used in: