Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Overview
This pull request introduces enhancements to the
pact-jvm-mockk
library, focusing on adding support for request and response matching rules. These changes allow for more flexible contract definitions by enabling pattern-based matching rather than relying solely on exact values.Key Changes
README.md Updates:
Matcher
for headers and response bodies.Interface and Implementation Enhancements:
InteractionBuilder
andInteractionBuilderImpl
to include methods for defining request and response matching rules using aMatchingRulesBuilder
.New Classes:
Matcher
andMatchingRulesBuilder
classes to facilitate the creation of matching rules.Pact Data Model Updates:
Pact.Interaction.Request
andPact.Interaction.Response
data classes to include amatchingRules
property.Serialization Improvements:
Utils.kt
to ensure non-null fields are included in JSON serialization by default.Test Enhancements:
NonDeterministicPact.kt
andShoppingServiceContracts.kt
to utilize the new matching rules functionality.Pact Files:
Benefits
Testing
Additional Notes
README.md
for guidance on using the new matching rules.