pact-foundation / pact-jvm

JVM version of Pact. Enables consumer driven contract testing, providing a mock service and DSL for the consumer project, and interaction playback and verification for the service provider project.
https://docs.pact.io
Apache License 2.0
1.08k stars 479 forks source link

Could you create pact-jvm-provider-spock - a Groovy version of pact-jvm-provider-junit pls #609

Open QMG-kazala opened 6 years ago

QMG-kazala commented 6 years ago

Could you create pact-jvm-provider-spock - a Groovy version of pact-jvm-provider-junit so that it works with groovy annotations pls?

pact-jvm-provider-junit is great and exactly what we need, but due to a join compiling issue [*] it does NOT work if PACT tests have transitive dependency on groovy classes with @Delegate, @DelegatesTo, @Canonical or any other groovy-specific annotations.

We use those annotations i our DSL classes which pretty much prevents us from using pact-jvm-provider-junit :( Or is there a workaround maybe?

[*] eg. "A class using the @Delegate annotation does not implement the delegate's interfaces from the Java side when join compiling"- https://issues.apache.org/jira/browse/GROOVY-4647

uglyog commented 6 years ago

I would love to create a spock implementation, as I use it extensively myself. I have started on one, but I found I needed to understand the internals of Spock to get it to work effectively, so I have not progressed it further.