From 6a98794da7f604eb32393ec4413a21893528eb13 Mon Sep 17 00:00:00 2001 From: Hugo Mercado Date: Tue, 2 Nov 2021 23:00:20 -0500 Subject: [PATCH 1/3] added build.gradle template to use in java 11 --- .../codegen/languages/JavaClientCodegen.java | 6 +- .../Java/build.gradle.java11.mustache | 74 ++++++++++++ .../feign/build.gradle.java11.mustache | 85 +++++++++++++ .../jersey2/build.gradle.java11.mustache | 76 ++++++++++++ .../okhttp-gson/build.gradle.java11.mustache | 63 ++++++++++ .../resttemplate/build.gradle.java11.mustache | 79 ++++++++++++ .../retrofit/build.gradle.java11.mustache | 66 +++++++++++ .../retrofit2/build.gradle.java11.mustache | 112 ++++++++++++++++++ 8 files changed, 560 insertions(+), 1 deletion(-) create mode 100644 modules/swagger-codegen/src/main/resources/Java/build.gradle.java11.mustache create mode 100644 modules/swagger-codegen/src/main/resources/Java/libraries/feign/build.gradle.java11.mustache create mode 100644 modules/swagger-codegen/src/main/resources/Java/libraries/jersey2/build.gradle.java11.mustache create mode 100644 modules/swagger-codegen/src/main/resources/Java/libraries/okhttp-gson/build.gradle.java11.mustache create mode 100644 modules/swagger-codegen/src/main/resources/Java/libraries/resttemplate/build.gradle.java11.mustache create mode 100644 modules/swagger-codegen/src/main/resources/Java/libraries/retrofit/build.gradle.java11.mustache create mode 100644 modules/swagger-codegen/src/main/resources/Java/libraries/retrofit2/build.gradle.java11.mustache diff --git a/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/JavaClientCodegen.java b/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/JavaClientCodegen.java index 8693a464d7e..e7441c0e5ef 100644 --- a/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/JavaClientCodegen.java +++ b/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/JavaClientCodegen.java @@ -182,7 +182,11 @@ public void processOpts() { //Common files writeOptional(outputFolder, new SupportingFile("pom.mustache", "", "pom.xml")); writeOptional(outputFolder, new SupportingFile("README.mustache", "", "README.md")); - writeOptional(outputFolder, new SupportingFile("build.gradle.mustache", "", "build.gradle")); + if (java11Mode) { + writeOptional(outputFolder, new SupportingFile("build.gradle.java11.mustache", "", "build.gradle")); + } else { + writeOptional(outputFolder, new SupportingFile("build.gradle.mustache", "", "build.gradle")); + } writeOptional(outputFolder, new SupportingFile("build.sbt.mustache", "", "build.sbt")); writeOptional(outputFolder, new SupportingFile("settings.gradle.mustache", "", "settings.gradle")); writeOptional(outputFolder, new SupportingFile("gradle.properties.mustache", "", "gradle.properties")); diff --git a/modules/swagger-codegen/src/main/resources/Java/build.gradle.java11.mustache b/modules/swagger-codegen/src/main/resources/Java/build.gradle.java11.mustache new file mode 100644 index 00000000000..6e298a92dad --- /dev/null +++ b/modules/swagger-codegen/src/main/resources/Java/build.gradle.java11.mustache @@ -0,0 +1,74 @@ +/* +* defaut +*/ +plugins { + id 'java' + id 'maven-publish' +} + +repositories { + mavenLocal() + maven { + url = uri('https://repo.maven.apache.org/maven2/') + } +} + +ext { + swagger_annotations_version = "1.5.24" + jackson_version = "{{^threetenbp}}2.11.4{{/threetenbp}}{{#threetenbp}}2.6.4{{/threetenbp}}" + jersey_version = "1.19.4" + jodatime_version = "2.10.5" + junit_version = "4.13.1" +} + +dependencies { + implementation "io.swagger:swagger-annotations:$swagger_annotations_version" + implementation "com.sun.jersey:jersey-client:$jersey_version" + implementation "com.sun.jersey.contribs:jersey-multipart:$jersey_version" + implementation "com.fasterxml.jackson.core:jackson-core:$jackson_version" + implementation "com.fasterxml.jackson.core:jackson-annotations:$jackson_version" + implementation "com.fasterxml.jackson.core:jackson-databind:$jackson_version" + implementation "com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider:$jackson_version" + {{#joda}} + implementation "com.fasterxml.jackson.datatype:jackson-datatype-joda:$jackson_version" + {{/joda}} + implementation "com.fasterxml.jackson.datatype:jackson-datatype-jsr310:$jackson_version"} + {{#threetenbp}} + implementation "com.github.joschi.jackson:jackson-datatype-threetenbp:$jackson_version" + {{/threetenbp}} + implementation 'com.sun.xml.ws:jaxws-rt:2.3.3' + testImplementation "junit:junit:$junit_version" + {{#wiremock}} + testImplementation "com.github.tomakehurst:wiremock:2.27.2" + {{/wiremock}} +} + +group = '{{groupId}}' +version = '{{artifactVersion}}' +description = '{{artifactDescription}}' + +java.sourceCompatibility = 11 +java.targetCompatibility = 11 + +tasks.register('testsJar', Jar) { + archiveClassifier = 'tests' + from(sourceSets.test.output) +} + +java { + withSourcesJar() + withJavadocJar() +} + +publishing { + publications { + maven(MavenPublication) { + from(components.java) + artifact(testsJar) + } + } +} + +tasks.withType(JavaCompile) { + options.encoding = 'UTF-8' +} diff --git a/modules/swagger-codegen/src/main/resources/Java/libraries/feign/build.gradle.java11.mustache b/modules/swagger-codegen/src/main/resources/Java/libraries/feign/build.gradle.java11.mustache new file mode 100644 index 00000000000..cb56efa6551 --- /dev/null +++ b/modules/swagger-codegen/src/main/resources/Java/libraries/feign/build.gradle.java11.mustache @@ -0,0 +1,85 @@ +/* +* feign +*/ +plugins { + id 'java' + id 'maven-publish' +} + +repositories { + mavenLocal() + maven { + url = uri('https://repo.maven.apache.org/maven2/') + } +} + +ext { + swagger_annotations_version = "1.5.24" + jackson_version = "2.11.4" + {{#threetenbp}} + threepane_version = "2.6.4" + {{/threetenbp}} + feign_version = "11.6" + feign_form_version = "3.8.0" + junit_version = "4.13.1" + oltu_version = "1.0.1" +} + +dependencies { + implementation "io.swagger:swagger-annotations:$swagger_annotations_version" + implementation "io.github.openfeign:feign-core:$feign_version" + implementation "io.github.openfeign:feign-jackson:$feign_version" + implementation "io.github.openfeign:feign-slf4j:$feign_version" + implementation "io.github.openfeign.form:feign-form:$feign_form_version" + implementation "com.fasterxml.jackson.core:jackson-core:$jackson_version" + implementation "com.fasterxml.jackson.core:jackson-annotations:$jackson_version" + implementation "com.fasterxml.jackson.core:jackson-databind:$jackson_version" + {{#joda}} + implementation "com.fasterxml.jackson.datatype:jackson-datatype-joda:$jackson_version" + {{/joda}} + {{#java8}} + implementation "com.fasterxml.jackson.datatype:jackson-datatype-jsr310:$jackson_version" + {{/java8}} + {{#threetenbp}} + implementation "com.github.joschi.jackson:jackson-datatype-threetenbp:$threepane_version" + {{/threetenbp}} + implementation "org.apache.oltu.oauth2:org.apache.oltu.oauth2.client:$oltu_version" + implementation "com.brsanthu:migbase64:2.2" + implementation "com.sun.xml.ws:jaxws-rt:2.3.3" + testImplementation "junit:junit:$junit_version" + testImplementation "com.squareup.okhttp3:mockwebserver:3.6.0" + testImplementation "org.assertj:assertj-core:1.7.1" + {{#wiremock}} + testImplementation "com.github.tomakehurst:wiremock:2.27.2" + {{/wiremock}} +} + +group = '{{groupId}}' +version = '{{artifactVersion}}' +description = '{{artifactDescription}}' + +java.sourceCompatibility = 11 +java.targetCompatibility = 11 + +tasks.register('testsJar', Jar) { + archiveClassifier = 'tests' + from(sourceSets.test.output) +} + +java { + withSourcesJar() + withJavadocJar() +} + +publishing { + publications { + maven(MavenPublication) { + from(components.java) + artifact(testsJar) + } + } +} + +tasks.withType(JavaCompile) { + options.encoding = 'UTF-8' +} diff --git a/modules/swagger-codegen/src/main/resources/Java/libraries/jersey2/build.gradle.java11.mustache b/modules/swagger-codegen/src/main/resources/Java/libraries/jersey2/build.gradle.java11.mustache new file mode 100644 index 00000000000..f4954674de7 --- /dev/null +++ b/modules/swagger-codegen/src/main/resources/Java/libraries/jersey2/build.gradle.java11.mustache @@ -0,0 +1,76 @@ +/* +* jersey2 +*/ +plugins { + id 'java' + id 'maven-publish' +} + +repositories { + mavenLocal() + maven { + url = uri('https://repo.maven.apache.org/maven2/') + } +} + +ext { + swagger_annotations_version = "1.5.24" + jackson_version = "2.6.4" + jersey_version = "2.29.1" + junit_version = "4.13.1" +} + +dependencies { + implementation "io.swagger:swagger-annotations:$swagger_annotations_version" + implementation "org.glassfish.jersey.core:jersey-client:$jersey_version" + implementation "org.glassfish.jersey.media:jersey-media-multipart:$jersey_version" + implementation "org.glassfish.jersey.media:jersey-media-json-jackson:$jersey_version" + implementation "com.fasterxml.jackson.core:jackson-core:$jackson_version" + implementation "com.fasterxml.jackson.core:jackson-annotations:$jackson_version" + implementation "com.fasterxml.jackson.core:jackson-databind:$jackson_version" + {{#withXml}} + implementation "org.glassfish.jersey.media:jersey-media-jaxb:$jersey_version" + {{/withXml}} + {{#joda}} + implementation "com.fasterxml.jackson.datatype:jackson-datatype-joda:$jackson_version" + {{/joda}} + implementation "org.glassfish.jersey.inject:jersey-hk2:$jersey_version" + {{#threetenbp}} + implementation "com.github.joschi.jackson:jackson-datatype-threetenbp:$jackson_version" + {{/threetenbp}} + implementation "com.brsanthu:migbase64:2.2" + testImplementation "junit:junit:$junit_version" + {{#wiremock}} + testImplementation "com.github.tomakehurst:wiremock:2.27.2" + {{/wiremock}} +} + +group = '{{groupId}}' +version = '{{artifactVersion}}' +description = '{{artifactDescription}}' + +java.sourceCompatibility = 11 +java.targetCompatibility = 11 + +tasks.register('testsJar', Jar) { + archiveClassifier = 'tests' + from(sourceSets.test.output) +} + +java { + withSourcesJar() + withJavadocJar() +} + +publishing { + publications { + maven(MavenPublication) { + from(components.java) + artifact(testsJar) + } + } +} + +tasks.withType(JavaCompile) { + options.encoding = 'UTF-8' +} diff --git a/modules/swagger-codegen/src/main/resources/Java/libraries/okhttp-gson/build.gradle.java11.mustache b/modules/swagger-codegen/src/main/resources/Java/libraries/okhttp-gson/build.gradle.java11.mustache new file mode 100644 index 00000000000..f2cc98c7716 --- /dev/null +++ b/modules/swagger-codegen/src/main/resources/Java/libraries/okhttp-gson/build.gradle.java11.mustache @@ -0,0 +1,63 @@ +/* +* okhttp +*/ +plugins { + id 'java' + id 'maven-publish' +} + +repositories { + mavenLocal() + maven { + url = uri('https://repo.maven.apache.org/maven2/') + } +} + +dependencies { + implementation 'io.swagger:swagger-annotations:1.5.24' + implementation 'com.squareup.okhttp:okhttp:2.7.5' + implementation 'com.squareup.okhttp:logging-interceptor:2.7.5' + implementation 'com.google.code.gson:gson:2.8.1' + implementation 'io.gsonfire:gson-fire:1.8.0' + {{#joda}} + implementation 'joda-time:joda-time:2.9.9' + {{/joda}} + {{#threetenbp}} + implementation 'org.threeten:threetenbp:1.3.5' + {{/threetenbp}} + implementation 'com.sun.xml.ws:jaxws-rt:2.3.3' + testImplementation 'junit:junit:4.13.1' + {{#wiremock}} + testImplementation "com.github.tomakehurst:wiremock:2.27.2" + {{/wiremock}} +} + +group = '{{groupId}}' +version = '{{artifactVersion}}' +description = '{{artifactDescription}}' + +java.sourceCompatibility = 11 +java.targetCompatibility = 11 + +tasks.register('testsJar', Jar) { + archiveClassifier = 'tests' + from(sourceSets.test.output) +} + +java { + withSourcesJar() + withJavadocJar() +} + +publishing { + publications { + maven(MavenPublication) { + from(components.java) + artifact(testsJar) + } + } +} + +tasks.withType(JavaCompile) { + options.encoding = 'UTF-8' +} diff --git a/modules/swagger-codegen/src/main/resources/Java/libraries/resttemplate/build.gradle.java11.mustache b/modules/swagger-codegen/src/main/resources/Java/libraries/resttemplate/build.gradle.java11.mustache new file mode 100644 index 00000000000..cdb760bc700 --- /dev/null +++ b/modules/swagger-codegen/src/main/resources/Java/libraries/resttemplate/build.gradle.java11.mustache @@ -0,0 +1,79 @@ +/* +* resttemplate +*/ +plugins { + id 'java' + id 'maven-publish' +} + +repositories { + mavenLocal() + maven { + url = uri('https://repo.maven.apache.org/maven2/') + } +} + +ext { + swagger_annotations_version = "1.5.24" + jackson_version = "2.11.4" + spring_web_version = "4.3.9.RELEASE" + jodatime_version = "2.10.5" + junit_version = "4.12" + {{#threetenbp}} + jackson_threeten_version = "2.6.4" + {{/threetenbp}} +} + +dependencies { + implementation "io.swagger:swagger-annotations:$swagger_annotations_version" + implementation "org.springframework:spring-web:$spring_web_version" + implementation "com.fasterxml.jackson.core:jackson-core:$jackson_version" + implementation "com.fasterxml.jackson.core:jackson-annotations:$jackson_version" + implementation "com.fasterxml.jackson.core:jackson-databind:$jackson_version" + implementation "com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider:$jackson_version" + {{#joda}} + implementation "com.fasterxml.jackson.datatype:jackson-datatype-joda:$jackson_version" + implementation "joda-time:joda-time:$jodatime_version" + {{/joda}} + {{#threetenbp}} + implementation "com.github.joschi.jackson:jackson-datatype-threetenbp:$jackson_threeten_version" + {{/threetenbp}} + {{#withXml}} + implementation "com.fasterxml.jackson.dataformat:jackson-dataformat-xml:$jackson_version" + {{/withXml}} + implementation "com.sun.xml.ws:jaxws-rt:2.3.3" + testImplementation "junit:junit:$junit_version" + {{#wiremock}} + testImplementation "com.github.tomakehurst:wiremock:2.27.2" + {{/wiremock}} +} + +group = '{{groupId}}' +version = '{{artifactVersion}}' +description = '{{artifactDescription}}' + +java.sourceCompatibility = 11 +java.targetCompatibility = 11 + +tasks.register('testsJar', Jar) { + archiveClassifier = 'tests' + from(sourceSets.test.output) +} + +java { + withSourcesJar() + withJavadocJar() +} + +publishing { + publications { + maven(MavenPublication) { + from(components.java) + artifact(testsJar) + } + } +} + +tasks.withType(JavaCompile) { + options.encoding = 'UTF-8' +} diff --git a/modules/swagger-codegen/src/main/resources/Java/libraries/retrofit/build.gradle.java11.mustache b/modules/swagger-codegen/src/main/resources/Java/libraries/retrofit/build.gradle.java11.mustache new file mode 100644 index 00000000000..9d241fe53ca --- /dev/null +++ b/modules/swagger-codegen/src/main/resources/Java/libraries/retrofit/build.gradle.java11.mustache @@ -0,0 +1,66 @@ +/* +* retrofit +*/ +plugins { + id 'java' + id 'maven-publish' +} + +repositories { + mavenLocal() + maven { + url = uri('https://repo.maven.apache.org/maven2/') + } +} + +ext { + okhttp_version = "2.7.5" + oltu_version = "1.0.1" + retrofit_version = "1.9.0" + swagger_annotations_version = "1.5.24" + junit_version = "4.13.1" + jodatime_version = "2.10.5" +} + +dependencies { + implementation "com.squareup.okhttp:okhttp:$okhttp_version" + implementation "com.squareup.retrofit:retrofit:$retrofit_version" + implementation "io.swagger:swagger-annotations:$swagger_annotations_version" + implementation "org.apache.oltu.oauth2:org.apache.oltu.oauth2.client:$oltu_version" + implementation "joda-time:joda-time:$jodatime_version" + implementation "com.sun.xml.ws:jaxws-rt:2.3.3" + testImplementation "junit:junit:$junit_version" + {{#wiremock}} + testImplementation "com.github.tomakehurst:wiremock:2.27.2" + {{/wiremock}} +} + +group = '{{groupId}}' +version = '{{artifactVersion}}' +description = '{{artifactDescription}}' + +java.sourceCompatibility = 11 +java.targetCompatibility = 11 + +tasks.register('testsJar', Jar) { + archiveClassifier = 'tests' + from(sourceSets.test.output) +} + +java { + withSourcesJar() + withJavadocJar() +} + +publishing { + publications { + maven(MavenPublication) { + from(components.java) + artifact(testsJar) + } + } +} + +tasks.withType(JavaCompile) { + options.encoding = 'UTF-8' +} diff --git a/modules/swagger-codegen/src/main/resources/Java/libraries/retrofit2/build.gradle.java11.mustache b/modules/swagger-codegen/src/main/resources/Java/libraries/retrofit2/build.gradle.java11.mustache new file mode 100644 index 00000000000..d33beb569e1 --- /dev/null +++ b/modules/swagger-codegen/src/main/resources/Java/libraries/retrofit2/build.gradle.java11.mustache @@ -0,0 +1,112 @@ +/* +* retrofit2 +*/ +plugins { + id 'java' + id 'maven-publish' +} + +repositories { + mavenLocal() + maven { + url = uri('https://repo.maven.apache.org/maven2/') + } +} + +ext { + oltu_version = "1.0.1" + retrofit_version = "2.7.1" + {{#usePlayWS}} + {{#play24}} + jackson_version = "2.11.4" + play_version = "2.4.11" + {{/play24}} + {{#play25}} + jackson_version = "2.11.4" + play_version = "2.5.14" + {{/play25}} + {{/usePlayWS}} + swagger_annotations_version = "1.5.24" + junit_version = "4.12" + {{#useRxJava}} + rx_java_version = "1.3.0" + {{/useRxJava}} + {{#useRxJava2}} + rx_java_version = "2.1.1" + {{/useRxJava2}} + {{#joda}} + jodatime_version = "2.10.5" + {{/joda}} + {{#threetenbp}} + threetenbp_version = "1.4.1" + {{/threetenbp}} + json_fire_version = "1.8.3" +} + +dependencies { + implementation "com.squareup.retrofit2:retrofit:$retrofit_version" + implementation "com.squareup.retrofit2:converter-scalars:$retrofit_version" + implementation "com.squareup.retrofit2:converter-gson:$retrofit_version" + {{#useRxJava}} + implementation "com.squareup.retrofit2:adapter-rxjava:$retrofit_version" + implementation "io.reactivex:rxjava:$rx_java_version" + {{/useRxJava}} + {{#useRxJava2}} + implementation 'com.squareup.retrofit2:adapter-rxjava2:2.3.0' + implementation "io.reactivex.rxjava2:rxjava:$rx_java_version" + {{/useRxJava2}} + implementation "io.swagger:swagger-annotations:$swagger_annotations_version" + implementation ("org.apache.oltu.oauth2:org.apache.oltu.oauth2.client:$oltu_version"){ + exclude group:'org.apache.oltu.oauth2' , module: 'org.apache.oltu.oauth2.common' + } + implementation "io.gsonfire:gson-fire:$json_fire_version" + {{#joda}} + implementation "joda-time:joda-time:$jodatime_version" + {{/joda}} + {{#threetenbp}} + implementation "org.threeten:threetenbp:$threetenbp_version" + {{/threetenbp}} + {{#usePlayWS}} + implementation "com.typesafe.play:play-java-ws_2.11:$play_version" + implementation "com.squareup.retrofit2:converter-jackson:$retrofit_version" + implementation "com.fasterxml.jackson.core:jackson-core:$jackson_version" + implementation "com.fasterxml.jackson.core:jackson-annotations:$jackson_version" + implementation "com.fasterxml.jackson.datatype:jackson-datatype-joda:$jackson_version" + {{/usePlayWS}} + implementation "com.sun.xml.ws:jaxws-rt:2.3.3" + {{#wiremock}} + testImplementation "com.github.tomakehurst:wiremock:2.27.2" + {{/wiremock}} + + testImplementation "junit:junit:$junit_version" +} + +group = '{{groupId}}' +version = '{{artifactVersion}}' +description = '{{artifactDescription}}' + +java.sourceCompatibility = 11 +java.targetCompatibility = 11 + +tasks.register('testsJar', Jar) { + archiveClassifier = 'tests' + from(sourceSets.test.output) +} + +java { + withSourcesJar() + withJavadocJar() +} + +publishing { + publications { + maven(MavenPublication) { + from(components.java) + artifact(testsJar) + } + } +} + +tasks.withType(JavaCompile) { + options.encoding = 'UTF-8' +} From f187b3d217416a81abcc0782333b675086a7b074 Mon Sep 17 00:00:00 2001 From: Hugo Mercado Date: Tue, 2 Nov 2021 23:00:47 -0500 Subject: [PATCH 2/3] replaced ApiException for Exception on test classes --- .../java/v2/okhttp-gson/PetApiTest.java | 21 +++++++++---------- .../java/v2/okhttp-gson/StoreApiTest.java | 17 +++++++-------- .../java/v2/okhttp-gson/UserApiTest.java | 21 +++++++++---------- 3 files changed, 28 insertions(+), 31 deletions(-) diff --git a/samples/custom-tests/java/v2/okhttp-gson/PetApiTest.java b/samples/custom-tests/java/v2/okhttp-gson/PetApiTest.java index 175cf7d07f9..b9eda7c7992 100644 --- a/samples/custom-tests/java/v2/okhttp-gson/PetApiTest.java +++ b/samples/custom-tests/java/v2/okhttp-gson/PetApiTest.java @@ -15,7 +15,6 @@ import com.github.tomakehurst.wiremock.WireMockServer; import com.github.tomakehurst.wiremock.core.WireMockConfiguration; -import io.swagger.client.ApiException; import io.swagger.client.model.Pet; import org.junit.AfterClass; import org.junit.Assert; @@ -82,10 +81,10 @@ public static void tearDown() { /** * Add a new pet to the store * - * @throws ApiException if the Api call fails + * @throws Exception if the Api call fails */ @Test - public void addPetTest() throws ApiException { + public void addPetTest() throws Exception { Pet body = new Pet() .id(10L) .name("doggie") @@ -99,10 +98,10 @@ public void addPetTest() throws ApiException { /** * Deletes a pet * - * @throws ApiException if the Api call fails + * @throws Exception if the Api call fails */ @Test - public void deletePetTest() throws ApiException { + public void deletePetTest() throws Exception { Long petId = 10L; String apiKey = "abc123"; api.deletePet(petId, apiKey); @@ -115,10 +114,10 @@ public void deletePetTest() throws ApiException { *

* Multiple status values can be provided with comma separated strings * - * @throws ApiException if the Api call fails + * @throws Exception if the Api call fails */ @Test - public void findPetsByStatusTest() throws ApiException { + public void findPetsByStatusTest() throws Exception { List status = Arrays.asList("available"); List response = api.findPetsByStatus(status); @@ -133,10 +132,10 @@ public void findPetsByStatusTest() throws ApiException { *

* Returns a single pet * - * @throws ApiException if the Api call fails + * @throws Exception if the Api call fails */ @Test - public void getPetByIdTest() throws ApiException { + public void getPetByIdTest() throws Exception { Long petId = 10L; Pet response = api.getPetById(petId); @@ -150,10 +149,10 @@ public void getPetByIdTest() throws ApiException { /** * Update an existing pet * - * @throws ApiException if the Api call fails + * @throws Exception if the Api call fails */ @Test - public void updatePetTest() throws ApiException { + public void updatePetTest() throws Exception { Pet body = new Pet() .id(10L) .name("doggie") diff --git a/samples/custom-tests/java/v2/okhttp-gson/StoreApiTest.java b/samples/custom-tests/java/v2/okhttp-gson/StoreApiTest.java index d1aa4581768..8761bbfb856 100644 --- a/samples/custom-tests/java/v2/okhttp-gson/StoreApiTest.java +++ b/samples/custom-tests/java/v2/okhttp-gson/StoreApiTest.java @@ -13,7 +13,6 @@ package io.swagger.client.api; -import io.swagger.client.ApiException; import io.swagger.client.model.Order; import org.junit.Assert; import org.junit.Test; @@ -83,11 +82,11 @@ public static void tearDown() { * * For valid response try integer IDs with positive integer value. Negative or non-integer values will generate API errors * - * @throws ApiException + * @throws Exception * if the Api call fails */ @Test - public void deleteOrderTest() throws ApiException { + public void deleteOrderTest() throws Exception { Long orderId = 10L; api.deleteOrder(orderId); @@ -99,11 +98,11 @@ public void deleteOrderTest() throws ApiException { * * Returns a map of status codes to quantities * - * @throws ApiException + * @throws Exception * if the Api call fails */ @Test - public void getInventoryTest() throws ApiException { + public void getInventoryTest() throws Exception { Map response = api.getInventory(); Assert.assertNotNull(response); @@ -117,11 +116,11 @@ public void getInventoryTest() throws ApiException { * * For valid response try integer IDs with value >= 1 and <= 10. Other values will generated exceptions * - * @throws ApiException + * @throws Exception * if the Api call fails */ @Test - public void getOrderByIdTest() throws ApiException { + public void getOrderByIdTest() throws Exception { Long orderId = 10L; Order response = api.getOrderById(orderId); Assert.assertNotNull(response); @@ -137,11 +136,11 @@ public void getOrderByIdTest() throws ApiException { * * * - * @throws ApiException + * @throws Exception * if the Api call fails */ @Test - public void placeOrderTest() throws ApiException { + public void placeOrderTest() throws Exception { Order body = new Order().id(10L) .petId(10L) .complete(false) diff --git a/samples/custom-tests/java/v2/okhttp-gson/UserApiTest.java b/samples/custom-tests/java/v2/okhttp-gson/UserApiTest.java index c34f381c8f3..6de48374525 100644 --- a/samples/custom-tests/java/v2/okhttp-gson/UserApiTest.java +++ b/samples/custom-tests/java/v2/okhttp-gson/UserApiTest.java @@ -13,7 +13,6 @@ package io.swagger.client.api; -import io.swagger.client.ApiException; import io.swagger.client.model.User; import org.junit.Assert; import org.junit.Test; @@ -86,11 +85,11 @@ public static void tearDown() { * * This can only be done by the logged in user. * - * @throws ApiException + * @throws Exception * if the Api call fails */ @Test - public void createUserTest() throws ApiException { + public void createUserTest() throws Exception { User body = new User().id(10L).username("user1"); api.createUser(body); @@ -102,11 +101,11 @@ public void createUserTest() throws ApiException { * * * - * @throws ApiException + * @throws Exception * if the Api call fails */ @Test - public void createUsersWithArrayInputTest() throws ApiException { + public void createUsersWithArrayInputTest() throws Exception { User user = new User().id(10L).username("user1"); List body = Arrays.asList(user); api.createUsersWithArrayInput(body); @@ -119,11 +118,11 @@ public void createUsersWithArrayInputTest() throws ApiException { * * * - * @throws ApiException + * @throws Exception * if the Api call fails */ @Test - public void createUsersWithListInputTest() throws ApiException { + public void createUsersWithListInputTest() throws Exception { User user = new User().id(10L).username("user1"); List body = Arrays.asList(user); api.createUsersWithListInput(body); @@ -136,11 +135,11 @@ public void createUsersWithListInputTest() throws ApiException { * * This can only be done by the logged in user. * - * @throws ApiException + * @throws Exception * if the Api call fails */ @Test - public void deleteUserTest() throws ApiException { + public void deleteUserTest() throws Exception { String username = "user1"; api.deleteUser(username); @@ -152,11 +151,11 @@ public void deleteUserTest() throws ApiException { * * * - * @throws ApiException + * @throws Exception * if the Api call fails */ @Test - public void getUserByNameTest() throws ApiException { + public void getUserByNameTest() throws Exception { String username = "user1"; User response = api.getUserByName(username); From 4d3ad0a5f95d3d8f56b071ca160249b016b490f9 Mon Sep 17 00:00:00 2001 From: Hugo Mercado Date: Tue, 2 Nov 2021 23:11:07 -0500 Subject: [PATCH 3/3] added java 11 workflows with gradle commands for build --- .../test-framework-v2-gradle-java11-feign.yml | 174 +++++++++++++++++ ...est-framework-v2-gradle-java11-jersey2.yml | 175 ++++++++++++++++++ ...framework-v2-gradle-java11-okhttp-gson.yml | 174 +++++++++++++++++ ...ramework-v2-gradle-java11-resttemplate.yml | 174 +++++++++++++++++ ...st-framework-v2-gradle-java11-retrofit.yml | 174 +++++++++++++++++ ...t-framework-v2-gradle-java11-retrofit2.yml | 174 +++++++++++++++++ 6 files changed, 1045 insertions(+) create mode 100644 .github/workflows/test-framework-v2-gradle-java11-feign.yml create mode 100644 .github/workflows/test-framework-v2-gradle-java11-jersey2.yml create mode 100644 .github/workflows/test-framework-v2-gradle-java11-okhttp-gson.yml create mode 100644 .github/workflows/test-framework-v2-gradle-java11-resttemplate.yml create mode 100644 .github/workflows/test-framework-v2-gradle-java11-retrofit.yml create mode 100644 .github/workflows/test-framework-v2-gradle-java11-retrofit2.yml diff --git a/.github/workflows/test-framework-v2-gradle-java11-feign.yml b/.github/workflows/test-framework-v2-gradle-java11-feign.yml new file mode 100644 index 00000000000..737e708a8ba --- /dev/null +++ b/.github/workflows/test-framework-v2-gradle-java11-feign.yml @@ -0,0 +1,174 @@ +name: Test Framework V2 Gradle Java 11 Feign + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload test files + uses: actions/upload-artifact@v2 + with: + name: java-custom-test-files + path: samples/custom-tests/java/v2/feign + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "java" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://petstore.swagger.io/v2/swagger.json" + options: " --library feign --additional-properties java11=true,wiremock=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "gradle-java11-feign-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [11] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 11 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: Download Java Feign Test Files + uses: actions/download-artifact@v2 + with: + name: java-custom-test-files + path: java-custom-test-files + - name: setup test files + id: test-files + run: | + echo "removing default test files (with not cases)" + rm generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/PetApiTest.java + rm generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/StoreApiTest.java + rm generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/UserApiTest.java + + echo "copying custom test files" + cp java-custom-test-files/PetApiTest.java generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/ + cp java-custom-test-files/StoreApiTest.java generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/ + cp java-custom-test-files/UserApiTest.java generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/ + + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "gradle build" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "gradle-java11-feign-v2-sample" diff --git a/.github/workflows/test-framework-v2-gradle-java11-jersey2.yml b/.github/workflows/test-framework-v2-gradle-java11-jersey2.yml new file mode 100644 index 00000000000..669c68281d8 --- /dev/null +++ b/.github/workflows/test-framework-v2-gradle-java11-jersey2.yml @@ -0,0 +1,175 @@ +name: Test Framework V2 Gradle Java 11 OkHttp-Gson + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload test files + uses: actions/upload-artifact@v2 + with: + name: java-custom-test-files + path: samples/custom-tests/java/v2/okhttp-gson + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "java" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://petstore.swagger.io/v2/swagger.json" + options: " --library jersey2 --additional-properties java11=true,wiremock=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "gradle-java11-jersey2-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [11] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 11 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: Download Java Feign Test Files + uses: actions/download-artifact@v2 + with: + name: java-custom-test-files + path: java-custom-test-files + - name: setup test files + id: test-files + run: | + gradle --version + echo "removing default test files (with not cases)" + rm generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/PetApiTest.java + rm generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/StoreApiTest.java + rm generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/UserApiTest.java + + echo "copying custom test files" + cp java-custom-test-files/PetApiTest.java generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/ + cp java-custom-test-files/StoreApiTest.java generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/ + cp java-custom-test-files/UserApiTest.java generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/ + + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "gradle build" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "gradle-java11-jersey2-v2-sample" diff --git a/.github/workflows/test-framework-v2-gradle-java11-okhttp-gson.yml b/.github/workflows/test-framework-v2-gradle-java11-okhttp-gson.yml new file mode 100644 index 00000000000..b3343091d72 --- /dev/null +++ b/.github/workflows/test-framework-v2-gradle-java11-okhttp-gson.yml @@ -0,0 +1,174 @@ +name: Test Framework V2 Gradle Java 11 OkHttp-Gson + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload test files + uses: actions/upload-artifact@v2 + with: + name: java-custom-test-files + path: samples/custom-tests/java/v2/okhttp-gson + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "java" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://petstore.swagger.io/v2/swagger.json" + options: " --additional-properties java11=true,wiremock=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "gradle-java11-okhttp-gson-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [11] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 11 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: Download Java Feign Test Files + uses: actions/download-artifact@v2 + with: + name: java-custom-test-files + path: java-custom-test-files + - name: setup test files + id: test-files + run: | + echo "removing default test files (with not cases)" + rm generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/PetApiTest.java + rm generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/StoreApiTest.java + rm generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/UserApiTest.java + + echo "copying custom test files" + cp java-custom-test-files/PetApiTest.java generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/ + cp java-custom-test-files/StoreApiTest.java generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/ + cp java-custom-test-files/UserApiTest.java generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/ + + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "gradle build" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "gradle-java11-okhttp-gson-v2-sample" diff --git a/.github/workflows/test-framework-v2-gradle-java11-resttemplate.yml b/.github/workflows/test-framework-v2-gradle-java11-resttemplate.yml new file mode 100644 index 00000000000..8f182cf307f --- /dev/null +++ b/.github/workflows/test-framework-v2-gradle-java11-resttemplate.yml @@ -0,0 +1,174 @@ +name: Test Framework V2 Gradle Java 11 Resttemplate + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload test files + uses: actions/upload-artifact@v2 + with: + name: java-custom-test-files + path: samples/custom-tests/java/v2/okhttp-gson + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "java" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://petstore.swagger.io/v2/swagger.json" + options: " --library resttemplate --additional-properties java11=true,wiremock=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "gradle-java11-resttemplate-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [11] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 11 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: Download Java Feign Test Files + uses: actions/download-artifact@v2 + with: + name: java-custom-test-files + path: java-custom-test-files + - name: setup test files + id: test-files + run: | + echo "removing default test files (with not cases)" + rm generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/PetApiTest.java + rm generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/StoreApiTest.java + rm generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/UserApiTest.java + + echo "copying custom test files" + cp java-custom-test-files/PetApiTest.java generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/ + cp java-custom-test-files/StoreApiTest.java generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/ + cp java-custom-test-files/UserApiTest.java generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/ + + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "gradle build" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "gradle-java11-resttemplate-v2-sample" diff --git a/.github/workflows/test-framework-v2-gradle-java11-retrofit.yml b/.github/workflows/test-framework-v2-gradle-java11-retrofit.yml new file mode 100644 index 00000000000..4e165f28901 --- /dev/null +++ b/.github/workflows/test-framework-v2-gradle-java11-retrofit.yml @@ -0,0 +1,174 @@ +name: Test Framework V2 Gradle Java 11 Retrofit + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload test files + uses: actions/upload-artifact@v2 + with: + name: java-custom-test-files + path: samples/custom-tests/java/v2/retrofit + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "java" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://petstore.swagger.io/v2/swagger.json" + options: " --library retrofit --additional-properties java11=true,wiremock=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "gradle-java11-retrofit-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [11] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 11 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: Download Java Feign Test Files + uses: actions/download-artifact@v2 + with: + name: java-custom-test-files + path: java-custom-test-files + - name: setup test files + id: test-files + run: | + echo "removing default test files (with not cases)" + rm generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/PetApiTest.java + rm generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/StoreApiTest.java + rm generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/UserApiTest.java + + echo "copying custom test files" + cp java-custom-test-files/PetApiTest.java generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/ + cp java-custom-test-files/StoreApiTest.java generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/ + cp java-custom-test-files/UserApiTest.java generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/ + + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "gradle build" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "gradle-java11-retrofit-v2-sample" diff --git a/.github/workflows/test-framework-v2-gradle-java11-retrofit2.yml b/.github/workflows/test-framework-v2-gradle-java11-retrofit2.yml new file mode 100644 index 00000000000..496d94bbc05 --- /dev/null +++ b/.github/workflows/test-framework-v2-gradle-java11-retrofit2.yml @@ -0,0 +1,174 @@ +name: Test Framework V2 Gradle Java 11 Retrofit2 + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload test files + uses: actions/upload-artifact@v2 + with: + name: java-custom-test-files + path: samples/custom-tests/java/v2/retrofit2 + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "java" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://petstore.swagger.io/v2/swagger.json" + options: " --library retrofit2 --additional-properties java11=true,wiremock=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "gradle-java11-retrofit2-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [11] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 11 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: Download Java Feign Test Files + uses: actions/download-artifact@v2 + with: + name: java-custom-test-files + path: java-custom-test-files + - name: setup test files + id: test-files + run: | + echo "removing default test files (with not cases)" + rm generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/PetApiTest.java + rm generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/StoreApiTest.java + rm generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/UserApiTest.java + + echo "copying custom test files" + cp java-custom-test-files/PetApiTest.java generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/ + cp java-custom-test-files/StoreApiTest.java generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/ + cp java-custom-test-files/UserApiTest.java generated/${{ env.JOB_NAME }}/src/test/java/io/swagger/client/api/ + + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "gradle build" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "gradle-java11-retrofit2-v2-sample"