@@ -331,6 +331,44 @@ public void testGeneratePing() throws Exception {
331
331
output .deleteOnExit ();
332
332
}
333
333
334
+ @ Test
335
+ public void testJdkHttpClient () throws Exception {
336
+ Map <String , Object > properties = new HashMap <>();
337
+ properties .put (JavaClientCodegen .JAVA8_MODE , true );
338
+ properties .put (CodegenConstants .API_PACKAGE , "xyz.abcdef.api" );
339
+
340
+ File output = Files .createTempDirectory ("test" ).toFile ();
341
+ output .deleteOnExit ();
342
+
343
+ final CodegenConfigurator configurator = new CodegenConfigurator ()
344
+ .setGeneratorName ("java" )
345
+ .setLibrary (JavaClientCodegen .NATIVE )
346
+ .setAdditionalProperties (properties )
347
+ .setInputSpec ("src/test/resources/3_0/ping.yaml" )
348
+ .setOutputDir (output .getAbsolutePath ().replace ("\\ " , "/" ));
349
+
350
+ final ClientOptInput clientOptInput = configurator .toClientOptInput ();
351
+ MockDefaultGenerator generator = new MockDefaultGenerator ();
352
+ generator .opts (clientOptInput ).generate ();
353
+
354
+ Map <String , String > generatedFiles = generator .getFiles ();
355
+ Assert .assertEquals (generatedFiles .size (), 23 );
356
+ validateJavaSourceFiles (generatedFiles );
357
+
358
+ String defaultApiFilename = new File (output , "src/main/java/xyz/abcdef/api/DefaultApi.java" ).getAbsolutePath ().replace ("\\ " , "/" );
359
+ String defaultApiContent = generatedFiles .get (defaultApiFilename );
360
+ assertTrue (defaultApiContent .contains ("public class DefaultApi" ));
361
+ assertTrue (defaultApiContent .contains ("import java.net.http.HttpClient;" ));
362
+ assertTrue (defaultApiContent .contains ("import java.net.http.HttpRequest;" ));
363
+ assertTrue (defaultApiContent .contains ("import java.net.http.HttpResponse;" ));
364
+
365
+ String apiClientFilename = new File (output , "src/main/java/xyz/abcdef/ApiClient.java" ).getAbsolutePath ().replace ("\\ " , "/" );
366
+ String apiClientContent = generatedFiles .get (apiClientFilename );
367
+ assertTrue (apiClientContent .contains ("public class ApiClient" ));
368
+ assertTrue (apiClientContent .contains ("import java.net.http.HttpClient;" ));
369
+ assertTrue (apiClientContent .contains ("import java.net.http.HttpRequest;" ));
370
+ }
371
+
334
372
@ Test
335
373
public void testReferencedHeader () {
336
374
final OpenAPI openAPI = TestUtils .parseSpec ("src/test/resources/3_0/issue855.yaml" );
0 commit comments