Add MockRestServiceServer for spring.io boot version metadata test

This commit is contained in:
Dave Syer 2016-09-26 16:08:36 +01:00
parent e0b72a9985
commit 13e6ec4431

View File

@ -16,25 +16,36 @@
package io.spring.initializr.web.support package io.spring.initializr.web.support
import io.spring.initializr.metadata.InitializrMetadata
import io.spring.initializr.metadata.InitializrMetadataBuilder
import org.junit.Test
import org.springframework.web.client.RestTemplate
import static org.junit.Assert.assertNotNull import static org.junit.Assert.assertNotNull
import static org.junit.Assert.fail import static org.junit.Assert.fail
import static org.springframework.test.web.client.match.MockRestRequestMatchers.*
import static org.springframework.test.web.client.response.MockRestResponseCreators.*
import io.spring.initializr.metadata.InitializrMetadata
import io.spring.initializr.metadata.InitializrMetadataBuilder
import org.junit.Test
import org.springframework.core.io.ClassPathResource
import org.springframework.http.MediaType
import org.springframework.test.web.client.MockRestServiceServer
import org.springframework.web.client.RestTemplate
/** /**
* @author Stephane Nicoll * @author Stephane Nicoll
* @author Dave Syer
*/ */
class SpringBootMetadataReaderTests { class SpringBootMetadataReaderTests {
private final InitializrMetadata metadata = InitializrMetadataBuilder.create().build() private final InitializrMetadata metadata = InitializrMetadataBuilder.create().build()
private final RestTemplate restTemplate = new RestTemplate()
private final MockRestServiceServer server = MockRestServiceServer.bindTo(restTemplate).build()
@Test @Test
void readAvailableVersions() { void readAvailableVersions() {
def versions = new SpringBootMetadataReader(new RestTemplate(), server.expect(requestTo("https://spring.io/project_metadata/spring-boot")).andRespond(
withSuccess(new ClassPathResource('metadata/sagan/spring-boot.json'), MediaType.APPLICATION_JSON))
def versions = new SpringBootMetadataReader(restTemplate,
metadata.configuration.env.springBootMetadataUrl).bootVersions metadata.configuration.env.springBootMetadataUrl).bootVersions
assertNotNull "spring boot versions should not be null", versions assertNotNull "spring boot versions should not be null", versions
boolean defaultFound boolean defaultFound
@ -48,6 +59,6 @@ class SpringBootMetadataReaderTests {
defaultFound = true defaultFound = true
} }
} }
server.verify()
} }
} }