If you are using the old Java DSL with JUnit 5, you need to specify V3 on the PactTestFor annotation, otherwise you will get a Pact merge conflict error.
For example,
@ExtendWith(PactConsumerTestExt.class)
@PactTestFor(providerName = "ArticlesProvider", port = "1234", pactVersion = PactSpecVersion.V3) // set V3 here
public class ArticlesTest {
@Pact(consumer = "ArticlesConsumer")
public RequestResponsePact articles(PactDslWithProvider builder) { // This is using the old DSL
}
}
Target request filters will now be called with either org.apache.hc.core5.http.HttpRequest
or org.apache.hc.core5.http.ClassicHttpRequest
. JUnit 5 tests will
need to have this interface injected.