TSK-1151: fixed pretty printing configuration for spring rest doc
This commit is contained in:
parent
603e1ef874
commit
89de71f242
|
@ -1,25 +1,27 @@
|
||||||
package pro.taskana.doc.api;
|
package pro.taskana.doc.api;
|
||||||
|
|
||||||
import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.document;
|
|
||||||
import static org.springframework.restdocs.operation.preprocess.Preprocessors.preprocessRequest;
|
|
||||||
import static org.springframework.restdocs.operation.preprocess.Preprocessors.preprocessResponse;
|
|
||||||
import static org.springframework.restdocs.operation.preprocess.Preprocessors.prettyPrint;
|
import static org.springframework.restdocs.operation.preprocess.Preprocessors.prettyPrint;
|
||||||
|
|
||||||
import org.junit.jupiter.api.BeforeEach;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.boot.test.autoconfigure.restdocs.AutoConfigureRestDocs;
|
import org.springframework.boot.test.autoconfigure.restdocs.AutoConfigureRestDocs;
|
||||||
|
import org.springframework.boot.test.autoconfigure.restdocs.RestDocsMockMvcConfigurationCustomizer;
|
||||||
import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
|
import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
|
||||||
|
import org.springframework.boot.test.context.TestConfiguration;
|
||||||
import org.springframework.boot.web.server.LocalServerPort;
|
import org.springframework.boot.web.server.LocalServerPort;
|
||||||
|
import org.springframework.context.annotation.Bean;
|
||||||
|
import org.springframework.context.annotation.Import;
|
||||||
import org.springframework.test.web.servlet.MockMvc;
|
import org.springframework.test.web.servlet.MockMvc;
|
||||||
import org.springframework.web.context.WebApplicationContext;
|
import org.springframework.web.context.WebApplicationContext;
|
||||||
|
|
||||||
import pro.taskana.RestHelper;
|
import pro.taskana.RestHelper;
|
||||||
import pro.taskana.TaskanaSpringBootTest;
|
import pro.taskana.TaskanaSpringBootTest;
|
||||||
|
import pro.taskana.doc.api.BaseRestDocumentation.ResultHandlerConfiguration;
|
||||||
|
|
||||||
/** Base class for Rest Documentation tests. */
|
/** Base class for Rest Documentation tests. */
|
||||||
|
@TaskanaSpringBootTest
|
||||||
@AutoConfigureMockMvc
|
@AutoConfigureMockMvc
|
||||||
@AutoConfigureRestDocs
|
@AutoConfigureRestDocs
|
||||||
@TaskanaSpringBootTest
|
@Import(ResultHandlerConfiguration.class)
|
||||||
public abstract class BaseRestDocumentation {
|
public abstract class BaseRestDocumentation {
|
||||||
|
|
||||||
@LocalServerPort protected int port;
|
@LocalServerPort protected int port;
|
||||||
|
@ -30,8 +32,16 @@ public abstract class BaseRestDocumentation {
|
||||||
|
|
||||||
@Autowired protected RestHelper restHelper;
|
@Autowired protected RestHelper restHelper;
|
||||||
|
|
||||||
@BeforeEach
|
@TestConfiguration
|
||||||
public void setUpMockMvc() {
|
static class ResultHandlerConfiguration {
|
||||||
document("{methodName}", preprocessRequest(prettyPrint()), preprocessResponse(prettyPrint()));
|
|
||||||
|
@Bean
|
||||||
|
public RestDocsMockMvcConfigurationCustomizer restDocsMockMvcConfigurationCustomizer() {
|
||||||
|
return configurer ->
|
||||||
|
configurer
|
||||||
|
.operationPreprocessors()
|
||||||
|
.withRequestDefaults(prettyPrint())
|
||||||
|
.withResponseDefaults(prettyPrint());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue