spring-cloud-contract-samples
spring-cloud-contract-samples copied to clipboard
Add sample combining Spring Cloud Contract, WebTestClient, RestAssured and Spring Restdocs
Would it be an idea to add a sample combining Spring Cloud Contract, WebTestClient, RestAssured and Spring Restdocs?
WebTestClient can be configured to use Restdocs and so does RestAssured. But under Spring Cloud Contract there seems to be no way to configure so that the snippets are written. For instance, the following setup doesn't work:
@RunWith(SpringRunner.class)
@WebFluxTest(controllers = StateHandler.class)
public class AbstractSpringCloudContractTestBase {
@Rule
public final JUnitRestDocumentation restDocumentation = new JUnitRestDocumentation("target/generated-snippets");
@Inject
private ApplicationContext context;
@MockBean
private StateRepository stateRepository;
protected RequestSpecification documentationSpec;
@Before
public void beforeEach() {
WebTestClient webTestClient = WebTestClient.bindToApplicationContext(context).configureClient()
.filter(documentationConfiguration(restDocumentation)).build();
RestAssuredWebTestClient.webTestClient(webTestClient);
}
}
Using the spring-cloud-contract-maven-plugin
and running the tests will not result in Spring Restdocs output.
An example on how to make this work would be much appreciated.
Question is if there is actually a DSL first approach possible with WebFlux, Spring Cloud Contract and Spring Restdocs...
There might be a problem with that due to https://github.com/spring-projects/spring-framework/issues/26662