@ -1,5 +1,5 @@
@@ -1,5 +1,5 @@
/ *
* Copyright 2002 - 2012 the original author or authors .
* Copyright 2002 - 2017 the original author or authors .
*
* Licensed under the Apache License , Version 2 . 0 ( the "License" ) ;
* you may not use this file except in compliance with the License .
@ -28,6 +28,8 @@ import org.springframework.web.client.RestTemplate;
@@ -28,6 +28,8 @@ import org.springframework.web.client.RestTemplate;
import static org.junit.Assert.assertTrue ;
import static org.springframework.test.web.client.ExpectedCount.manyTimes ;
import static org.springframework.test.web.client.ExpectedCount.never ;
import static org.springframework.test.web.client.ExpectedCount.once ;
import static org.springframework.test.web.client.match.MockRestRequestMatchers.method ;
import static org.springframework.test.web.client.match.MockRestRequestMatchers.requestTo ;
import static org.springframework.test.web.client.response.MockRestResponseCreators.withSuccess ;
@ -92,6 +94,35 @@ public class SampleTests {
@@ -92,6 +94,35 @@ public class SampleTests {
this . mockServer . verify ( ) ;
}
@Test
public void expectNever ( ) throws Exception {
String responseBody = "{\"name\" : \"Ludwig van Beethoven\", \"someDouble\" : \"1.6035\"}" ;
this . mockServer . expect ( once ( ) , requestTo ( "/composers/42" ) ) . andExpect ( method ( HttpMethod . GET ) )
. andRespond ( withSuccess ( responseBody , MediaType . APPLICATION_JSON ) ) ;
this . mockServer . expect ( never ( ) , requestTo ( "/composers/43" ) ) . andExpect ( method ( HttpMethod . GET ) )
. andRespond ( withSuccess ( responseBody , MediaType . APPLICATION_JSON ) ) ;
this . restTemplate . getForObject ( "/composers/{id}" , Person . class , 42 ) ;
this . mockServer . verify ( ) ;
}
@Test ( expected = AssertionError . class )
public void expectNeverViolated ( ) throws Exception {
String responseBody = "{\"name\" : \"Ludwig van Beethoven\", \"someDouble\" : \"1.6035\"}" ;
this . mockServer . expect ( once ( ) , requestTo ( "/composers/42" ) ) . andExpect ( method ( HttpMethod . GET ) )
. andRespond ( withSuccess ( responseBody , MediaType . APPLICATION_JSON ) ) ;
this . mockServer . expect ( never ( ) , requestTo ( "/composers/43" ) ) . andExpect ( method ( HttpMethod . GET ) )
. andRespond ( withSuccess ( responseBody , MediaType . APPLICATION_JSON ) ) ;
this . restTemplate . getForObject ( "/composers/{id}" , Person . class , 42 ) ;
this . restTemplate . getForObject ( "/composers/{id}" , Person . class , 43 ) ;
}
@Test
public void performGetWithResponseBodyFromFile ( ) throws Exception {