with this change all available stub converters on the classpath will be executed to convert the contract. That way you can make such a flow pass:
- from DSL input
- generate Java tests
- produce WireMock stubs
- produce Pact files
fixes#194
with this change we're providing support for Pact based contracts. No longer do you have to set up your contracts using the Groovy DSL. In the same way as with the DSL you can use the Pact contracts to generate tests and the stubs on the producer side.
fixes#96
Stub / Test Matchers (#186)
Without this change we're forcing users to embed their dynamic properties inside the body. For some this is natural and acceptable, but especially for the users coming from the Pact world this sounds bizarre. Also some other people have a problem with remembering who the consumer / producer is etc.
With this change we're introducing the stubMatchers and testMatchers section. Thanks to this one can separate the body from defining the dynamic properties. Especially for Pact users this is more natural. Speaking of which this is a prerequisite for #96fixes#185
Without this change we're forcing users to embed their dynamic properties inside the body. For some this is natural and acceptable, but especially for the users coming from the Pact world this sounds bizarre. Also some other people have a problem with remembering who the consumer / producer is etc.
With this change we're introducing the stubMatchers and testMatchers section. Thanks to this one can separate the body from defining the dynamic properties. Especially for Pact users this is more natural. Speaking of which this is a prerequisite for #96fixes#185
without this change when we work with the repo with common contracts then in the logs we can see that a lot of unnecessary files are processed. Those files are related to the fact that `target` / `build` folders are created and reside in the path in which we're searching for contracts. Due to this we have duplicates in terms of converting files.
with this change we add the `excludeBuildFolders` property that is by default turned off. If you enable it in the `pom.xml` that is used by the consumers to install stubs locally then the target folder gets ignored.
fixes#167
without this change contracts are taken from a wrong directory and they tend to be always up to date in a multi module project
with this change we check the contract sources from the current project. also we've removed the up to date check
fixes#159
the biggest problem was related with the scenario in which a jar with shared contracts is downloaded
with this change the output JAR structure is proper
fixes#156
When using contract plugins together with a shared repo with contracts we end up with creating contract tests for all the contracts. Stubs are created properly but tests generation ignores the path pattern.
With this change we fix the way tests are generated
fixes#155
without this change you can't control what should be excluded from your folder in the output stubs jar. That way when having a common repo with contracts you had the whole target put into stubs jar
with this change you can set e.g. `**/target/**/*.*` to exclude anything from the target folder
fixes#145
without this change you have to pass `contractRepositoryUrl` for the contract jar to be downloaded
with this change you can pass the `contractsWorkOffline` flag and the local maven repo will be analyzed
fixes#140