diff --git a/.gradle/6.8/executionHistory/executionHistory.bin b/.gradle/6.8/executionHistory/executionHistory.bin index d0ddd8ad2e92440224b9fc21ed245a9efe86aa3d..97dac7dd30bab64f8f59a07dc521498752827d11 100644 Binary files a/.gradle/6.8/executionHistory/executionHistory.bin and b/.gradle/6.8/executionHistory/executionHistory.bin differ diff --git a/.gradle/6.8/executionHistory/executionHistory.lock b/.gradle/6.8/executionHistory/executionHistory.lock index 8a7a70c3a27aa7b0f62b39f7a76337b3353e66f5..904923f0021bcd3d652f6eb0da0296814041e11b 100644 Binary files a/.gradle/6.8/executionHistory/executionHistory.lock and b/.gradle/6.8/executionHistory/executionHistory.lock differ diff --git a/.gradle/6.8/fileHashes/fileHashes.bin b/.gradle/6.8/fileHashes/fileHashes.bin index fccd77b71b3de6eff42e2c53c8efeaf0b1f7f1c5..a0d2dbc075e598c9cbf9b7e3d57022a746dd807d 100644 Binary files a/.gradle/6.8/fileHashes/fileHashes.bin and b/.gradle/6.8/fileHashes/fileHashes.bin differ diff --git a/.gradle/6.8/fileHashes/fileHashes.lock b/.gradle/6.8/fileHashes/fileHashes.lock index b2b03c2cf21831bc0e3c07be7127025392c78521..b9570e2ff753eea01f74b089b19f79d72b25fb36 100644 Binary files a/.gradle/6.8/fileHashes/fileHashes.lock and b/.gradle/6.8/fileHashes/fileHashes.lock differ diff --git a/.gradle/6.8/fileHashes/resourceHashesCache.bin b/.gradle/6.8/fileHashes/resourceHashesCache.bin index e311a6f51bfa90d55e137aed3d425c7e206aceed..53e2cca96b4d53c5f1b7d1313a2df47167981b3c 100644 Binary files a/.gradle/6.8/fileHashes/resourceHashesCache.bin and b/.gradle/6.8/fileHashes/resourceHashesCache.bin differ diff --git a/.gradle/6.8/javaCompile/classAnalysis.bin b/.gradle/6.8/javaCompile/classAnalysis.bin index c112860dabff0665c4d19795181c07dd601927a0..51a45698bec66625f2a6af3290132de025e80c8c 100644 Binary files a/.gradle/6.8/javaCompile/classAnalysis.bin and b/.gradle/6.8/javaCompile/classAnalysis.bin differ diff --git a/.gradle/6.8/javaCompile/jarAnalysis.bin b/.gradle/6.8/javaCompile/jarAnalysis.bin index f4055941262b587a27a21a0eccb4c66dd4993232..6d2242c613de43bb0dd3e6b0faf18ad5855b0af9 100644 Binary files a/.gradle/6.8/javaCompile/jarAnalysis.bin and b/.gradle/6.8/javaCompile/jarAnalysis.bin differ diff --git a/.gradle/6.8/javaCompile/javaCompile.lock b/.gradle/6.8/javaCompile/javaCompile.lock index 5e789334e9423d26ead4eb46e0268635b619c32e..02e22195ed6b602bebf11052494b17bac59cace5 100644 Binary files a/.gradle/6.8/javaCompile/javaCompile.lock and b/.gradle/6.8/javaCompile/javaCompile.lock differ diff --git a/.gradle/6.8/javaCompile/taskHistory.bin b/.gradle/6.8/javaCompile/taskHistory.bin index c4435971fdce175ff1ced1417c16ec575bcf045f..00ab507c2e813767caa8cbf0a0628cec6204ef45 100644 Binary files a/.gradle/6.8/javaCompile/taskHistory.bin and b/.gradle/6.8/javaCompile/taskHistory.bin differ diff --git a/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/.gradle/buildOutputCleanup/buildOutputCleanup.lock index 3fa5160693b4967d481603f15d786ebe45879481..c5383334eee95f16809e9db5fe0a4a58f1857241 100644 Binary files a/.gradle/buildOutputCleanup/buildOutputCleanup.lock and b/.gradle/buildOutputCleanup/buildOutputCleanup.lock differ diff --git a/.gradle/checksums/checksums.lock b/.gradle/checksums/checksums.lock index 53b6db8ec60fe3df874a73b5b2b30a818c8ee378..8d4f0b866c47ccafefc99b3f6f021964b96026cd 100644 Binary files a/.gradle/checksums/checksums.lock and b/.gradle/checksums/checksums.lock differ diff --git a/.gradle/checksums/md5-checksums.bin b/.gradle/checksums/md5-checksums.bin index ed315953d97bd59647ffedf9467ecbd511112cbc..f8dc3b946d1dbfb7d6303423a537b35a767df19d 100644 Binary files a/.gradle/checksums/md5-checksums.bin and b/.gradle/checksums/md5-checksums.bin differ diff --git a/.gradle/checksums/sha1-checksums.bin b/.gradle/checksums/sha1-checksums.bin index 2c9be75fd04ba08a08e5b7a2ebe18f044cdf88f7..6ffbc18c4984ce8f29f5f29f87ccafeb22da9b3b 100644 Binary files a/.gradle/checksums/sha1-checksums.bin and b/.gradle/checksums/sha1-checksums.bin differ diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 13286d22b02bb0f450e4a4afe1a1a82d9e0fa4c0..e57208e6fe89ba37a0a86097fb2bb138eaaa34b7 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,14 +1,6 @@ <?xml version="1.0" encoding="UTF-8"?> <project version="4"> <component name="CompilerConfiguration"> - <annotationProcessing> - <profile name="Maven default annotation processors profile" enabled="true"> - <sourceOutputDir name="target/generated-sources/annotations" /> - <sourceTestOutputDir name="target/generated-test-sources/test-annotations" /> - <outputRelativeToContentRoot value="true" /> - <module name="jastadd-openapi" /> - </profile> - </annotationProcessing> <bytecodeTargetLevel target="1.8"> <module name="openapi-parser" target="1.8" /> </bytecodeTargetLevel> diff --git a/build.gradle b/build.gradle index bdbf4ede21bdec38b0b59b4e769d418724046fe9..ea9af2055eec0369bb43ff60e7bd8dc14b28615d 100644 --- a/build.gradle +++ b/build.gradle @@ -26,6 +26,7 @@ dependencies { testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-engine', version: '5.7.0' testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-api', version: '5.7.0' + testImplementation group: 'com.jayway.jsonpath', name: 'json-path', version: '2.6.0' testImplementation 'com.flipkart.zjsonpatch:zjsonpatch:0.4.10' } diff --git a/build/classes/java/main/de/tudresden/inf/st/openapi/ast/OpenAPIObject.class b/build/classes/java/main/de/tudresden/inf/st/openapi/ast/OpenAPIObject.class index 23702a402eb12f7e444bbfb67c034c5c6f9c9285..cb4d21cda85277f3de32466ba20e3864fc3dc683 100644 Binary files a/build/classes/java/main/de/tudresden/inf/st/openapi/ast/OpenAPIObject.class and b/build/classes/java/main/de/tudresden/inf/st/openapi/ast/OpenAPIObject.class differ diff --git a/build/classes/java/main/de/tudresden/inf/st/openapi/ast/SchemaOb.class b/build/classes/java/main/de/tudresden/inf/st/openapi/ast/SchemaOb.class index 9a0cae0b1904ef9c15927683991a5c53f6421ace..be61b94982e001ef8ef6fbfcb851f62a7a7db4ee 100644 Binary files a/build/classes/java/main/de/tudresden/inf/st/openapi/ast/SchemaOb.class and b/build/classes/java/main/de/tudresden/inf/st/openapi/ast/SchemaOb.class differ diff --git a/build/classes/java/test/openapi/OpenAPIMain_test.class b/build/classes/java/test/openapi/OpenAPIMain_test.class index 35ecb72048ec09e359f5caff6592ed689a9fd214..bc0350a289267ca93afe80ef1a4e42032dad7a07 100644 Binary files a/build/classes/java/test/openapi/OpenAPIMain_test.class and b/build/classes/java/test/openapi/OpenAPIMain_test.class differ diff --git a/build/reports/tests/test/classes/openapi.OpenAPIMain_test.html b/build/reports/tests/test/classes/openapi.OpenAPIMain_test.html index 1cec3c1fe29c53cb767e4e7eee6c25572bb46964..bbee78c82a1c45136850711d3817da1d8c6fb418 100644 --- a/build/reports/tests/test/classes/openapi.OpenAPIMain_test.html +++ b/build/reports/tests/test/classes/openapi.OpenAPIMain_test.html @@ -41,7 +41,7 @@ </td> <td> <div class="infoBox" id="duration"> -<div class="counter">0.741s</div> +<div class="counter">0.613s</div> <p>duration</p> </div> </td> @@ -66,6 +66,9 @@ <li> <a href="#tab1">Standard output</a> </li> +<li> +<a href="#tab2">Standard error</a> +</li> </ul> <div id="tab0" class="tab"> <h2>Tests</h2> @@ -79,7 +82,7 @@ </thead> <tr> <td class="success">test()</td> -<td class="success">0.741s</td> +<td class="success">0.613s</td> <td class="success">passed</td> </tr> </table> @@ -96,6 +99,15 @@ Loading expression DSL file 'petstore-v2.yaml'. </pre> </span> </div> +<div id="tab2" class="tab"> +<h2>Standard error</h2> +<span class="code"> +<pre>SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". +SLF4J: Defaulting to no-operation (NOP) logger implementation +SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details. +</pre> +</span> +</div> </div> <div id="footer"> <p> @@ -104,7 +116,7 @@ Loading expression DSL file 'petstore-v2.yaml'. <input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/> </label> </div>Generated by -<a href="http://www.gradle.org">Gradle 6.8</a> at 2021. 10. 4. 오후 11:06:37</p> +<a href="http://www.gradle.org">Gradle 6.8</a> at 2021. 10. 8. 오후 4:36:21</p> </div> </div> </body> diff --git a/build/reports/tests/test/index.html b/build/reports/tests/test/index.html index cf649dfbc9e9a710d4ce927df822e2447ffc64f1..580bb8fb88eca1a472d2de05c05b68844cccc89c 100644 --- a/build/reports/tests/test/index.html +++ b/build/reports/tests/test/index.html @@ -38,7 +38,7 @@ </td> <td> <div class="infoBox" id="duration"> -<div class="counter">0.741s</div> +<div class="counter">0.613s</div> <p>duration</p> </div> </td> @@ -85,7 +85,7 @@ <td>1</td> <td>0</td> <td>0</td> -<td>0.741s</td> +<td>0.613s</td> <td class="success">100%</td> </tr> </tbody> @@ -112,7 +112,7 @@ <td>1</td> <td>0</td> <td>0</td> -<td>0.741s</td> +<td>0.613s</td> <td class="success">100%</td> </tr> </tbody> @@ -126,7 +126,7 @@ <input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/> </label> </div>Generated by -<a href="http://www.gradle.org">Gradle 6.8</a> at 2021. 10. 4. 오후 11:06:37</p> +<a href="http://www.gradle.org">Gradle 6.8</a> at 2021. 10. 8. 오후 4:36:21</p> </div> </div> </body> diff --git a/build/reports/tests/test/packages/openapi.html b/build/reports/tests/test/packages/openapi.html index dd7afe5cf7e5a73ed79d6c5a25f4d8630c84ebc4..dd4ff522c87cf308540219c187092e4896da3001 100644 --- a/build/reports/tests/test/packages/openapi.html +++ b/build/reports/tests/test/packages/openapi.html @@ -40,7 +40,7 @@ </td> <td> <div class="infoBox" id="duration"> -<div class="counter">0.741s</div> +<div class="counter">0.613s</div> <p>duration</p> </div> </td> @@ -83,7 +83,7 @@ <td>1</td> <td>0</td> <td>0</td> -<td>0.741s</td> +<td>0.613s</td> <td class="success">100%</td> </tr> </table> @@ -96,7 +96,7 @@ <input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/> </label> </div>Generated by -<a href="http://www.gradle.org">Gradle 6.8</a> at 2021. 10. 4. 오후 11:06:37</p> +<a href="http://www.gradle.org">Gradle 6.8</a> at 2021. 10. 8. 오후 4:36:21</p> </div> </div> </body> diff --git a/build/test-results/test/TEST-openapi.OpenAPIMain_test.xml b/build/test-results/test/TEST-openapi.OpenAPIMain_test.xml index 99a8312a23904277977d248f063fe4e8abcf973c..a994244069356de8e62e3967ddd4af5af00e0f7c 100644 --- a/build/test-results/test/TEST-openapi.OpenAPIMain_test.xml +++ b/build/test-results/test/TEST-openapi.OpenAPIMain_test.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> -<testsuite name="openapi.OpenAPIMain_test" tests="1" skipped="0" failures="0" errors="0" timestamp="2021-10-04T14:06:36" hostname="DESKTOP-7SEB5SB" time="0.741"> +<testsuite name="openapi.OpenAPIMain_test" tests="1" skipped="0" failures="0" errors="0" timestamp="2021-10-08T07:36:20" hostname="DESKTOP-7SEB5SB" time="0.613"> <properties/> - <testcase name="test()" classname="openapi.OpenAPIMain_test" time="0.741"/> + <testcase name="test()" classname="openapi.OpenAPIMain_test" time="0.613"/> <system-out><![CDATA[5 Loading expression DSL file '1password.com-events-1.0.0.json'. Loading expression DSL file '6-dot-authentiqio.appspot.com-6.json'. @@ -9,5 +9,8 @@ Loading expression DSL file 'abstractapi.com-geolocation-1.0.0.json'. Loading expression DSL file 'adyen.com-CheckoutUtilityService-1.json'. Loading expression DSL file 'petstore-v2.yaml'. ]]></system-out> - <system-err><![CDATA[]]></system-err> + <system-err><![CDATA[SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". +SLF4J: Defaulting to no-operation (NOP) logger implementation +SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details. +]]></system-err> </testsuite> diff --git a/build/test-results/test/binary/output.bin b/build/test-results/test/binary/output.bin index bceca37f94bc52ad4780ec096d8c86c45c973a5a..771876248854dcd16aa4dd7dca804351fe458c0c 100644 Binary files a/build/test-results/test/binary/output.bin and b/build/test-results/test/binary/output.bin differ diff --git a/build/test-results/test/binary/output.bin.idx b/build/test-results/test/binary/output.bin.idx index 75802f971af7f4f8a18ea7f2f23e65d594486cbf..9706eed18037e5fadeb6cba0825aa2d189605b66 100644 Binary files a/build/test-results/test/binary/output.bin.idx and b/build/test-results/test/binary/output.bin.idx differ diff --git a/build/test-results/test/binary/results.bin b/build/test-results/test/binary/results.bin index abdad60d4675bc1a658bbdb19e44b18b03b88fe8..cdea4129d48e6d0231d32a9549274ce19e12585f 100644 Binary files a/build/test-results/test/binary/results.bin and b/build/test-results/test/binary/results.bin differ diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/CallbackOb.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/CallbackOb.java index 8a20750386ec0cea94a41697a93a7e9ab67845dc..ad808103010c25f1295abfda29050e725210a745 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/CallbackOb.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/CallbackOb.java @@ -26,7 +26,7 @@ import java.util.stream.IntStream; public abstract class CallbackOb extends ASTNode<ASTNode> implements Cloneable { /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:506 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:482 */ public static CallbackOb parseCallback(Callback callback, OAIContext context, Map<Object, ASTNode> map) throws DecodeException { CallbackObject callbackObject = new CallbackObject(); diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/ComponentsObject.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/ComponentsObject.java index 91b85cd9f4928d6c751314b077d9687042417b2c..7dc5938f86894e054f17d62f94b4d3c3536ae01a 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/ComponentsObject.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/ComponentsObject.java @@ -118,7 +118,7 @@ public class ComponentsObject extends ASTNode<ASTNode> implements Cloneable { } /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:166 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:142 */ public static ComponentsObject parseComponents(Components components, OAIContext context, Map<Object, ASTNode> map) throws DecodeException { ComponentsObject componentsObject = new ComponentsObject(); diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/ContactObject.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/ContactObject.java index 6dee87268b3678dd230e343664d2ce74d41c645c..510b65891fcf856fe8d9bad42e3c417960d1ff26 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/ContactObject.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/ContactObject.java @@ -49,7 +49,7 @@ public class ContactObject extends ASTNode<ASTNode> implements Cloneable { } /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:92 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:68 */ public static ContactObject parseContact(Contact contact, Map<Object, ASTNode> map){ ContactObject contactObject = new ContactObject(); diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/DiscriminatorObject.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/DiscriminatorObject.java index 5dbf5fce78e55c1570bdbed6041e8b8245bfa21d..a4fdd64dcd6fa494bf68b788a5a4ade47744468e 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/DiscriminatorObject.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/DiscriminatorObject.java @@ -44,7 +44,7 @@ public class DiscriminatorObject extends ASTNode<ASTNode> implements Cloneable { } /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:777 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:752 */ public static DiscriminatorObject parseDiscriminator (Discriminator discriminator, Map<Object, ASTNode> map) { DiscriminatorObject discriminatorObject = new DiscriminatorObject(); diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/EncodingObject.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/EncodingObject.java index 733ff59f0b4bf89e5a5f47cff7ff7e9d96877f50..65618cf6050c5793d9c7111e8ccca858bea9cd0c 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/EncodingObject.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/EncodingObject.java @@ -56,7 +56,7 @@ public class EncodingObject extends ASTNode<ASTNode> implements Cloneable { } /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:451 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:427 */ public static EncodingObject parseEncoding(EncodingProperty encodingProperty, OAIContext context, Map<Object, ASTNode> map) throws DecodeException { EncodingObject encodingObject = new EncodingObject(); diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/ExampleObject.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/ExampleObject.java index 3368d94202b31ed358ad03ce06158fc8fa1a6b86..bfa74789c2292227fcb883a313d92520efdb3db0 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/ExampleObject.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/ExampleObject.java @@ -50,7 +50,7 @@ public class ExampleObject extends ASTNode<ASTNode> implements Cloneable { } /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:529 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:505 */ public static ExampleObject parseExample(Example example, OAIContext context, Map<Object, ASTNode> map){ ExampleObject exampleObject = new ExampleObject(); diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/ExternalDocObject.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/ExternalDocObject.java index 717d648d338d6b16b9b98f5f6ba2b2187f43542c..67056a7f178c0d39e28ad19ec031eb741298b837 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/ExternalDocObject.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/ExternalDocObject.java @@ -46,7 +46,7 @@ public class ExternalDocObject extends ASTNode<ASTNode> implements Cloneable { } /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:336 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:312 */ public static ExternalDocObject parseExternalDocs(ExternalDocs externalDocs, Map<Object, ASTNode> map){ ExternalDocObject externalDocObject = new ExternalDocObject(); diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/HeaderOb.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/HeaderOb.java index b9fe98e39c3ddec2731bc2a0d3997f5c9bd37311..5153fa6f2fdf5aab5cb8e1955eaf5799adc017fd 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/HeaderOb.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/HeaderOb.java @@ -26,7 +26,7 @@ import java.util.stream.IntStream; public abstract class HeaderOb extends ASTNode<ASTNode> implements Cloneable { /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:585 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:561 */ public static HeaderOb parseHeader(Header header, OAIContext context, Map<Object, ASTNode> map) throws DecodeException { HeaderObject headerObject = new HeaderObject(); diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/InfoObject.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/InfoObject.java index 52a38950765b4aed60e18a45e7473f588ab8c428..981174b22438e4d77cd3fe683fbef23c4c46ca7a 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/InfoObject.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/InfoObject.java @@ -55,7 +55,7 @@ public class InfoObject extends ASTNode<ASTNode> implements Cloneable { } /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:68 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:44 */ public static InfoObject parseInfo(Info info, Map<Object, ASTNode> map) { InfoObject infoObject = new InfoObject(); diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/LicenseObject.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/LicenseObject.java index e52d0d936c9fe3d6545d00d97fc54be1d6141193..000bc13e1d756881b660760c5ff587415a0000ad 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/LicenseObject.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/LicenseObject.java @@ -47,7 +47,7 @@ public class LicenseObject extends ASTNode<ASTNode> implements Cloneable { } /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:110 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:86 */ public static LicenseObject parseLicense(License license, Map<Object, ASTNode> map){ LicenseObject licenseObject = new LicenseObject(); diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/LinkOb.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/LinkOb.java index 4f69f47cb720be4cad01c478e4b0e7ba8e407f69..827c3456775a7501dcf271e7ea0976bd597f29c8 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/LinkOb.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/LinkOb.java @@ -26,7 +26,7 @@ import java.util.stream.IntStream; public abstract class LinkOb extends ASTNode<ASTNode> implements Cloneable { /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:554 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:530 */ public static LinkOb parseLink(Link link, OAIContext context, Map<Object, ASTNode> map) throws DecodeException { LinkObject linkObject = new LinkObject(); diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/MediaTypeObject.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/MediaTypeObject.java index b2a8375ba6d4b607951b873b22e041346d7e99aa..b1d926441ad3a74dbd073a031c0d481f3f3acaaa 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/MediaTypeObject.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/MediaTypeObject.java @@ -54,7 +54,7 @@ public class MediaTypeObject extends ASTNode<ASTNode> implements Cloneable { } /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:427 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:403 */ public static MediaTypeObject parseMediaType(MediaType mediaType, OAIContext context, Map<Object, ASTNode> map) throws DecodeException { MediaTypeObject mediaTypeObject = new MediaTypeObject(); diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/OAuthFlowObject.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/OAuthFlowObject.java index abe1e8f2f7eb998acb79114415aac23435aa6588..0c7cfd0720b9d9a59758951e9f7e6d8563319d52 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/OAuthFlowObject.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/OAuthFlowObject.java @@ -47,7 +47,7 @@ public class OAuthFlowObject extends ASTNode<ASTNode> implements Cloneable { } /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:877 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:852 */ public static OAuthFlowObject parseOAuthFlow(OAuthFlow oAuthFlow, Map<Object, ASTNode> map){ OAuthFlowObject oAuthFlowObject = new OAuthFlowObject(); diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/OAuthFlowsObject.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/OAuthFlowsObject.java index 02bad3b4ab63d2db3271749dc202645dd4013961..15faf4ab2a0366d858d90324d5802b9543ad2c2b 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/OAuthFlowsObject.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/OAuthFlowsObject.java @@ -44,7 +44,7 @@ public class OAuthFlowsObject extends ASTNode<ASTNode> implements Cloneable { } /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:845 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:820 */ public static OAuthFlowsObject parseOAuthFlows(OAuthFlows oAuthFlows, Map<Object, ASTNode> map){ OAuthFlowsObject oAuthFlowsObject = new OAuthFlowsObject(); diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/OpenAPIObject.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/OpenAPIObject.java index 12e31ff90255f7e373dcfe36192e9b9d6356999c..3e039530308b4e766dcf40b305cbb7fee56c76f0 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/OpenAPIObject.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/OpenAPIObject.java @@ -115,30 +115,6 @@ public class OpenAPIObject extends ASTNode<ASTNode> implements Cloneable { } map.put(api, openapi); - int a = 0; - Set<ResponseObject> responseObjects = new HashSet<>(); - Set<Response> responses = new HashSet<>(); - for( Object o : map.keySet() ){ - - if( map.get(o) instanceof ResponseObject ){ - if(!responseObjects.contains(map.get(o))){ - responseObjects.add((ResponseObject) map.get(o)); - a++; - } - } - - /* - if( map.get(o) instanceof SchemaObject ){ - if(schemas.contains(map.get(o))){ - schemas.add((SchemaObject) map.get(o)); - a++; - } - } - - */ - } - - System.out.println("size of ResponseObjects: " + a); return openapi; } /** diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/OperationObject.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/OperationObject.java index 0020ec517e26c42fcbdbf18f73a421a1c6582248..c810e93d8671577df5d5748810eb6dc81b3f8952 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/OperationObject.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/OperationObject.java @@ -82,7 +82,7 @@ public class OperationObject extends OperationOb implements Cloneable { } /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:285 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:261 */ public static OperationObject parseOperation(Operation operation, OAIContext context, Map<Object, ASTNode> map) throws DecodeException{ OperationObject operationObject = new OperationObject(); diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/ParameterOb.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/ParameterOb.java index 74334497f27b424bba908292c2335d93c1c6af40..2727a42f0927ab738eaaf0702c1a4e8bd42f9ba9 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/ParameterOb.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/ParameterOb.java @@ -26,7 +26,7 @@ import java.util.stream.IntStream; public abstract class ParameterOb extends ASTNode<ASTNode> implements Cloneable { /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:353 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:329 */ public static ParameterOb parseParameter(Parameter parameter, OAIContext context, Map<Object, ASTNode> map) throws DecodeException { ParameterObject parameterObject = new ParameterObject(); diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/PathItemOb.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/PathItemOb.java index 02c82df48ef14dd7b021620fdf04b3b343fbe1e6..50fddea000403635b8a9af34d1c18c042369bf93 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/PathItemOb.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/PathItemOb.java @@ -26,7 +26,7 @@ import java.util.stream.IntStream; public abstract class PathItemOb extends ASTNode<ASTNode> implements Cloneable { /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:214 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:190 */ public static PathItemOb parsePath(Path path, OAIContext context, Map<Object, ASTNode> map) throws DecodeException { PathItemObject pathItem = new PathItemObject(); diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/RequestBodyOb.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/RequestBodyOb.java index 203e71bedcb3ec565ecc10755d3f6767dd76b0bd..b0e2c94553b5b72250a22f875f4c9010ed424044 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/RequestBodyOb.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/RequestBodyOb.java @@ -26,7 +26,7 @@ import java.util.stream.IntStream; public abstract class RequestBodyOb extends ASTNode<ASTNode> implements Cloneable { /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:400 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:376 */ public static RequestBodyOb parseRequestBody(org.openapi4j.parser.model.v3.RequestBody requestBody, OAIContext context, Map<Object, ASTNode> map) throws DecodeException { RequestBodyObject requestBodyObject = new RequestBodyObject(); diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/ResponseOb.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/ResponseOb.java index fa8fb7c1862dd2c80f05dcbdcf6e6f42a5c6d2a2..d0beabef5f0e910e029a62ef174762d6c65c6930 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/ResponseOb.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/ResponseOb.java @@ -26,7 +26,7 @@ import java.util.stream.IntStream; public abstract class ResponseOb extends ASTNode<ASTNode> implements Cloneable { /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:473 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:449 */ public static ResponseOb parseResponse(Response response, OAIContext context, Map<Object, ASTNode> map) throws DecodeException { ResponseObject responseObject = new ResponseObject(); diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/SchemaOb.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/SchemaOb.java index ad1b8f36c99220255aea94b1a317bd6fc5d038c2..4d286e94de2908bf200eacced710d13b26202669 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/SchemaOb.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/SchemaOb.java @@ -26,7 +26,7 @@ import java.util.stream.IntStream; public abstract class SchemaOb extends ASTNode<ASTNode> implements Cloneable { /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:650 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:626 */ public static SchemaOb parseSchema (org.openapi4j.parser.model.v3.Schema schema, OAIContext context, Map<Object, ASTNode> map) throws DecodeException { SchemaObject schemaObject = new SchemaObject(); @@ -35,7 +35,6 @@ public abstract class SchemaOb extends ASTNode<ASTNode> implements Cloneable { SchemaReference s = new SchemaReference(); s.setRef(schema.getRef()); s.setSchemaOb(parseSchema(schema.getReference(context).getMappedContent(Schema.class), context, map)); - System.out.println(s.getRef()); return s; } else { if( schema.getAdditionalProperties() != null ) diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/SecurityRequirementObject.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/SecurityRequirementObject.java index 8e55539d499068a1674300381c25fd8eb66efee0..36a250d21832cad6bc56020d6aba9d4b640866a5 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/SecurityRequirementObject.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/SecurityRequirementObject.java @@ -46,7 +46,7 @@ public class SecurityRequirementObject extends ASTNode<ASTNode> implements Clone } /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:897 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:872 */ public static SecurityRequirementObject parseSecurityRequirement(SecurityRequirement securityRequirement, Map<Object, ASTNode> map){ SecurityRequirementObject securityRequirementObject = new SecurityRequirementObject(); diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/SecuritySchemeOb.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/SecuritySchemeOb.java index c8448a9eaf704e7743c845aa4b8f39b831a12af0..14d9ff79fcb59a99970948c7c0a037d4a193246b 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/SecuritySchemeOb.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/SecuritySchemeOb.java @@ -26,7 +26,7 @@ import java.util.stream.IntStream; public abstract class SecuritySchemeOb extends ASTNode<ASTNode> implements Cloneable { /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:817 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:792 */ public static SecuritySchemeOb parseSecurityScheme(SecurityScheme securityScheme, OAIContext context, Map<Object, ASTNode> map){ SecuritySchemeObject securitySchemeObject = new SecuritySchemeObject(); diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/ServerObject.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/ServerObject.java index fb957f073ac3c36ebf93bc69e28ca8b6e4e24173..90d2d5607617687a78aa2f162757da040fc19773 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/ServerObject.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/ServerObject.java @@ -53,7 +53,7 @@ public class ServerObject extends ASTNode<ASTNode> implements Cloneable { } /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:126 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:102 */ public static ServerObject parseServer(Server server, Map<Object, ASTNode> map){ ServerObject serverObject = new ServerObject(); diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/ServerVariableObject.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/ServerVariableObject.java index d0206817777df7cc1791c8520f8a8653e5e3602b..5c0cf4971f6f389228d5f720115b6d6d765b2222 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/ServerVariableObject.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/ServerVariableObject.java @@ -53,7 +53,7 @@ public class ServerVariableObject extends ASTNode<ASTNode> implements Cloneable } /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:146 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:122 */ public static ServerVariableObject parseServerVariable(ServerVariable serverVariable, Map<Object, ASTNode> map){ ServerVariableObject serverVariableObject = new ServerVariableObject(); diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/TagObject.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/TagObject.java index bf0d724b0e449a9ddb73af356cd2c91fb55cf82b..2a1e5c572decb682906924954df8ecfcfa65b314 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/TagObject.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/TagObject.java @@ -48,7 +48,7 @@ public class TagObject extends ASTNode<ASTNode> implements Cloneable { } /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:628 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:604 */ public static TagObject parseTag(org.openapi4j.parser.model.v3.Tag tag, Map<Object, ASTNode> map){ TagObject tagObject = new TagObject(); diff --git a/src/gen/java/de/tudresden/inf/st/openapi/ast/XmlObject.java b/src/gen/java/de/tudresden/inf/st/openapi/ast/XmlObject.java index db05e4c0497a2eadca9c7caf3933819f8d3914c1..d546aa15e420b496ad0af8720ba3a05c16fab2af 100644 --- a/src/gen/java/de/tudresden/inf/st/openapi/ast/XmlObject.java +++ b/src/gen/java/de/tudresden/inf/st/openapi/ast/XmlObject.java @@ -46,7 +46,7 @@ public class XmlObject extends ASTNode<ASTNode> implements Cloneable { } /** * @aspect Parser - * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:795 + * @declaredat E:\\bachelor-thesis\\SigTest\\bachelor-thesis-jastadd\\src\\main\\jastadd\\Parser.jrag:770 */ public static XmlObject parseXml (Xml xml, Map<Object, ASTNode> map) { XmlObject xmlObject = new XmlObject(); diff --git a/src/main/jastadd/Parser.jrag b/src/main/jastadd/Parser.jrag index e100db37b8a3b8fcf253897dc8e0723841d1d0e2..f432f5a70b06ccaff575b893c95b2d95de063f0a 100644 --- a/src/main/jastadd/Parser.jrag +++ b/src/main/jastadd/Parser.jrag @@ -38,7 +38,6 @@ public static OpenAPIObject OpenAPIObject.parseOpenAPI(OpenApi3 api) throws IOEx } map.put(api, openapi); - return openapi; } diff --git a/src/test/java/openapi/OpenAPIMain_test.java b/src/test/java/openapi/OpenAPIMain_test.java index 6a4347fc6eb38eb89d352c129eb0f0b2dd17f863..9d829bc42e6b70d1322afa27f1c8936ab368f053 100644 --- a/src/test/java/openapi/OpenAPIMain_test.java +++ b/src/test/java/openapi/OpenAPIMain_test.java @@ -14,6 +14,7 @@ import org.openapi4j.parser.OpenApi3Parser; import org.openapi4j.parser.model.v3.*; import org.openapi4j.parser.validation.v3.OpenApi3Validator; import com.fasterxml.jackson.databind.JsonNode; +import com.jayway.jsonpath.JsonPath; import java.io.File; import java.io.FileNotFoundException; @@ -95,23 +96,20 @@ public class OpenAPIMain_test { protected void compareJson(JsonNode expectedNode, JsonNode actualNode, Path path) throws IOException { JsonNode diff = JsonDiff.asJson(expectedNode, actualNode); - while( diff.size() > 0 ){ - // remove all diffs, which are empty - if( diff.get(0).has("value") && diff.get(0).get("value").isEmpty() ) - ((ArrayNode) diff).remove(0); - // remove all diffs, which are copies of empty properties - else if( diff.get(0).has("op") && diff.get(0).get("op").toString().equals("\"copy\"") ) - ((ArrayNode) diff).remove(0); - else if( diff.get(0).has("op") && diff.get(0).get("op").toString().equals("\"move\"") ) - ((ArrayNode) diff).remove(0); - else if( diff.get(0).has("op") && diff.get(0).get("op").toString().equals("\"remove\"") ) - ((ArrayNode) diff).remove(0); + String pathNode; + + for( int i = diff.size()-1 ; i >= 0 ; i-- ){ + // get the path of a node involving difference. + pathNode = "$" + diff.get(i).get("path").toString().replace("/", ".").replace("~1", "/").replace("\"", ""); + + // check, if this node has an empty value. + if( JsonPath.parse(actualNode.toString()).read(pathNode, String.class).isEmpty() ) + ((ArrayNode) diff).remove(i); } - // if the Jsons are equivalent, there is no reason to to the text comparison + // if the Jsons are equivalent, there is no reason to to the text comparison. // if there is a difference, a text comparison might look better than just the diff. if (diff.size() != 0) { - //System.out.println(diff.toPrettyString()); Assertions.assertEquals(actualNode.toPrettyString(), expectedNode.toPrettyString(), "JSONs for " + path + " are different:\n" + diff.toPrettyString()); } }