Commit Graph

463 Commits

Author SHA1 Message Date
buildmaster
0cb549b8e7 Bumping versions 2019-01-25 14:01:10 +00:00
buildmaster
6597c6eec2 Bumping versions to 2.1.1.BUILD-SNAPSHOT after release 2019-01-22 20:46:19 +00:00
buildmaster
1314163825 Going back to snapshots 2019-01-22 20:46:18 +00:00
buildmaster
cd239d8c39 Update SNAPSHOT to 2.1.0.RELEASE 2019-01-22 20:39:11 +00:00
Marcin Grzejszczak
281bd653ae Bumped Boot to 2.1.2.RELEASE 2019-01-21 13:34:49 +01:00
Olga Maciaszek-Sharma
6c3caddb7b Add xml support (#855)
* Start working on generating stub requests from Xml.

* Start implementing matching by xpath.

* Handle xml request body matchers.

* Merge branch 'master' into add-xml-support

* Implement analysing xmls and converting nodes to matchers.

* Handle attributes in xml analysis and generate stubs with xml body matchers.

* Make XmlToXPathsConverter statically compiled.

* Start extracting json test generation logic out of the MethodBodyBuilder.

* Fix extracted JsonBodyVerificationBuilder. Fix processing attributes
from xml while generating stubs. Fix and adjust tests to recent changes.

* Merge branch 'master' into add-xml-support

# Conflicts:
#	spring-cloud-contract-verifier/src/main/groovy/org/springframework/cloud/contract/verifier/builder/MethodBodyBuilder.groovy
#	spring-cloud-contract-verifier/src/main/groovy/org/springframework/cloud/contract/verifier/converter/ContractsToYaml.groovy
#	spring-cloud-contract-verifier/src/main/groovy/org/springframework/cloud/contract/verifier/dsl/wiremock/WireMockRequestStubStrategy.groovy
#	spring-cloud-contract-verifier/src/main/groovy/org/springframework/cloud/contract/verifier/util/JsonToJsonPathsConverter.groovy
#	spring-cloud-contract-verifier/src/test/groovy/org/springframework/cloud/contract/verifier/converter/YamlContractConverterSpec.groovy

* Implement test generation for XML body matchers. Start implementing handling XML lists in assertions.

* Fix generating list element assertions and regex body matcher assertions.
Move XML-assert lib content to project sources. Add tests.

* Fix recognising XML content from String body. Minor refactoring.

* Adjust yaml contracts to new xml handling.

* Add tests for handling XML with yaml contracts. Handle incorrect request
matchers processing.

* Minor refactoring.

* Add docs.

* Fix docs.

* Fixes after code review.

* Switch to apache commons logger in `XmlAsserter`.
2019-01-18 20:16:19 +01:00
Marcin Grzejszczak
e12b0b74b6 Migrated the destination for Pact to meta-data 2019-01-08 15:08:51 +01:00
Stephan
70adb02ec9 Workaround for missing message destination in message-pacts: Description field is used. 2019-01-08 14:59:52 +01:00
Marcin Grzejszczak
e22f5ec76e Fixed cloning of objects 2019-01-03 10:59:02 +01:00
Marcin Grzejszczak
120820ff9c Warn message if scm not matched 2019-01-02 19:00:40 +01:00
Marcin Grzejszczak
20c12e569d Fixed invalid flag 2019-01-02 18:10:45 +01:00
Marcin Grzejszczak
4b50846fb4 Polish 2019-01-02 10:13:40 +01:00
Marcin Grzejszczak
6464513878 Allow fetching contract definitions from file system and pushing them to GIT; fixes gh-773 2019-01-01 11:49:59 +01:00
Marcin Grzejszczak
56fbc11f62 Allows passing of regex type (#832)
without this change if one does $(regex("[0-9]")) we have no knowledge of whether the result should be text or a number. What we do ATM is we always generate a String
with this change once can pass the type of regular expression and we will generate the concrete value of that given type

fixes gh-768
2018-12-28 16:29:32 +01:00
Marcin Grzejszczak
59e5f8b1eb Convert Contract Definitions to YAML (#827)
without this change, if you're using some external libraries and you reference them in your DSL, those libraries need to also be used on the consumer side.

with this change, you can set the contractsToYaml property of the plugin, that will convert the contract definitions into YAML, and then generate tests and stubs. We will store the original contract definitions under the originals folder.

fixes #744
2018-12-27 11:14:31 +01:00
Marcin Grzejszczak
6901fe03f5 BUmped wiremock to 2.20.0; fixes gh-925 2018-12-24 09:35:18 +01:00
buildmaster
e6640350bc Going back to snapshots 2018-12-20 21:43:00 +00:00
buildmaster
f47d0d3406 Update SNAPSHOT to 2.1.0.RC3 2018-12-20 21:37:41 +00:00
Marcin Grzejszczak
9c7c896115 Assert size of collections on the request side; fixes gh-824 2018-12-20 14:53:38 +01:00
Marcin Grzejszczak
204c6a97f7 Merge branch '2.0.x' 2018-12-18 13:24:17 +01:00
Marcin Grzejszczak
7b2cce7513 Fixed issues with bound ports 2018-12-18 13:20:39 +01:00
Marcin Grzejszczak
0058b987ae Adds support for binary payloads (#818)
with this change we're adding support for binary payloads both for HTTP and messaging.

fixes #664
2018-12-15 14:06:17 +01:00
Marcin Grzejszczak
928b32ecce BUmped boot 2018-12-15 09:19:35 +01:00
buildmaster
ba02983ff6 Going back to snapshots 2018-12-11 22:34:06 +00:00
buildmaster
eae5866fba Update SNAPSHOT to 2.1.0.RC2 2018-12-11 22:28:39 +00:00
buildmaster
cb401b9cc2 Going back to snapshots 2018-12-11 19:03:21 +00:00
buildmaster
ca9bd89614 Update SNAPSHOT to 2.1.0.RC1 2018-12-11 18:57:39 +00:00
Marcin Grzejszczak
247b2ee646 Added included files to Groovy DSL; fixes gh-807 2018-12-04 10:45:56 +01:00
Olga Maciaszek-Sharma
9bafbf66c8 Code cleanup. 2018-11-19 11:37:33 +01:00
Marcin Grzejszczak
e0e72c9c7f Fixed missing deprecation refactoring 2018-11-13 12:13:46 +01:00
Marcin Grzejszczak
930eb02191 Removed deprecated contractRepositoryUrl prop; fixes gh-795 2018-11-13 11:44:29 +01:00
Marcin Grzejszczak
1b41c2b1a8 FIxed the algorithm of when to fetch contracts 2018-11-13 00:22:17 +01:00
Marcin Grzejszczak
080ac0f2f4 Gradle plugin no longer requires the artifact ids to be set for external contract downloading
without this change there's a difference between Maven and Gradle plugin usage. If you want to use a custom stubdownloaderbuilder, you need to set a artifact id of a dependency with contracts. That shouldn't be mandatory
with this change we no longer require it

fixes gh-794
2018-11-12 23:56:08 +01:00
Marcin Grzejszczak
a0aaee7578 Converted the storer's interface to byte[] 2018-11-12 22:23:14 +01:00
Marcin Grzejszczak
91aee048b5 Moved away from deprecated targetFramework 2018-11-11 17:55:57 +01:00
Marcin Grzejszczak
6210c42162 Add an option to dump contracts into a common representation
Allow an option to dump contracts as files for the given ContractConverter. In other words, if you have contracts written in e,g, groovy and yml, by providing a FQN of org.springframework.cloud.contract.verifier.converter.YamlContractConverter, you will be able to dump all files in a folder in a yml format.

fixes gh-793
2018-11-10 23:53:18 +01:00
Marcin Grzejszczak
3109d5b610 Groups pacts by name and parses to get consumer and provider
fixes gh-792
2018-11-10 21:25:04 +01:00
Marcin Grzejszczak
8f1ab301c9 Merge branch '2.0.x' 2018-11-08 20:10:49 +01:00
Marcin Grzejszczak
14d968a63f Should pick all the properties 2018-11-08 20:04:47 +01:00
Marcin Grzejszczak
11bbb9a391 Removed deprecated usage 2018-11-08 19:28:53 +01:00
Marcin Grzejszczak
01c95c85f0 Fixed wrong docs goals 2018-11-08 16:03:55 +01:00
Marcin Grzejszczak
8c77386816 Deprecated targetFramework in Gradle; fixes gh-725 2018-11-06 17:31:07 +01:00
Marcin Grzejszczak
1b1d4049d4 Bumped
- cglib to 3.2.9
- commons-text to 1.6
- handlebars to 4.1.2
- jgit to 5.1.3.201810200350-r
- gmaven to 1.6.2
- boot to 2.1.0
- aether to 1.1.0
2018-11-06 17:06:43 +01:00
Marcin Grzejszczak
31eab3e107 Bumping versions 2018-10-31 09:42:44 +01:00
Marcin Grzejszczak
67b537ae0a Added .mvn and .gradle to excluded build folders; fixes gh-772 2018-10-28 15:09:52 +01:00
Marcin Grzejszczak
23c46e7372 Disabled setting the default value of the package name for groovy plugin; fixes gh-771 2018-10-28 14:46:20 +01:00
Marcin Grzejszczak
51e6c73938 Asserts that contracts are valid; fixes gh-769 2018-10-26 21:08:01 +02:00
Marcin Grzejszczak
d963e0f159 Updated Boot to RC 2018-10-25 16:23:55 +02:00
Marcin Grzejszczak
57bafa6f68 Set boot to RC1 2018-10-25 14:03:30 +02:00
buildmaster
15344a159c Bumping versions to 2.0.3.BUILD-SNAPSHOT after release 2018-10-23 19:56:38 +00:00