Skip to content
Snippets Groups Projects
Commit 9871ea70 authored by Jueun Park's avatar Jueun Park
Browse files

edited build.gradle and OpenAPIMain_test

parent bc3fbe63
No related branches found
No related tags found
1 merge request!4Resolve "Show tests in CI"
Pipeline #13104 passed
...@@ -72,6 +72,7 @@ jar { ...@@ -72,6 +72,7 @@ jar {
} }
test { test {
testLogging.showStandardStreams = true
useJUnitPlatform() useJUnitPlatform()
maxHeapSize = '1G' maxHeapSize = '1G'
......
...@@ -12,10 +12,7 @@ import io.swagger.v3.core.util.Yaml; ...@@ -12,10 +12,7 @@ import io.swagger.v3.core.util.Yaml;
import io.swagger.v3.oas.models.OpenAPI; import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.v3.parser.OpenAPIV3Parser; import io.swagger.v3.parser.OpenAPIV3Parser;
import io.swagger.v3.parser.core.models.SwaggerParseResult; import io.swagger.v3.parser.core.models.SwaggerParseResult;
import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.*;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.MethodSource; import org.junit.jupiter.params.provider.MethodSource;
import org.junit.jupiter.params.provider.ValueSource; import org.junit.jupiter.params.provider.ValueSource;
...@@ -46,41 +43,24 @@ public class OpenAPIMain_test { ...@@ -46,41 +43,24 @@ public class OpenAPIMain_test {
ObjectMapper mapper = new ObjectMapper(); ObjectMapper mapper = new ObjectMapper();
List<String> validation; List<String> validation;
// parsed openAPI object with swagger-parser // parse OpenAPI in POJO, parse Json by POJO and validate OpenAPI-Json
SwaggerParseResult result = new OpenAPIParser().readLocation(file.getPath(), null, null); SwaggerParseResult result = new OpenAPIParser().readLocation(file.getPath(), null, null);
POJOOpenAPI = result.getOpenAPI(); POJOOpenAPI = result.getOpenAPI();
System.out.println("Loading expression DSL file '" + file + "'."); System.out.println("Loading expression DSL file '" + file + "'.");
// validation of OpenAPI in POJO
JsonNode expectedNode = mapper.readTree(Json.mapper().writeValueAsString(POJOOpenAPI)); JsonNode expectedNode = mapper.readTree(Json.mapper().writeValueAsString(POJOOpenAPI));
validation = new OpenAPIV3Parser().readContents(expectedNode.toString()).getMessages(); validation = new OpenAPIV3Parser().readContents(expectedNode.toString()).getMessages();
if ( validation.size() != 0 ) {
System.out.println("validation failed!");
for ( String s : validation )
System.out.println(s);
validation.clear();
}
else
System.out.println("validated!");
// OpenAPI in POJO to OpenAPI in JastAdd Assumptions.assumeFalse(validation.size() != 0, "validation of the input yaml not succeeded");
jastAddObject = OpenAPIObject.parseOpenAPI(POJOOpenAPI);
// OpenAPI in JastAdd to OpenAPI in POJO // parse OpenAPI in JastAdd, transform it to OpenAPI-POJO back and validate this
jastAddObject = OpenAPIObject.parseOpenAPI(POJOOpenAPI);
OpenAPI transformedAPI = OpenAPIObject.reverseOpenAPI(jastAddObject); OpenAPI transformedAPI = OpenAPIObject.reverseOpenAPI(jastAddObject);
// validation of transferred OpenAPI
JsonNode actualNode = mapper.readTree(Json.mapper().writeValueAsString(transformedAPI)); JsonNode actualNode = mapper.readTree(Json.mapper().writeValueAsString(transformedAPI));
validation = new OpenAPIV3Parser().readContents(actualNode.toString()).getMessages(); validation = new OpenAPIV3Parser().readContents(actualNode.toString()).getMessages();
if ( validation.size() != 0 ) {
System.out.println("validation failed!");
for ( String s : validation )
System.out.println(s);
}
else
System.out.println("validated");
// compare if api (source object) is equivalent to api3 (generated object) Assumptions.assumeFalse(validation.size() != 0, "validation of the transformed yaml not succeeded");
// compare if parsed OpenAPI (source object, Json) is equivalent to back-transformed OpenAPI (generated object, Json)
compareJson(expectedNode, actualNode, Paths.get(file.getPath())); compareJson(expectedNode, actualNode, Paths.get(file.getPath()));
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment