mirror of
https://gitee.com/dcren/initializr.git
synced 2025-05-07 14:18:09 +08:00
Improve test coverage
Validate that a client can request all the meta-data versions it support to let the server choose the one it supports.
This commit is contained in:
parent
da2ced86f3
commit
0d1f920ea6
@ -107,18 +107,22 @@ abstract class AbstractInitializrControllerIntegrationTests {
|
||||
restTemplate.getForObject(createUrl(context), byte[])
|
||||
}
|
||||
|
||||
protected ResponseEntity<String> invokeHome(String userAgentHeader, String acceptHeader) {
|
||||
execute('/', String, userAgentHeader, acceptHeader)
|
||||
protected ResponseEntity<String> invokeHome(String userAgentHeader, String... acceptHeaders) {
|
||||
execute('/', String, userAgentHeader, acceptHeaders)
|
||||
}
|
||||
|
||||
protected <T> ResponseEntity<T> execute(String contextPath, Class<T> responseType,
|
||||
String userAgentHeader, String acceptHeader) {
|
||||
String userAgentHeader, String... acceptHeaders) {
|
||||
HttpHeaders headers = new HttpHeaders();
|
||||
if (userAgentHeader) {
|
||||
headers.set("User-Agent", userAgentHeader);
|
||||
}
|
||||
if (acceptHeader) {
|
||||
headers.setAccept(Collections.singletonList(MediaType.parseMediaType(acceptHeader)))
|
||||
if (acceptHeaders) {
|
||||
List<MediaType> mediaTypes = new ArrayList<>()
|
||||
for (String acceptHeader : acceptHeaders) {
|
||||
mediaTypes.add(MediaType.parseMediaType(acceptHeader))
|
||||
}
|
||||
headers.setAccept(mediaTypes)
|
||||
} else {
|
||||
headers.setAccept(Collections.emptyList())
|
||||
}
|
||||
|
@ -173,6 +173,14 @@ class MainControllerIntegrationTests extends AbstractInitializrControllerIntegra
|
||||
validateCurrentMetadata(new JSONObject(response.body))
|
||||
}
|
||||
|
||||
@Test
|
||||
void metadataWithSeveralAcceptHeader() {
|
||||
ResponseEntity<String> response = invokeHome(null,
|
||||
'application/vnd.initializr.v2.1+json', 'application/vnd.initializr.v2+json')
|
||||
validateContentType(response, CURRENT_METADATA_MEDIA_TYPE)
|
||||
validateCurrentMetadata(new JSONObject(response.body))
|
||||
}
|
||||
|
||||
@Test
|
||||
void metadataWithUnknownAcceptHeader() {
|
||||
try {
|
||||
|
Loading…
Reference in New Issue
Block a user