62
62
import org .springframework .context .ApplicationContext ;
63
63
import org .springframework .test .util .ReflectionTestUtils ;
64
64
import org .springframework .web .bind .annotation .RequestMethod ;
65
+ import org .springframework .mock .http .client .MockClientHttpRequest ;
65
66
66
67
import static java .util .Arrays .asList ;
67
68
import static java .util .Collections .singletonList ;
@@ -190,7 +191,7 @@ void preLoadingModeShouldNotOverwriteServers() throws InterruptedException {
190
191
doCallRealMethod ().when (openAPIService ).updateServers (any ());
191
192
when (openAPIService .getCachedOpenAPI (any ())).thenCallRealMethod ();
192
193
doAnswer (new CallsRealMethods ()).when (openAPIService ).setServersPresent (true );
193
- doAnswer (new CallsRealMethods ()).when (openAPIService ).setServerBaseUrl (any ());
194
+ doAnswer (new CallsRealMethods ()).when (openAPIService ).setServerBaseUrl (any (), any () );
194
195
doAnswer (new CallsRealMethods ()).when (openAPIService ).setCachedOpenAPI (any (), any ());
195
196
196
197
String customUrl = "https://custom.com" ;
@@ -212,7 +213,7 @@ properties, springDocProviders, new SpringDocCustomizers(Optional.of(singletonLi
212
213
Thread .sleep (1_000 );
213
214
214
215
// emulate generating base url
215
- openAPIService .setServerBaseUrl (generatedUrl );
216
+ openAPIService .setServerBaseUrl (generatedUrl , new MockClientHttpRequest () );
216
217
openAPIService .updateServers (openAPI );
217
218
Locale locale = Locale .US ;
218
219
OpenAPI after = resource .getOpenApi (locale );
@@ -224,7 +225,7 @@ properties, springDocProviders, new SpringDocCustomizers(Optional.of(singletonLi
224
225
void serverBaseUrlCustomisersTest () throws InterruptedException {
225
226
doCallRealMethod ().when (openAPIService ).updateServers (any ());
226
227
when (openAPIService .getCachedOpenAPI (any ())).thenCallRealMethod ();
227
- doAnswer (new CallsRealMethods ()).when (openAPIService ).setServerBaseUrl (any ());
228
+ doAnswer (new CallsRealMethods ()).when (openAPIService ).setServerBaseUrl (any (), any () );
228
229
doAnswer (new CallsRealMethods ()).when (openAPIService ).setCachedOpenAPI (any (), any ());
229
230
230
231
SpringDocConfigProperties properties = new SpringDocConfigProperties ();
@@ -247,37 +248,37 @@ springDocProviders, new SpringDocCustomizers(Optional.empty(),Optional.empty(),O
247
248
248
249
// Test that setting generated URL works fine with no customizers present
249
250
String generatedUrl = "https://generated-url.com/context-path" ;
250
- openAPIService .setServerBaseUrl (generatedUrl );
251
+ openAPIService .setServerBaseUrl (generatedUrl , new MockClientHttpRequest () );
251
252
openAPIService .updateServers (openAPI );
252
253
OpenAPI after = resource .getOpenApi (locale );
253
254
assertThat (after .getServers ().get (0 ).getUrl (), is (generatedUrl ));
254
255
255
256
// Test that adding a serverBaseUrlCustomizer has the desired effect
256
- ServerBaseUrlCustomizer serverBaseUrlCustomizer = serverBaseUrl -> serverBaseUrl .replace ("/context-path" , "" );
257
+ ServerBaseUrlCustomizer serverBaseUrlCustomizer = ( serverBaseUrl , request ) -> serverBaseUrl .replace ("/context-path" , "" );
257
258
List <ServerBaseUrlCustomizer > serverBaseUrlCustomizerList = new ArrayList <>();
258
259
serverBaseUrlCustomizerList .add (serverBaseUrlCustomizer );
259
260
260
261
ReflectionTestUtils .setField (openAPIService , "serverBaseUrlCustomizers" , Optional .of (serverBaseUrlCustomizerList ));
261
- openAPIService .setServerBaseUrl (generatedUrl );
262
+ openAPIService .setServerBaseUrl (generatedUrl , new MockClientHttpRequest () );
262
263
openAPIService .updateServers (openAPI );
263
264
after = resource .getOpenApi (locale );
264
265
assertThat (after .getServers ().get (0 ).getUrl (), is ("https://generated-url.com" ));
265
266
266
267
// Test that serverBaseUrlCustomisers are performed in order
267
268
generatedUrl = "https://generated-url.com/context-path/second-path" ;
268
- ServerBaseUrlCustomizer serverBaseUrlCustomiser2 = serverBaseUrl -> serverBaseUrl .replace ("/context-path/second-path" , "" );
269
+ ServerBaseUrlCustomizer serverBaseUrlCustomiser2 = ( serverBaseUrl , request ) -> serverBaseUrl .replace ("/context-path/second-path" , "" );
269
270
serverBaseUrlCustomizerList .add (serverBaseUrlCustomiser2 );
270
271
271
- openAPIService .setServerBaseUrl (generatedUrl );
272
+ openAPIService .setServerBaseUrl (generatedUrl , new MockClientHttpRequest () );
272
273
openAPIService .updateServers (openAPI );
273
274
after = resource .getOpenApi (locale );
274
275
assertThat (after .getServers ().get (0 ).getUrl (), is ("https://generated-url.com/second-path" ));
275
276
276
277
// Test that all serverBaseUrlCustomisers in the List are performed
277
- ServerBaseUrlCustomizer serverBaseUrlCustomiser3 = serverBaseUrl -> serverBaseUrl .replace ("/second-path" , "" );
278
+ ServerBaseUrlCustomizer serverBaseUrlCustomiser3 = ( serverBaseUrl , request ) -> serverBaseUrl .replace ("/second-path" , "" );
278
279
serverBaseUrlCustomizerList .add (serverBaseUrlCustomiser3 );
279
280
280
- openAPIService .setServerBaseUrl (generatedUrl );
281
+ openAPIService .setServerBaseUrl (generatedUrl , new MockClientHttpRequest () );
281
282
openAPIService .updateServers (openAPI );
282
283
after = resource .getOpenApi (locale );
283
284
assertThat (after .getServers ().get (0 ).getUrl (), is ("https://generated-url.com" ));
0 commit comments