Cześć. Piszę testy integracyjnie controllera, który pod spodem pobiera dane z innego api - załóżmy http://anyweather.com/api/warsaw
Chciałbym, żeby dla zapytania /warsaw szło info z pilku weather_warsaw.json a dla innego miasta np weather_moscow.json.
Zrobiłem coś takiego w groovym i niestety ładuje mi z realnego api:
@Rule
public WireMockRule wireMockRule = new WireMockRule(8089)
@Before
void setupMockMvc() {
mockMvc = MockMvcBuilders.webAppContextSetup(webApplicationContext)
.build()
stubFor(WireMock.get(urlEqualTo("/warsaw"))
.willReturn(
aResponse().proxiedFrom("http://anyweather.com/api")
.withStatus(200)
.withBodyFile("weather_warsaw.json")
))
}