This is an automated email from the ASF dual-hosted git repository. jamesbognar pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/juneau.git
The following commit(s) were added to refs/heads/master by this push: new 498a466be Test modernization 498a466be is described below commit 498a466be8b1e6339d3a36f2886454b0baa240b6 Author: James Bognar <james.bog...@salesforce.com> AuthorDate: Thu Aug 28 08:48:20 2025 -0400 Test modernization --- .../src/test/java/org/apache/juneau/TestUtils.java | 30 +- .../java/org/apache/juneau/rest/Swagger_Test.java | 617 ++++++++++----------- 2 files changed, 325 insertions(+), 322 deletions(-) diff --git a/juneau-utest/src/test/java/org/apache/juneau/TestUtils.java b/juneau-utest/src/test/java/org/apache/juneau/TestUtils.java index 72b68066b..20ce012d2 100644 --- a/juneau-utest/src/test/java/org/apache/juneau/TestUtils.java +++ b/juneau-utest/src/test/java/org/apache/juneau/TestUtils.java @@ -159,14 +159,29 @@ public class TestUtils extends Utils2 { /** * Asserts the entries in a list matches the expected strings after they've been made readable. */ - @SuppressWarnings("unchecked") public static void assertList(List<?> list, Object...expected) { + assertCollection(list, expected); + } + + /** + * Asserts the entries in a list matches the expected strings after they've been made readable. + */ + public static void assertSet(Set<?> list, Object...expected) { + assertCollection(list, expected); + } + + /** + * Asserts the entries in a list matches the expected strings after they've been made readable. + */ + @SuppressWarnings("unchecked") + public static void assertCollection(Collection<?> list, Object...expected) { if (expected.length == 1 && expected[0] instanceof String && s(expected[0]).contains(",")) expected = s(expected[0]).charAt(0) == '>' ? new String[]{s(expected[0]).substring(1)} : splita(s(expected[0])); if (list.size() != expected.length) fail(fs("Wrong list length. expected={0}, actual={1}", expected.length, list.size())); + List<?> list2 = toList(list); for (var i = 0; i < expected.length; i++) { - var x = list.get(i); + var x = list2.get(i); if (expected[i] instanceof String e) { if (ne(r(x), e)) fail(fs("Element at index {0} did not match. expected={1}, actual={2}", i, e, r(x))); @@ -290,7 +305,7 @@ public class TestUtils extends Utils2 { */ public static void assertMap(Map<?,?> o, String fields, String value) { if (o == null) throw new NullPointerException("Map was null"); - assertEquals(value, Utils.split(fields).stream().map(x -> TestUtils.getReadableEntry(o, x)).collect(joining(","))); + assertEquals(value, Utils.splitNested(fields).stream().map(x -> TestUtils.getReadableEntry(o, x)).collect(joining(","))); } /** @@ -300,7 +315,7 @@ public class TestUtils extends Utils2 { * @param values The comma-delimited list of values for each bean. */ @SuppressWarnings("rawtypes") - public static void assertBeans(Collection l, String fields, Object...values) { + public static void assertBeans(Collection l, String fields, String...values) { assertEquals(values.length, l.size(), ()->"Expected "+values.length+" rows but had actual " + l.size()); var r = 0; var f = Utils.splitNested(fields); @@ -356,7 +371,12 @@ public class TestUtils extends Utils2 { var f = (Field)null; var c = o.getClass(); var n = Character.toUpperCase(name.charAt(0)) + name.substring(1); - var m = Arrays.stream(c.getMethods()).filter(x -> TestUtils.isGetter(x, n)).filter(x -> x.getAnnotation(BeanIgnore.class) == null).findFirst().orElse(null); + var m = Arrays.stream(c.getMethods()).filter(x -> x.getName().equals("is"+n) && x.getParameterCount() == 0 && x.getAnnotation(BeanIgnore.class) == null).findFirst().orElse(null); + if (m != null) { + m.setAccessible(true); + return m.invoke(o); + } + m = Arrays.stream(c.getMethods()).filter(x -> x.getName().equals("get"+n) && x.getParameterCount() == 0 && x.getAnnotation(BeanIgnore.class) == null).findFirst().orElse(null); if (m != null) { m.setAccessible(true); return m.invoke(o); diff --git a/juneau-utest/src/test/java/org/apache/juneau/rest/Swagger_Test.java b/juneau-utest/src/test/java/org/apache/juneau/rest/Swagger_Test.java index 3d560437c..666837d57 100644 --- a/juneau-utest/src/test/java/org/apache/juneau/rest/Swagger_Test.java +++ b/juneau-utest/src/test/java/org/apache/juneau/rest/Swagger_Test.java @@ -253,22 +253,18 @@ class Swagger_Test extends SimpleTestBase { public static class B6 {} @Test void b06a_info_Swagger_title_localized() throws Exception { - var x = getSwagger(new B6()).getInfo(); - assertEquals("l-baz", x.getTitle()); - assertEquals("l-baz", x.getDescription()); - assertEquals("l-foo", x.getVersion()); - assertEquals("l-foo", x.getTermsOfService()); - assertJson(x.getContact(), "{name:'l-foo',url:'l-bar',email:'l-baz'}"); - assertJson(x.getLicense(), "{name:'l-foo',url:'l-bar'}"); + assertBean( + getSwagger(new B6()).getInfo(), + "title,description,version,termsOfService,contact{name,url,email},license{name,url}", + "l-baz,l-baz,l-foo,l-foo,{l-foo,l-bar,l-baz},{l-foo,l-bar}" + ); } @Test void b06b_info_Swagger_title_localized_withFile() throws Exception { - var x = getSwaggerWithFile(new B6()).getInfo(); - assertEquals("l-baz", x.getTitle()); - assertEquals("l-baz", x.getDescription()); - assertEquals("l-foo", x.getVersion()); - assertEquals("l-foo", x.getTermsOfService()); - assertJson(x.getContact(), "{name:'l-foo',url:'l-bar',email:'l-baz'}"); - assertJson(x.getLicense(), "{name:'l-foo',url:'l-bar'}"); + assertBean( + getSwaggerWithFile(new B6()).getInfo(), + "title,description,version,termsOfService,contact{name,url,email},license{name,url}", + "l-baz,l-baz,l-foo,l-foo,{l-foo,l-bar,l-baz},{l-foo,l-bar}" + ); } @Rest( @@ -280,14 +276,10 @@ class Swagger_Test extends SimpleTestBase { public static class B07 {} @Test void b07a_title_Swagger_title_only() throws Exception { - var x = getSwagger(new B07()).getInfo(); - assertEquals("c-title", x.getTitle()); - assertEquals("c-description", x.getDescription()); + assertBean(getSwagger(new B07()).getInfo(), "title,description", "c-title,c-description"); } @Test void b07b_title_Swagger_title_only_withFile() throws Exception { - var x = getSwaggerWithFile(new B07()).getInfo(); - assertEquals("c-title", x.getTitle()); - assertEquals("c-description", x.getDescription()); + assertBean(getSwaggerWithFile(new B07()).getInfo(), "title,description", "c-title,c-description"); } //------------------------------------------------------------------------------------------------------------------ @@ -298,12 +290,15 @@ class Swagger_Test extends SimpleTestBase { public static class C1 {} @Test void c01a_tags_default() throws Exception { - var x = getSwagger(new C1()); - assertEquals(null, x.getTags()); + assertNull(getSwagger(new C1()).getTags()); } @Test void c01b_tags_default_withFile() throws Exception { var x = getSwaggerWithFile(new C1()); - assertJson(x.getTags(), "[{name:'s-name',description:'s-description',externalDocs:{description:'s-description',url:'s-url'}}]"); + assertBeans( + x.getTags(), + "name,description,externalDocs{description,url}", + "s-name,s-description,{s-description,s-url}" + ); } // Tags in @ResourceSwagger(value) should override file. @@ -315,12 +310,18 @@ class Swagger_Test extends SimpleTestBase { public static class C2 {} @Test void c02a_tags_Swagger_value() throws Exception { - var x = getSwagger(new C2()); - assertJson(x.getTags(), "[{name:'a-name',description:'a-description',externalDocs:{description:'a-description',url:'a-url'}}]"); + assertBeans( + getSwagger(new C2()).getTags(), + "name,description,externalDocs{description,url}", + "a-name,a-description,{a-description,a-url}" + ); } @Test void c02b_tags_Swagger_value_withFile() throws Exception { - var x = getSwaggerWithFile(new C2()); - assertJson(x.getTags(), "[{name:'a-name',description:'a-description',externalDocs:{description:'a-description',url:'a-url'}}]"); + assertBeans( + getSwaggerWithFile(new C2()).getTags(), + "name,description,externalDocs{description,url}", + "a-name,a-description,{a-description,a-url}" + ); } // Tags in both @ResourceSwagger(value) and @ResourceSwagger(tags) should accumulate. @@ -333,12 +334,20 @@ class Swagger_Test extends SimpleTestBase { public static class C3 {} @Test void c03a_tags_Swagger_tags() throws Exception { - var x = getSwagger(new C3()); - assertJson(x.getTags(), "[{name:'a-name',description:'a-description',externalDocs:{description:'a-description',url:'a-url'}},{name:'b-name',description:'b-description',externalDocs:{description:'b-description',url:'b-url'}}]"); + assertBeans( + getSwagger(new C3()).getTags(), + "name,description,externalDocs{description,url}", + "a-name,a-description,{a-description,a-url}", + "b-name,b-description,{b-description,b-url}" + ); } @Test void c03b_tags_Swagger_tags_withFile() throws Exception { - var x = getSwaggerWithFile(new C3()); - assertJson(x.getTags(), "[{name:'a-name',description:'a-description',externalDocs:{description:'a-description',url:'a-url'}},{name:'b-name',description:'b-description',externalDocs:{description:'b-description',url:'b-url'}}]"); + assertBeans( + getSwaggerWithFile(new C3()).getTags(), + "name,description,externalDocs{description,url}", + "a-name,a-description,{a-description,a-url}", + "b-name,b-description,{b-description,b-url}" + ); } // Same as above but without [] outer characters. @@ -351,12 +360,20 @@ class Swagger_Test extends SimpleTestBase { public static class C4 {} @Test void c04a_tags_Swagger_tags() throws Exception { - var x = getSwagger(new C4()); - assertJson(x.getTags(), "[{name:'a-name',description:'a-description',externalDocs:{description:'a-description',url:'a-url'}},{name:'b-name',description:'b-description',externalDocs:{description:'b-description',url:'b-url'}}]"); + assertBeans( + getSwagger(new C4()).getTags(), + "name,description,externalDocs{description,url}", + "a-name,a-description,{a-description,a-url}", + "b-name,b-description,{b-description,b-url}" + ); } @Test void c04b_tags_Swagger_tags_withFile() throws Exception { - var x = getSwaggerWithFile(new C4()); - assertJson(x.getTags(), "[{name:'a-name',description:'a-description',externalDocs:{description:'a-description',url:'a-url'}},{name:'b-name',description:'b-description',externalDocs:{description:'b-description',url:'b-url'}}]"); + assertBeans( + getSwaggerWithFile(new C4()).getTags(), + "name,description,externalDocs{description,url}", + "a-name,a-description,{a-description,a-url}", + "b-name,b-description,{b-description,b-url}" + ); } // Tags in both Swagger.json and @ResourceSwagger(tags) should accumulate. @@ -368,12 +385,19 @@ class Swagger_Test extends SimpleTestBase { public static class C5 {} @Test void c05a_tags_Swagger_tags_only() throws Exception { - var x = getSwagger(new C5()); - assertJson(x.getTags(), "[{name:'b-name',description:'b-description',externalDocs:{description:'b-description',url:'b-url'}}]"); + assertBeans( + getSwagger(new C5()).getTags(), + "name,description,externalDocs{description,url}", + "b-name,b-description,{b-description,b-url}" + ); } @Test void c05b_tags_Swagger_tags_only_witFile() throws Exception { - var x = getSwaggerWithFile(new C5()); - assertJson(x.getTags(), "[{name:'s-name',description:'s-description',externalDocs:{description:'s-description',url:'s-url'}},{name:'b-name',description:'b-description',externalDocs:{description:'b-description',url:'b-url'}}]"); + assertBeans( + getSwaggerWithFile(new C5()).getTags(), + "name,description,externalDocs{description,url}", + "s-name,s-description,{s-description,s-url}", + "b-name,b-description,{b-description,b-url}" + ); } // Dup tag names should be overwritten @@ -388,12 +412,18 @@ class Swagger_Test extends SimpleTestBase { public static class C6 {} @Test void c06a_tags_Swagger_tags_dups() throws Exception { - var x = getSwagger(new C6()); - assertJson(x.getTags(), "[{name:'s-name',description:'c-description',externalDocs:{description:'c-description',url:'c-url'}}]"); + assertBeans( + getSwagger(new C6()).getTags(), + "name,description,externalDocs{description,url}", + "s-name,c-description,{c-description,c-url}" + ); } @Test void c06b_tags_Swagger_tags_dups_withFile() throws Exception { - var x = getSwaggerWithFile(new C6()); - assertJson(x.getTags(), "[{name:'s-name',description:'c-description',externalDocs:{description:'c-description',url:'c-url'}}]"); + assertBeans( + getSwaggerWithFile(new C6()).getTags(), + "name,description,externalDocs{description,url}", + "s-name,c-description,{c-description,c-url}" + ); } @Rest( @@ -406,12 +436,18 @@ class Swagger_Test extends SimpleTestBase { public static class C7 {} @Test void c07a_tags_Swagger_tags_localised() throws Exception { - var x = getSwagger(new C7()); - assertJson(x.getTags(), "[{name:'l-foo',description:'l-foo',externalDocs:{description:'l-foo',url:'l-foo'}}]"); + assertBeans( + getSwagger(new C7()).getTags(), + "name,description,externalDocs{description,url}", + "l-foo,l-foo,{l-foo,l-foo}" + ); } @Test void c07b_tags_Swagger_tags_localised_withFile() throws Exception { - var x = getSwaggerWithFile(new C7()); - assertJson(x.getTags(), "[{name:'l-foo',description:'l-foo',externalDocs:{description:'l-foo',url:'l-foo'}}]"); + assertBeans( + getSwaggerWithFile(new C7()).getTags(), + "name,description,externalDocs{description,url}", + "l-foo,l-foo,{l-foo,l-foo}" + ); } // Auto-detect tags defined on methods. @@ -422,12 +458,15 @@ class Swagger_Test extends SimpleTestBase { } @Test void c08a_tags_Swagger_tags_loose() throws Exception { - var x = getSwagger(new C8()); - assertJson(x.getTags(), "[{name:'foo'}]"); + assertBeans(getSwagger(new C8()).getTags(), "name", "foo"); } @Test void c08b_tags_Swagger_tags_loose_withFile() throws Exception { - var x = getSwaggerWithFile(new C8()); - assertJson(x.getTags(), "[{name:'s-name',description:'s-description',externalDocs:{description:'s-description',url:'s-url'}},{name:'foo'}]"); + assertBeans( + getSwaggerWithFile(new C8()).getTags(), + "name,description,externalDocs{description,url}", + "s-name,s-description,{s-description,s-url}", + "foo,null,null" + ); } // Comma-delimited list @@ -438,12 +477,16 @@ class Swagger_Test extends SimpleTestBase { } @Test void c09a_tags_Swagger_tags_loose_cdl() throws Exception { - var x = getSwagger(new C9()); - assertJson(x.getTags(), "[{name:'foo'},{name:'bar'}]"); + assertBeans(getSwagger(new C9()).getTags(), "name", "foo", "bar"); } @Test void c09b_tags_Swagger_tags_loose_cdl_withFile() throws Exception { - var x = getSwaggerWithFile(new C9()); - assertJson(x.getTags(), "[{name:'s-name',description:'s-description',externalDocs:{description:'s-description',url:'s-url'}},{name:'foo'},{name:'bar'}]"); + assertBeans( + getSwaggerWithFile(new C9()).getTags(), + "name,description,externalDocs{description,url}", + "s-name,s-description,{s-description,s-url}", + "foo,null,null", + "bar,null,null" + ); } // JsonList @@ -454,12 +497,16 @@ class Swagger_Test extends SimpleTestBase { } @Test void c10a_tags_Swagger_tags_loose_olist() throws Exception { - var x = getSwagger(new C10()); - assertJson(x.getTags(), "[{name:'foo'},{name:'bar'}]"); + assertBeans(getSwagger(new C10()).getTags(), "name", "foo", "bar"); } @Test void c10b_tags_Swagger_tags_loose_olist_withFile() throws Exception { - var x = getSwaggerWithFile(new C10()); - assertJson(x.getTags(), "[{name:'s-name',description:'s-description',externalDocs:{description:'s-description',url:'s-url'}},{name:'foo'},{name:'bar'}]"); + assertBeans( + getSwaggerWithFile(new C10()).getTags(), + "name,description,externalDocs{description,url}", + "s-name,s-description,{s-description,s-url}", + "foo,null,null", + "bar,null,null" + ); } // JsonList localized @@ -470,12 +517,16 @@ class Swagger_Test extends SimpleTestBase { } @Test void c11a_tags_Swagger_tags_loose_olist_localized() throws Exception { - var x = getSwagger(new C11()); - assertJson(x.getTags(), "[{name:'l-foo'},{name:'l-bar'}]"); + assertBeans(getSwagger(new C11()).getTags(), "name", "l-foo", "l-bar"); } @Test void c11b_tags_Swagger_tags_loose_olist_localized_withFile() throws Exception { - var x = getSwaggerWithFile(new C11()); - assertJson(x.getTags(), "[{name:'s-name',description:'s-description',externalDocs:{description:'s-description',url:'s-url'}},{name:'l-foo'},{name:'l-bar'}]"); + assertBeans( + getSwaggerWithFile(new C11()).getTags(), + "name,description,externalDocs{description,url}", + "s-name,s-description,{s-description,s-url}", + "l-foo,null,null", + "l-bar,null,null" + ); } // Comma-delimited list localized @@ -486,12 +537,16 @@ class Swagger_Test extends SimpleTestBase { } @Test void c12a_tags_Swagger_tags_loose_cdl_localized() throws Exception { - var x = getSwagger(new C12()); - assertJson(x.getTags(), "[{name:'l-foo'},{name:'l-bar'}]"); + assertBeans(getSwagger(new C12()).getTags(), "name", "l-foo", "l-bar"); } @Test void c12b_tags_Swagger_tags_loose_cdl_localized_withFile() throws Exception { - var x = getSwaggerWithFile(new C12()); - assertJson(x.getTags(), "[{name:'s-name',description:'s-description',externalDocs:{description:'s-description',url:'s-url'}},{name:'l-foo'},{name:'l-bar'}]"); + assertBeans( + getSwaggerWithFile(new C12()).getTags(), + "name,description,externalDocs{description,url}", + "s-name,s-description,{s-description,s-url}", + "l-foo,null,null", + "l-bar,null,null" + ); } //------------------------------------------------------------------------------------------------------------------ @@ -502,12 +557,10 @@ class Swagger_Test extends SimpleTestBase { public static class D1 {} @Test void d01a_externalDocs_default() throws Exception { - var x = getSwagger(new D1()).getExternalDocs(); - assertEquals(null, x); + assertNull(getSwagger(new D1()).getExternalDocs()); } @Test void d01b_externalDocs_default_withFile() throws Exception { - var x = getSwaggerWithFile(new D1()).getExternalDocs(); - assertJson(x, "{description:'s-description',url:'s-url'}"); + assertBean(getSwaggerWithFile(new D1()).getExternalDocs(), "description,url", "s-description,s-url"); } @@ -517,12 +570,10 @@ class Swagger_Test extends SimpleTestBase { public static class D2 {} @Test void d02a_externalDocs_Swagger_value() throws Exception { - var x = getSwagger(new D2()).getExternalDocs(); - assertJson(x, "{description:'a-description',url:'a-url'}"); + assertBean(getSwagger(new D2()).getExternalDocs(), "description,url", "a-description,a-url"); } @Test void d02b_externalDocs_Swagger_value_withFile() throws Exception { - var x = getSwaggerWithFile(new D2()).getExternalDocs(); - assertJson(x, "{description:'a-description',url:'a-url'}"); + assertBean(getSwaggerWithFile(new D2()).getExternalDocs(), "description,url", "a-description,a-url"); } @@ -535,12 +586,10 @@ class Swagger_Test extends SimpleTestBase { public static class D3 {} @Test void d03a_externalDocs_Swagger_externalDocs() throws Exception { - var x = getSwagger(new D3()).getExternalDocs(); - assertJson(x, "{description:'b-description',url:'b-url'}"); + assertBean(getSwagger(new D3()).getExternalDocs(), "description,url", "b-description,b-url"); } @Test void d03b_externalDocs_Swagger_externalDocs_withFile() throws Exception { - var x = getSwaggerWithFile(new D3()).getExternalDocs(); - assertJson(x, "{description:'b-description',url:'b-url'}"); + assertBean(getSwaggerWithFile(new D3()).getExternalDocs(), "description,url", "b-description,b-url"); } @Rest( @@ -709,14 +758,10 @@ class Swagger_Test extends SimpleTestBase { } @Test void e06a_operation_summary_RestOp() throws Exception { - var x = getSwagger(new E6()).getPaths().get("/path/{foo}").get("get"); - assertEquals("a-summary", x.getSummary()); - assertEquals("a-description", x.getDescription()); + assertBean(getSwagger(new E6()).getPaths().get("/path/{foo}").get("get"), "summary,description", "a-summary,a-description"); } @Test void e06b_operation_summary_RestOp_withFile() throws Exception { - var x = getSwaggerWithFile(new E6()).getPaths().get("/path/{foo}").get("get"); - assertEquals("a-summary", x.getSummary()); - assertEquals("a-description", x.getDescription()); + assertBean(getSwaggerWithFile(new E6()).getPaths().get("/path/{foo}").get("get"), "summary,description", "a-summary,a-description"); } @Rest( @@ -735,14 +780,10 @@ class Swagger_Test extends SimpleTestBase { } @Test void e07a_operation_summary_RestOp() throws Exception { - var x = getSwagger(new E7()).getPaths().get("/path/{foo}").get("get"); - assertEquals("d-summary", x.getSummary()); - assertEquals("d-description", x.getDescription()); + assertBean(getSwagger(new E7()).getPaths().get("/path/{foo}").get("get"), "summary,description", "d-summary,d-description"); } @Test void e07b_operation_summary_RestOp_withFile() throws Exception { - var x = getSwaggerWithFile(new E7()).getPaths().get("/path/{foo}").get("get"); - assertEquals("d-summary", x.getSummary()); - assertEquals("d-description", x.getDescription()); + assertBean(getSwaggerWithFile(new E7()).getPaths().get("/path/{foo}").get("get"), "summary,description", "d-summary,d-description"); } //------------------------------------------------------------------------------------------------------------------ @@ -759,8 +800,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void f01_operation_tags_default() throws Exception { - assertJson(getSwagger(new F1()).getPaths().get("/path/{foo}").get("get").getTags(), "null"); - assertJson(getSwaggerWithFile(new F1()).getPaths().get("/path/{foo}").get("get").getTags(), "['s-tag']"); + assertNull(getSwagger(new F1()).getPaths().get("/path/{foo}").get("get").getTags()); + assertSet(getSwaggerWithFile(new F1()).getPaths().get("/path/{foo}").get("get").getTags(), "s-tag"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}':{get:{tags:['a-tag']}}}")) @@ -772,8 +813,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void f02_operation_tags_swaggerOnClass() throws Exception { - assertJson(getSwagger(new F2()).getPaths().get("/path/{foo}").get("get").getTags(), "['a-tag']"); - assertJson(getSwaggerWithFile(new F2()).getPaths().get("/path/{foo}").get("get").getTags(), "['a-tag']"); + assertSet(getSwagger(new F2()).getPaths().get("/path/{foo}").get("get").getTags(), "a-tag"); + assertSet(getSwaggerWithFile(new F2()).getPaths().get("/path/{foo}").get("get").getTags(), "a-tag"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}':{get:{tags:['a-tag']}}}")) @@ -785,8 +826,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void f03_operation_tags_swaggerOnMethod() throws Exception { - assertJson(getSwagger(new F3()).getPaths().get("/path/{foo}").get("get").getTags(), "['b-tag']"); - assertJson(getSwaggerWithFile(new F3()).getPaths().get("/path/{foo}").get("get").getTags(), "['b-tag']"); + assertSet(getSwagger(new F3()).getPaths().get("/path/{foo}").get("get").getTags(), "b-tag"); + assertSet(getSwaggerWithFile(new F3()).getPaths().get("/path/{foo}").get("get").getTags(), "b-tag"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}':{get:{tags:['a-tag']}}}")) @@ -798,8 +839,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void f04_operation_tags_swaggerOnAnnotation() throws Exception { - assertJson(getSwagger(new F4()).getPaths().get("/path/{foo}").get("get").getTags(), "['c-tag-1','c-tag-2']"); - assertJson(getSwaggerWithFile(new F4()).getPaths().get("/path/{foo}").get("get").getTags(), "['c-tag-1','c-tag-2']"); + assertSet(getSwagger(new F4()).getPaths().get("/path/{foo}").get("get").getTags(), "c-tag-1", "c-tag-2"); + assertSet(getSwaggerWithFile(new F4()).getPaths().get("/path/{foo}").get("get").getTags(), "c-tag-1", "c-tag-2"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}':{get:{tags:['a-tag']}}}")) @@ -811,8 +852,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void f05_operation_tags_swaggerOnAnnotation() throws Exception { - assertJson(getSwagger(new F5()).getPaths().get("/path/{foo}").get("get").getTags(), "['c-tag-1','c-tag-2']"); - assertJson(getSwaggerWithFile(new F5()).getPaths().get("/path/{foo}").get("get").getTags(), "['c-tag-1','c-tag-2']"); + assertSet(getSwagger(new F5()).getPaths().get("/path/{foo}").get("get").getTags(), "c-tag-1", "c-tag-2"); + assertSet(getSwaggerWithFile(new F5()).getPaths().get("/path/{foo}").get("get").getTags(), "c-tag-1", "c-tag-2"); } @Rest(messages="BasicRestInfoProviderTest", swagger=@Swagger("paths:{'/path/{foo}':{get:{tags:'a-tags'}}}")) @@ -824,8 +865,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void f06_operation_tags_swaggerOnAnnotation_localized() throws Exception { - assertJson(getSwagger(new F6()).getPaths().get("/path/{foo}").get("get").getTags(), "['l-foo']"); - assertJson(getSwaggerWithFile(new F6()).getPaths().get("/path/{foo}").get("get").getTags(), "['l-foo']"); + assertSet(getSwagger(new F6()).getPaths().get("/path/{foo}").get("get").getTags(), "l-foo"); + assertSet(getSwaggerWithFile(new F6()).getPaths().get("/path/{foo}").get("get").getTags(), "l-foo"); } //------------------------------------------------------------------------------------------------------------------ @@ -842,8 +883,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void g01_operation_externalDocs_default() throws Exception { - assertJson(getSwagger(new G1()).getPaths().get("/path/{foo}").get("get").getExternalDocs(), "null"); - assertJson(getSwaggerWithFile(new G1()).getPaths().get("/path/{foo}").get("get").getExternalDocs(), "{description:'s-description',url:'s-url'}"); + assertNull(getSwagger(new G1()).getPaths().get("/path/{foo}").get("get").getExternalDocs()); + assertBean(getSwaggerWithFile(new G1()).getPaths().get("/path/{foo}").get("get").getExternalDocs(), "description,url", "s-description,s-url"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}':{get:{externalDocs:{description:'a-description',url:'a-url'}}}}")) @@ -855,8 +896,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void g02_operation_externalDocs_swaggerOnClass() throws Exception { - assertJson(getSwagger(new G2()).getPaths().get("/path/{foo}").get("get").getExternalDocs(), "{description:'a-description',url:'a-url'}"); - assertJson(getSwaggerWithFile(new G2()).getPaths().get("/path/{foo}").get("get").getExternalDocs(), "{description:'a-description',url:'a-url'}"); + assertBean(getSwagger(new G2()).getPaths().get("/path/{foo}").get("get").getExternalDocs(), "description,url", "a-description,a-url"); + assertBean(getSwaggerWithFile(new G2()).getPaths().get("/path/{foo}").get("get").getExternalDocs(), "description,url", "a-description,a-url"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}':{get:{externalDocs:{description:'a-description',url:'a-url'}}}}")) @@ -868,8 +909,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void g03_operation_externalDocs_swaggerOnMethod() throws Exception { - assertJson(getSwagger(new G3()).getPaths().get("/path/{foo}").get("get").getExternalDocs(), "{description:'b-description',url:'b-url'}"); - assertJson(getSwaggerWithFile(new G3()).getPaths().get("/path/{foo}").get("get").getExternalDocs(), "{description:'b-description',url:'b-url'}"); + assertBean(getSwagger(new G3()).getPaths().get("/path/{foo}").get("get").getExternalDocs(), "description,url", "b-description,b-url"); + assertBean(getSwaggerWithFile(new G3()).getPaths().get("/path/{foo}").get("get").getExternalDocs(), "description,url", "b-description,b-url"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}':{get:{externalDocs:{description:'a-description',url:'a-url'}}}}")) @@ -881,8 +922,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void g04_operation_externalDocs_swaggerOnAnnotation() throws Exception { - assertJson(getSwagger(new G4()).getPaths().get("/path/{foo}").get("get").getExternalDocs(), "{description:'c-description',url:'c-url'}"); - assertJson(getSwaggerWithFile(new G4()).getPaths().get("/path/{foo}").get("get").getExternalDocs(), "{description:'c-description',url:'c-url'}"); + assertBean(getSwagger(new G4()).getPaths().get("/path/{foo}").get("get").getExternalDocs(), "description,url", "c-description,c-url"); + assertBean(getSwaggerWithFile(new G4()).getPaths().get("/path/{foo}").get("get").getExternalDocs(), "description,url", "c-description,c-url"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}':{get:{externalDocs:{description:'a-description',url:'a-url'}}}}")) @@ -894,8 +935,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void g05_operation_externalDocs_swaggerOnAnnotation() throws Exception { - assertJson(getSwagger(new G5()).getPaths().get("/path/{foo}").get("get").getExternalDocs(), "{description:'d-description',url:'d-url'}"); - assertJson(getSwaggerWithFile(new G5()).getPaths().get("/path/{foo}").get("get").getExternalDocs(), "{description:'d-description',url:'d-url'}"); + assertBean(getSwagger(new G5()).getPaths().get("/path/{foo}").get("get").getExternalDocs(), "description,url", "d-description,d-url"); + assertBean(getSwaggerWithFile(new G5()).getPaths().get("/path/{foo}").get("get").getExternalDocs(), "description,url", "d-description,d-url"); } @Rest(messages="BasicRestInfoProviderTest", swagger=@Swagger("paths:{'/path/{foo}':{get:{externalDocs:{description:'a-description',url:'a-url'}}}}")) @@ -907,8 +948,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void g06_operation_externalDocs_swaggerOnAnnotation_localized() throws Exception { - assertJson(getSwagger(new G6()).getPaths().get("/path/{foo}").get("get").getExternalDocs(), "{description:'l-foo',url:'l-foo'}"); - assertJson(getSwaggerWithFile(new G6()).getPaths().get("/path/{foo}").get("get").getExternalDocs(), "{description:'l-foo',url:'l-foo'}"); + assertBean(getSwagger(new G6()).getPaths().get("/path/{foo}").get("get").getExternalDocs(), "description,url", "l-foo,l-foo"); + assertBean(getSwaggerWithFile(new G6()).getPaths().get("/path/{foo}").get("get").getExternalDocs(), "description,url", "l-foo,l-foo"); } //------------------------------------------------------------------------------------------------------------------ @@ -925,8 +966,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void h01_operation_consumes_default() throws Exception { - assertJson(getSwagger(new H1()).getPaths().get("/path/{foo}").get("get").getConsumes(), "null"); - assertJson(getSwaggerWithFile(new H1()).getPaths().get("/path/{foo}").get("get").getConsumes(), "['s-consumes']"); + assertNull(getSwagger(new H1()).getPaths().get("/path/{foo}").get("get").getConsumes()); + assertSet(getSwaggerWithFile(new H1()).getPaths().get("/path/{foo}").get("get").getConsumes(), "s-consumes"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}':{get:{consumes:['a-consumes']}}}")) @@ -938,8 +979,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void h02_operation_consumes_swaggerOnClass() throws Exception { - assertJson(getSwagger(new H2()).getPaths().get("/path/{foo}").get("get").getConsumes(), "['a-consumes']"); - assertJson(getSwaggerWithFile(new H2()).getPaths().get("/path/{foo}").get("get").getConsumes(), "['a-consumes']"); + assertSet(getSwagger(new H2()).getPaths().get("/path/{foo}").get("get").getConsumes(), "a-consumes"); + assertSet(getSwaggerWithFile(new H2()).getPaths().get("/path/{foo}").get("get").getConsumes(), "a-consumes"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}':{get:{consumes:['a-consumes']}}}")) @@ -951,8 +992,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void h03_operation_consumes_swaggerOnMethod() throws Exception { - assertJson(getSwagger(new H3()).getPaths().get("/path/{foo}").get("get").getConsumes(), "['b-consumes']"); - assertJson(getSwaggerWithFile(new H3()).getPaths().get("/path/{foo}").get("get").getConsumes(), "['b-consumes']"); + assertSet(getSwagger(new H3()).getPaths().get("/path/{foo}").get("get").getConsumes(), "b-consumes"); + assertSet(getSwaggerWithFile(new H3()).getPaths().get("/path/{foo}").get("get").getConsumes(), "b-consumes"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}':{get:{consumes:['a-consumes']}}}")) @@ -964,8 +1005,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void h04_operation_consumes_swaggerOnAnnotation() throws Exception { - assertJson(getSwagger(new H4()).getPaths().get("/path/{foo}").get("get").getConsumes(), "['c-consumes-1','c-consumes-2']"); - assertJson(getSwaggerWithFile(new H4()).getPaths().get("/path/{foo}").get("get").getConsumes(), "['c-consumes-1','c-consumes-2']"); + assertSet(getSwagger(new H4()).getPaths().get("/path/{foo}").get("get").getConsumes(), "c-consumes-1", "c-consumes-2"); + assertSet(getSwaggerWithFile(new H4()).getPaths().get("/path/{foo}").get("get").getConsumes(), "c-consumes-1", "c-consumes-2"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}':{get:{consumes:['a-consumes']}}}")) @@ -977,8 +1018,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void h05_operation_consumes_swaggerOnAnnotation() throws Exception { - assertJson(getSwagger(new H5()).getPaths().get("/path/{foo}").get("get").getConsumes(), "['c-consumes-1','c-consumes-2']"); - assertJson(getSwaggerWithFile(new H5()).getPaths().get("/path/{foo}").get("get").getConsumes(), "['c-consumes-1','c-consumes-2']"); + assertSet(getSwagger(new H5()).getPaths().get("/path/{foo}").get("get").getConsumes(), "c-consumes-1", "c-consumes-2"); + assertSet(getSwaggerWithFile(new H5()).getPaths().get("/path/{foo}").get("get").getConsumes(), "c-consumes-1", "c-consumes-2"); } @Rest(messages="BasicRestInfoProviderTest", swagger=@Swagger("paths:{'/path/{foo}':{get:{consumes:['a-consumes']}}}")) @@ -990,8 +1031,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void h06_operation_consumes_swaggerOnAnnotation_localized() throws Exception { - assertJson(getSwagger(new H6()).getPaths().get("/path/{foo}").get("get").getConsumes(), "['l-foo']"); - assertJson(getSwaggerWithFile(new H6()).getPaths().get("/path/{foo}").get("get").getConsumes(), "['l-foo']"); + assertSet(getSwagger(new H6()).getPaths().get("/path/{foo}").get("get").getConsumes(), "l-foo"); + assertSet(getSwaggerWithFile(new H6()).getPaths().get("/path/{foo}").get("get").getConsumes(), "l-foo"); } @Rest(parsers={JsonParser.class}) @@ -1003,8 +1044,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void h07_operation_consumes_parsersOnClass() throws Exception { - assertJson(getSwagger(new H7()).getPaths().get("/path2/{foo}").get("put").getConsumes(), "null"); - assertJson(getSwaggerWithFile(new H7()).getPaths().get("/path2/{foo}").get("put").getConsumes(), "null"); + assertNull(getSwagger(new H7()).getPaths().get("/path2/{foo}").get("put").getConsumes()); + assertNull(getSwaggerWithFile(new H7()).getPaths().get("/path2/{foo}").get("put").getConsumes()); } @Rest(parsers={JsonParser.class}) @@ -1020,8 +1061,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void h08_operation_consumes_parsersOnClassAndMethod() throws Exception { - assertJson(getSwagger(new H8()).getPaths().get("/path2/{foo}").get("put").getConsumes(), "['text/xml','application/xml']"); - assertJson(getSwaggerWithFile(new H8()).getPaths().get("/path2/{foo}").get("put").getConsumes(), "['text/xml','application/xml']"); + assertSet(getSwagger(new H8()).getPaths().get("/path2/{foo}").get("put").getConsumes(), "text/xml", "application/xml"); + assertSet(getSwaggerWithFile(new H8()).getPaths().get("/path2/{foo}").get("put").getConsumes(), "text/xml", "application/xml"); } @Rest(parsers={JsonParser.class},swagger=@Swagger("paths:{'/path2/{foo}':{put:{consumes:['a-consumes']}}}")) @@ -1033,8 +1074,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void h09_operation_consumes_parsersOnClassAndMethodWithSwagger() throws Exception { - assertJson(getSwagger(new H9()).getPaths().get("/path2/{foo}").get("put").getConsumes(), "['a-consumes']"); - assertJson(getSwaggerWithFile(new H9()).getPaths().get("/path2/{foo}").get("put").getConsumes(), "['a-consumes']"); + assertSet(getSwagger(new H9()).getPaths().get("/path2/{foo}").get("put").getConsumes(), "a-consumes"); + assertSet(getSwaggerWithFile(new H9()).getPaths().get("/path2/{foo}").get("put").getConsumes(), "a-consumes"); } //------------------------------------------------------------------------------------------------------------------ @@ -1051,8 +1092,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void i01_operation_produces_default() throws Exception { - assertJson(getSwagger(new I1()).getPaths().get("/path/{foo}").get("get").getProduces(), "null"); - assertJson(getSwaggerWithFile(new I1()).getPaths().get("/path/{foo}").get("get").getProduces(), "['s-produces']"); + assertNull(getSwagger(new I1()).getPaths().get("/path/{foo}").get("get").getProduces()); + assertSet(getSwaggerWithFile(new I1()).getPaths().get("/path/{foo}").get("get").getProduces(), "s-produces"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}':{get:{produces:['a-produces']}}}")) @@ -1064,8 +1105,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void i02_operation_produces_swaggerOnClass() throws Exception { - assertJson(getSwagger(new I2()).getPaths().get("/path/{foo}").get("get").getProduces(), "['a-produces']"); - assertJson(getSwaggerWithFile(new I2()).getPaths().get("/path/{foo}").get("get").getProduces(), "['a-produces']"); + assertSet(getSwagger(new I2()).getPaths().get("/path/{foo}").get("get").getProduces(), "a-produces"); + assertSet(getSwaggerWithFile(new I2()).getPaths().get("/path/{foo}").get("get").getProduces(), "a-produces"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}':{get:{produces:['a-produces']}}}")) @@ -1077,8 +1118,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void i03_operation_produces_swaggerOnMethod() throws Exception { - assertJson(getSwagger(new I3()).getPaths().get("/path/{foo}").get("get").getProduces(), "['b-produces']"); - assertJson(getSwaggerWithFile(new I3()).getPaths().get("/path/{foo}").get("get").getProduces(), "['b-produces']"); + assertSet(getSwagger(new I3()).getPaths().get("/path/{foo}").get("get").getProduces(), "b-produces"); + assertSet(getSwaggerWithFile(new I3()).getPaths().get("/path/{foo}").get("get").getProduces(), "b-produces"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}':{get:{produces:['a-produces']}}}")) @@ -1090,8 +1131,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void i04_operation_produces_swaggerOnAnnotation() throws Exception { - assertJson(getSwagger(new I4()).getPaths().get("/path/{foo}").get("get").getProduces(), "['c-produces-1','c-produces-2']"); - assertJson(getSwaggerWithFile(new I4()).getPaths().get("/path/{foo}").get("get").getProduces(), "['c-produces-1','c-produces-2']"); + assertSet(getSwagger(new I4()).getPaths().get("/path/{foo}").get("get").getProduces(), "c-produces-1", "c-produces-2"); + assertSet(getSwaggerWithFile(new I4()).getPaths().get("/path/{foo}").get("get").getProduces(), "c-produces-1", "c-produces-2"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}':{get:{produces:['a-produces']}}}")) @@ -1103,8 +1144,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void i05_operation_produces_swaggerOnAnnotation() throws Exception { - assertJson(getSwagger(new I5()).getPaths().get("/path/{foo}").get("get").getProduces(), "['c-produces-1','c-produces-2']"); - assertJson(getSwaggerWithFile(new I5()).getPaths().get("/path/{foo}").get("get").getProduces(), "['c-produces-1','c-produces-2']"); + assertSet(getSwagger(new I5()).getPaths().get("/path/{foo}").get("get").getProduces(), "c-produces-1", "c-produces-2"); + assertSet(getSwaggerWithFile(new I5()).getPaths().get("/path/{foo}").get("get").getProduces(), "c-produces-1", "c-produces-2"); } @Rest(messages="BasicRestInfoProviderTest", swagger=@Swagger("paths:{'/path/{foo}':{get:{produces:['a-produces']}}}")) @@ -1116,8 +1157,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void i06_operation_produces_swaggerOnAnnotation_localized() throws Exception { - assertJson(getSwagger(new I6()).getPaths().get("/path/{foo}").get("get").getProduces(), "['l-foo']"); - assertJson(getSwaggerWithFile(new I6()).getPaths().get("/path/{foo}").get("get").getProduces(), "['l-foo']"); + assertSet(getSwagger(new I6()).getPaths().get("/path/{foo}").get("get").getProduces(), "l-foo"); + assertSet(getSwaggerWithFile(new I6()).getPaths().get("/path/{foo}").get("get").getProduces(), "l-foo"); } @Rest(serializers={JsonSerializer.class}) @@ -1129,8 +1170,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void i07_operation_produces_serializersOnClass() throws Exception { - assertJson(getSwagger(new I7()).getPaths().get("/path2/{foo}").get("put").getProduces(), "null"); - assertJson(getSwaggerWithFile(new I7()).getPaths().get("/path2/{foo}").get("put").getProduces(), "null"); + assertNull(getSwagger(new I7()).getPaths().get("/path2/{foo}").get("put").getProduces()); + assertNull(getSwaggerWithFile(new I7()).getPaths().get("/path2/{foo}").get("put").getProduces()); } @Rest(serializers={JsonSerializer.class}) @@ -1146,8 +1187,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void i08_operation_produces_serializersOnClassAndMethod() throws Exception { - assertJson(getSwagger(new I8()).getPaths().get("/path2/{foo}").get("put").getProduces(), "['text/xml']"); - assertJson(getSwaggerWithFile(new I8()).getPaths().get("/path2/{foo}").get("put").getProduces(), "['text/xml']"); + assertSet(getSwagger(new I8()).getPaths().get("/path2/{foo}").get("put").getProduces(), "text/xml"); + assertSet(getSwaggerWithFile(new I8()).getPaths().get("/path2/{foo}").get("put").getProduces(), "text/xml"); } @Rest(serializers={JsonSerializer.class},swagger=@Swagger("paths:{'/path2/{foo}':{put:{produces:['a-produces']}}}")) @@ -1159,8 +1200,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void i09_operation_produces_serializersOnClassAndMethodWithSwagger() throws Exception { - assertJson(getSwagger(new I9()).getPaths().get("/path2/{foo}").get("put").getProduces(), "['a-produces']"); - assertJson(getSwaggerWithFile(new I9()).getPaths().get("/path2/{foo}").get("put").getProduces(), "['a-produces']"); + assertSet(getSwagger(new I9()).getPaths().get("/path2/{foo}").get("put").getProduces(), "a-produces"); + assertSet(getSwaggerWithFile(new I9()).getPaths().get("/path2/{foo}").get("put").getProduces(), "a-produces"); } //------------------------------------------------------------------------------------------------------------------ @@ -1177,8 +1218,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void j01_operation_deprecated_Deprecated() throws Exception { - assertJson(getSwagger(new J1()).getPaths().get("/path2/{foo}").get("get").getDeprecated(), "true"); - assertJson(getSwaggerWithFile(new J1()).getPaths().get("/path2/{foo}").get("get").getDeprecated(), "true"); + assertTrue(getSwagger(new J1()).getPaths().get("/path2/{foo}").get("get").getDeprecated()); + assertTrue(getSwaggerWithFile(new J1()).getPaths().get("/path2/{foo}").get("get").getDeprecated()); } @Rest @@ -1191,8 +1232,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void j02_operation_deprecated_Deprecated() throws Exception { - assertJson(getSwagger(new J2()).getPaths().get("/path2/{foo}").get("get").getDeprecated(), "true"); // NOSONAR - assertJson(getSwaggerWithFile(new J2()).getPaths().get("/path2/{foo}").get("get").getDeprecated(), "true"); // NOSONAR + assertTrue(getSwagger(new J2()).getPaths().get("/path2/{foo}").get("get").getDeprecated()); // NOSONAR + assertTrue(getSwaggerWithFile(new J2()).getPaths().get("/path2/{foo}").get("get").getDeprecated()); // NOSONAR } //------------------------------------------------------------------------------------------------------------------ @@ -1208,32 +1249,18 @@ class Swagger_Test extends SimpleTestBase { } @Test void k01a_query_type_default() throws Exception { - var x = getSwagger(new K1()).getPaths().get("/path/{foo}/query").get("get").getParameter("query", "foo"); assertBean( - x, + getSwagger(new K1()).getPaths().get("/path/{foo}/query").get("get").getParameter("query", "foo"), "type,description,required,allowEmptyValue,exclusiveMaximum,exclusiveMinimum,uniqueItems,format,collectionFormat,pattern,maximum,minimum,multipleOf,maxLength,minLength,maxItems,minItems", "object,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null" ); } @Test void k01b_query_type_default_withFile() throws Exception { - var x = getSwaggerWithFile(new K1()).getPaths().get("/path/{foo}/query").get("get").getParameter("query", "foo"); - assertEquals("string", x.getType()); - assertEquals("s-description", x.getDescription()); - assertJson(x.getRequired(), "true"); - assertJson(x.getAllowEmptyValue(), "true"); - assertJson(x.getExclusiveMaximum(), "true"); - assertJson(x.getExclusiveMinimum(), "true"); - assertJson(x.getUniqueItems(), "true"); - assertEquals("s-format", x.getFormat()); - assertEquals("s-collectionFormat", x.getCollectionFormat()); - assertEquals("s-pattern", x.getPattern()); - assertJson(x.getMaximum(), "1.0"); - assertJson(x.getMinimum(), "1.0"); - assertJson(x.getMultipleOf(), "1.0"); - assertJson(x.getMaxLength(), "1"); - assertJson(x.getMinLength(), "1"); - assertJson(x.getMaxItems(), "1"); - assertJson(x.getMinItems(), "1"); + assertBean( + getSwaggerWithFile(new K1()).getPaths().get("/path/{foo}/query").get("get").getParameter("query", "foo"), + "type,description,required,allowEmptyValue,exclusiveMaximum,exclusiveMinimum,uniqueItems,format,collectionFormat,pattern,maximum,minimum,multipleOf,maxLength,minLength,maxItems,minItems", + "string,s-description,true,true,true,true,true,s-format,s-collectionFormat,s-pattern,1.0,1.0,1.0,1,1,1,1" + ); } @Rest( @@ -1268,44 +1295,18 @@ class Swagger_Test extends SimpleTestBase { } @Test void k02a_query_type_swaggerOnClass() throws Exception { - var x = getSwagger(new K2()).getPaths().get("/path/{foo}/query").get("get").getParameter("query", "foo"); - assertEquals("int32", x.getType()); - assertEquals("a-description", x.getDescription()); - assertJson(x.getRequired(), "false"); - assertJson(x.getAllowEmptyValue(), "false"); - assertJson(x.getExclusiveMaximum(), "false"); - assertJson(x.getExclusiveMinimum(), "false"); - assertJson(x.getUniqueItems(), "false"); - assertEquals("a-format", x.getFormat()); - assertEquals("a-collectionFormat", x.getCollectionFormat()); - assertEquals("a-pattern", x.getPattern()); - assertJson(x.getMaximum(), "2.0"); - assertJson(x.getMinimum(), "2.0"); - assertJson(x.getMultipleOf(), "2.0"); - assertJson(x.getMaxLength(), "2"); - assertJson(x.getMinLength(), "2"); - assertJson(x.getMaxItems(), "2"); - assertJson(x.getMinItems(), "2"); + assertBean( + getSwagger(new K2()).getPaths().get("/path/{foo}/query").get("get").getParameter("query", "foo"), + "type,description,required,allowEmptyValue,exclusiveMaximum,exclusiveMinimum,uniqueItems,format,collectionFormat,pattern,maximum,minimum,multipleOf,maxLength,minLength,maxItems,minItems", + "int32,a-description,false,false,false,false,false,a-format,a-collectionFormat,a-pattern,2.0,2.0,2.0,2,2,2,2" + ); } @Test void k02b_query_type_swaggerOnClass_withFile() throws Exception { - var x = getSwaggerWithFile(new K2()).getPaths().get("/path/{foo}/query").get("get").getParameter("query", "foo"); - assertEquals("int32", x.getType()); - assertEquals("a-description", x.getDescription()); - assertJson(x.getRequired(), "false"); - assertJson(x.getAllowEmptyValue(), "false"); - assertJson(x.getExclusiveMaximum(), "false"); - assertJson(x.getExclusiveMinimum(), "false"); - assertJson(x.getUniqueItems(), "false"); - assertEquals("a-format", x.getFormat()); - assertEquals("a-collectionFormat", x.getCollectionFormat()); - assertEquals("a-pattern", x.getPattern()); - assertJson(x.getMaximum(), "2.0"); - assertJson(x.getMinimum(), "2.0"); - assertJson(x.getMultipleOf(), "2.0"); - assertJson(x.getMaxLength(), "2"); - assertJson(x.getMinLength(), "2"); - assertJson(x.getMaxItems(), "2"); - assertJson(x.getMinItems(), "2"); + assertBean( + getSwaggerWithFile(new K2()).getPaths().get("/path/{foo}/query").get("get").getParameter("query", "foo"), + "type,description,required,allowEmptyValue,exclusiveMaximum,exclusiveMinimum,uniqueItems,format,collectionFormat,pattern,maximum,minimum,multipleOf,maxLength,minLength,maxItems,minItems", + "int32,a-description,false,false,false,false,false,a-format,a-collectionFormat,a-pattern,2.0,2.0,2.0,2,2,2,2" + ); } @Rest( @@ -1364,44 +1365,18 @@ class Swagger_Test extends SimpleTestBase { } @Test void k03a_query_type_swaggerOnMethod() throws Exception { - var x = getSwagger(new K3()).getPaths().get("/path/{foo}/query").get("get").getParameter("query", "foo"); - assertEquals("int64", x.getType()); - assertEquals("b-description", x.getDescription()); - assertJson(x.getRequired(), "true"); - assertJson(x.getAllowEmptyValue(), "true"); - assertJson(x.getExclusiveMaximum(), "true"); - assertJson(x.getExclusiveMinimum(), "true"); - assertJson(x.getUniqueItems(), "true"); - assertEquals("b-format", x.getFormat()); - assertEquals("b-collectionFormat", x.getCollectionFormat()); - assertEquals("b-pattern", x.getPattern()); - assertJson(x.getMaximum(), "3.0"); - assertJson(x.getMinimum(), "3.0"); - assertJson(x.getMultipleOf(), "3.0"); - assertJson(x.getMaxLength(), "3"); - assertJson(x.getMinLength(), "3"); - assertJson(x.getMaxItems(), "3"); - assertJson(x.getMinItems(), "3"); + assertBean( + getSwagger(new K3()).getPaths().get("/path/{foo}/query").get("get").getParameter("query", "foo"), + "type,description,required,allowEmptyValue,exclusiveMaximum,exclusiveMinimum,uniqueItems,format,collectionFormat,pattern,maximum,minimum,multipleOf,maxLength,minLength,maxItems,minItems", + "int64,b-description,true,true,true,true,true,b-format,b-collectionFormat,b-pattern,3.0,3.0,3.0,3,3,3,3" + ); } @Test void k03b_query_type_swaggerOnMethod_withFile() throws Exception { - var x = getSwaggerWithFile(new K3()).getPaths().get("/path/{foo}/query").get("get").getParameter("query", "foo"); - assertEquals("int64", x.getType()); - assertEquals("b-description", x.getDescription()); - assertJson(x.getRequired(), "true"); - assertJson(x.getAllowEmptyValue(), "true"); - assertJson(x.getExclusiveMaximum(), "true"); - assertJson(x.getExclusiveMinimum(), "true"); - assertJson(x.getUniqueItems(), "true"); - assertEquals("b-format", x.getFormat()); - assertEquals("b-collectionFormat", x.getCollectionFormat()); - assertEquals("b-pattern", x.getPattern()); - assertJson(x.getMaximum(), "3.0"); - assertJson(x.getMinimum(), "3.0"); - assertJson(x.getMultipleOf(), "3.0"); - assertJson(x.getMaxLength(), "3"); - assertJson(x.getMinLength(), "3"); - assertJson(x.getMaxItems(), "3"); - assertJson(x.getMinItems(), "3"); + assertBean( + getSwaggerWithFile(new K3()).getPaths().get("/path/{foo}/query").get("get").getParameter("query", "foo"), + "type,description,required,allowEmptyValue,exclusiveMaximum,exclusiveMinimum,uniqueItems,format,collectionFormat,pattern,maximum,minimum,multipleOf,maxLength,minLength,maxItems,minItems", + "int64,b-description,true,true,true,true,true,b-format,b-collectionFormat,b-pattern,3.0,3.0,3.0,3,3,3,3" + ); } //------------------------------------------------------------------------------------------------------------------ @@ -1429,8 +1404,16 @@ class Swagger_Test extends SimpleTestBase { } @Test void n01_query_schema_default() throws Exception { - assertJson(getSwagger(new N1()).getPaths().get("/path/{foo}/query").get("get").getParameter("query","foo").getSchema(), "{properties:{a:{format:'int32',type:'integer'}}}"); - assertJson(getSwaggerWithFile(new N1()).getPaths().get("/path/{foo}/query").get("get").getParameter("query","foo").getSchema(), "{'$ref':'#/definitions/Foo'}"); + assertBean( + getSwagger(new N1()).getPaths().get("/path/{foo}/query").get("get").getParameter("query","foo").getSchema(), + "properties{a{format,type}}", + "{{int32,integer}}" + ); + assertBean( + getSwaggerWithFile(new N1()).getPaths().get("/path/{foo}/query").get("get").getParameter("query","foo").getSchema(), + "ref", + "#/definitions/Foo" + ); } @Rest(swagger=@Swagger("paths:{'/path/{foo}/query':{get:{parameters:[{in:'query',name:'foo',schema:{$ref:'b'}}]}}}")) @@ -1442,8 +1425,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void n02_query_schema_swaggerOnClass() throws Exception { - assertJson(getSwagger(new N2()).getPaths().get("/path/{foo}/query").get("get").getParameter("query","foo").getSchema(), "{'$ref':'b'}"); - assertJson(getSwaggerWithFile(new N2()).getPaths().get("/path/{foo}/query").get("get").getParameter("query","foo").getSchema(), "{'$ref':'b'}"); + assertBean(getSwagger(new N2()).getPaths().get("/path/{foo}/query").get("get").getParameter("query","foo").getSchema(), "ref", "b"); + assertBean(getSwaggerWithFile(new N2()).getPaths().get("/path/{foo}/query").get("get").getParameter("query","foo").getSchema(), "ref", "b"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}/query':{get:{parameters:[{in:'query',name:'foo',schema:{$ref:'b'}}]}}}")) @@ -1456,8 +1439,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void n03_query_schema_swaggerOnMethnt() throws Exception { - assertJson(getSwagger(new N3()).getPaths().get("/path/{foo}/query").get("get").getParameter("query","foo").getSchema(), "{'$ref':'c'}"); - assertJson(getSwaggerWithFile(new N3()).getPaths().get("/path/{foo}/query").get("get").getParameter("query","foo").getSchema(), "{'$ref':'c'}"); + assertBean(getSwagger(new N3()).getPaths().get("/path/{foo}/query").get("get").getParameter("query","foo").getSchema(), "ref", "c"); + assertBean(getSwaggerWithFile(new N3()).getPaths().get("/path/{foo}/query").get("get").getParameter("query","foo").getSchema(), "ref", "c"); } //------------------------------------------------------------------------------------------------------------------ @@ -1480,12 +1463,12 @@ class Swagger_Test extends SimpleTestBase { } @Test void o01a_responses_100_description_default() throws Exception { - assertEquals("Continue", getSwagger(new O1a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getDescription()); - assertEquals("s-100-description", getSwaggerWithFile(new O1a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getDescription()); + assertBean(getSwagger(new O1a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100), "description", "Continue"); + assertBean(getSwaggerWithFile(new O1a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100), "description", "s-100-description"); } @Test void o01b_responses_100_description_default() throws Exception { - assertEquals("Continue", getSwagger(new O1b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getDescription()); - assertEquals("s-100-description", getSwaggerWithFile(new O1b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getDescription()); + assertBean(getSwagger(new O1b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100), "description", "Continue"); + assertBean(getSwaggerWithFile(new O1b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100), "description", "s-100-description"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}/responses/100':{get:{responses:{100:{description:'a-100-description'}}}}}")) @@ -1495,8 +1478,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void o02_response_100_description_swaggerOnClass() throws Exception { - assertEquals("a-100-description", getSwagger(new O2()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getDescription()); - assertEquals("a-100-description", getSwaggerWithFile(new O2()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getDescription()); + assertBean(getSwagger(new O2()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100), "description", "a-100-description"); + assertBean(getSwaggerWithFile(new O2()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100), "description", "a-100-description"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}/responses/100':{get:{responses:{100:{description:'a-100-description'}}}}}")) @@ -1506,8 +1489,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void o03_response_100_description_swaggerOnMethod() throws Exception { - assertEquals("b-100-description", getSwagger(new O3()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getDescription()); - assertEquals("b-100-description", getSwaggerWithFile(new O3()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getDescription()); + assertBean(getSwagger(new O3()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100), "description", "b-100-description"); + assertBean(getSwaggerWithFile(new O3()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100), "description", "b-100-description"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}/responses/100':{get:{responses:{100:{description:'a-100-description'}}}}}")) @@ -1524,12 +1507,12 @@ class Swagger_Test extends SimpleTestBase { public static class O4c {} @Test void o04a_response_100_description_swaggerOnAnnotation() throws Exception { - assertEquals("c-100-description", getSwagger(new O4a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getDescription()); - assertEquals("c-100-description", getSwaggerWithFile(new O4a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getDescription()); + assertBean(getSwagger(new O4a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100), "description", "c-100-description"); + assertBean(getSwaggerWithFile(new O4a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100), "description", "c-100-description"); } @Test void o04b_response_100_description_swaggerOnAnnotation() throws Exception { - assertEquals("c-100-description", getSwagger(new O4b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getDescription()); - assertEquals("c-100-description", getSwaggerWithFile(new O4b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getDescription()); + assertBean(getSwagger(new O4b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100), "description", "c-100-description"); + assertBean(getSwaggerWithFile(new O4b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100), "description", "c-100-description"); } @Rest(messages="BasicRestInfoProviderTest", swagger=@Swagger("paths:{'/path/{foo}/responses/100':{get:{responses:{100:{description:'a-100-description'}}}}}")) @@ -1546,12 +1529,12 @@ class Swagger_Test extends SimpleTestBase { public static class O5c {} @Test void o05a_response_100_description_swaggerOnAnnotation_localized() throws Exception { - assertEquals("l-foo", getSwagger(new O5a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getDescription()); - assertEquals("l-foo", getSwaggerWithFile(new O5a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getDescription()); + assertBean(getSwagger(new O5a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100), "description", "l-foo"); + assertBean(getSwaggerWithFile(new O5a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100), "description", "l-foo"); } @Test void o05b_response_100_description_swaggerOnAnnotation_localized() throws Exception { - assertEquals("l-foo", getSwagger(new O5b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getDescription()); - assertEquals("l-foo", getSwaggerWithFile(new O5b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getDescription()); + assertBean(getSwagger(new O5b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100), "description", "l-foo"); + assertBean(getSwaggerWithFile(new O5b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100), "description", "l-foo"); } //------------------------------------------------------------------------------------------------------------------ @@ -1574,12 +1557,12 @@ class Swagger_Test extends SimpleTestBase { } @Test void p01a_responses_100_headers_default() throws Exception { - assertEquals(null, getSwagger(new P1a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders()); - assertJson(getSwaggerWithFile(new P1a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "{'X-Foo':{description:'s-description',type:'integer',format:'int32'}}"); + assertNull(getSwagger(new P1a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders()); + assertMap(getSwaggerWithFile(new P1a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "X-Foo{description,type,format}", "{s-description,integer,int32}"); } @Test void p01b_responses_100_headers_default() throws Exception { - assertEquals(null, getSwagger(new P1b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders()); - assertJson(getSwaggerWithFile(new P1b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "{'X-Foo':{description:'s-description',type:'integer',format:'int32'}}"); + assertNull(getSwagger(new P1b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders()); + assertMap(getSwaggerWithFile(new P1b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "X-Foo{description,type,format}", "{s-description,integer,int32}"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}/responses/100':{get:{responses:{100:{headers:{'X-Foo':{description:'b-description',type:'integer',format:'int32'}}}}}}}")) @@ -1591,8 +1574,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void p02_response_100_headers_swaggerOnClass() throws Exception { - assertJson(getSwagger(new P2()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "{'X-Foo':{description:'b-description',type:'integer',format:'int32'}}"); - assertJson(getSwaggerWithFile(new P2()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "{'X-Foo':{description:'b-description',type:'integer',format:'int32'}}"); + assertMap(getSwagger(new P2()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "X-Foo{description,type,format}", "{b-description,integer,int32}"); + assertMap(getSwaggerWithFile(new P2()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "X-Foo{description,type,format}", "{b-description,integer,int32}"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}/responses/100':{get:{responses:{100:{headers:{'X-Foo':{description:'b-description',type:'integer',format:'int32'}}}}}}}")) @@ -1604,8 +1587,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void p03_response_100_headers_swaggerOnMethod() throws Exception { - assertJson(getSwagger(new P3()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "{'X-Foo':{description:'c-description',type:'integer',format:'int32'}}"); - assertJson(getSwaggerWithFile(new P3()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "{'X-Foo':{description:'c-description',type:'integer',format:'int32'}}"); + assertMap(getSwagger(new P3()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "X-Foo{description,type,format}", "{c-description,integer,int32}"); + assertMap(getSwaggerWithFile(new P3()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "X-Foo{description,type,format}", "{c-description,integer,int32}"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}/responses/100':{get:{responses:{100:{headers:{'X-Foo':{description:'b-description',type:'integer',format:'int32'}}}}}}}")) @@ -1622,12 +1605,12 @@ class Swagger_Test extends SimpleTestBase { public static class P4c {} @Test void p04a_response_100_headers_swaggerOnAnnotation() throws Exception { - assertJson(getSwagger(new P4a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "{'X-Foo':{description:'d-description',type:'integer',format:'int32'}}"); - assertJson(getSwaggerWithFile(new P4a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "{'X-Foo':{description:'d-description',type:'integer',format:'int32'}}"); + assertMap(getSwagger(new P4a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "X-Foo{description,type,format}", "{d-description,integer,int32}"); + assertMap(getSwaggerWithFile(new P4a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "X-Foo{description,type,format}", "{d-description,integer,int32}"); } @Test void p04b_response_100_headers_swaggerOnAnnotation() throws Exception { - assertJson(getSwagger(new P4b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "{'X-Foo':{description:'d-description',type:'integer',format:'int32'}}"); - assertJson(getSwaggerWithFile(new P4b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "{'X-Foo':{description:'d-description',type:'integer',format:'int32'}}"); + assertMap(getSwagger(new P4b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "X-Foo{description,type,format}", "{d-description,integer,int32}"); + assertMap(getSwaggerWithFile(new P4b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "X-Foo{description,type,format}", "{d-description,integer,int32}"); } @Rest(messages="BasicRestInfoProviderTest", swagger=@Swagger("paths:{'/path/{foo}/responses/100':{get:{responses:{100:{headers:{'X-Foo':{description:'b-description',type:'integer',format:'int32'}}}}}}}")) @@ -1644,12 +1627,12 @@ class Swagger_Test extends SimpleTestBase { public static class P5c {} @Test void p05a_response_100_headers_swaggerOnAnnotation_localized() throws Exception { - assertJson(getSwagger(new P5a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "{'X-Foo':{description:'l-foo',type:'integer',format:'int32'}}"); - assertJson(getSwaggerWithFile(new P5a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "{'X-Foo':{description:'l-foo',type:'integer',format:'int32'}}"); + assertMap(getSwagger(new P5a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "X-Foo{description,type,format}", "{l-foo,integer,int32}"); + assertMap(getSwaggerWithFile(new P5a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "X-Foo{description,type,format}", "{l-foo,integer,int32}"); } @Test void p05b_response_100_headers_swaggerOnAnnotation_localized() throws Exception { - assertJson(getSwagger(new P5b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "{'X-Foo':{description:'l-foo',type:'integer',format:'int32'}}"); - assertJson(getSwaggerWithFile(new P5b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "{'X-Foo':{description:'l-foo',type:'integer',format:'int32'}}"); + assertMap(getSwagger(new P5b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "X-Foo{description,type,format}", "{l-foo,integer,int32}"); + assertMap(getSwaggerWithFile(new P5b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getHeaders(), "X-Foo{description,type,format}", "{l-foo,integer,int32}"); } //------------------------------------------------------------------------------------------------------------------ @@ -1672,12 +1655,12 @@ class Swagger_Test extends SimpleTestBase { } @Test void r01a_responses_100_examples_default() throws Exception { - assertEquals(null, getSwagger(new R1a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples()); - assertJson(getSwaggerWithFile(new R1a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "{foo:'a'}"); + assertNull(getSwagger(new R1a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples()); + assertMap(getSwaggerWithFile(new R1a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "foo", "a"); } @Test void r01b_responses_100_examples_default() throws Exception { - assertEquals(null, getSwagger(new R1b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples()); - assertJson(getSwaggerWithFile(new R1b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "{foo:'a'}"); + assertNull(getSwagger(new R1b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples()); + assertMap(getSwaggerWithFile(new R1b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "foo", "a"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}/responses/100':{get:{responses:{100:{examples:{foo:{bar:'b'}}}}}}}")) @@ -1687,8 +1670,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void r02_response_100_examples_swaggerOnClass() throws Exception { - assertJson(getSwagger(new R2()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "{foo:{bar:'b'}}"); - assertJson(getSwaggerWithFile(new R2()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "{foo:{bar:'b'}}"); + assertMap(getSwagger(new R2()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "foo{bar}", "{b}"); + assertMap(getSwaggerWithFile(new R2()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "foo{bar}", "{b}"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}/responses/100':{get:{responses:{100:{examples:{foo:{bar:'b'}}}}}}}")) @@ -1698,8 +1681,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void r03_response_100_examples_swaggerOnMethod() throws Exception { - assertJson(getSwagger(new R3()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "{foo:{bar:'c'}}"); - assertJson(getSwaggerWithFile(new R3()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "{foo:{bar:'c'}}"); + assertMap(getSwagger(new R3()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "foo{bar}", "{c}"); + assertMap(getSwaggerWithFile(new R3()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "foo{bar}", "{c}"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}/responses/100':{get:{responses:{100:{examples:{foo:{bar:'b'}}}}}}}")) @@ -1716,12 +1699,12 @@ class Swagger_Test extends SimpleTestBase { public static class R4c {} @Test void r04a_response_100_examples_swaggerOnAnnotation() throws Exception { - assertJson(getSwagger(new R4a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "{foo:{bar:'d'}}"); - assertJson(getSwaggerWithFile(new R4a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "{foo:{bar:'d'}}"); + assertMap(getSwagger(new R4a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "foo{bar}", "{d}"); + assertMap(getSwaggerWithFile(new R4a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "foo{bar}", "{d}"); } @Test void r04b_response_100_examples_swaggerOnAnnotation() throws Exception { - assertJson(getSwagger(new R4b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "{foo:{bar:'d'}}"); - assertJson(getSwaggerWithFile(new R4b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "{foo:{bar:'d'}}"); + assertMap(getSwagger(new R4b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "foo{bar}", "{d}"); + assertMap(getSwaggerWithFile(new R4b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "foo{bar}", "{d}"); } @Rest(messages="BasicRestInfoProviderTest", swagger=@Swagger("paths:{'/path/{foo}/responses/100':{get:{responses:{100:{examples:{foo:{bar:'b'}}}}}}}")) @@ -1738,12 +1721,12 @@ class Swagger_Test extends SimpleTestBase { public static class R5c {} @Test void r05a_response_100_examples_swaggerOnAnnotation_lodalized() throws Exception { - assertJson(getSwagger(new R5a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "{foo:{bar:'l-foo'}}"); - assertJson(getSwaggerWithFile(new R5a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "{foo:{bar:'l-foo'}}"); + assertMap(getSwagger(new R5a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "foo{bar}", "{l-foo}"); + assertMap(getSwaggerWithFile(new R5a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "foo{bar}", "{l-foo}"); } @Test void r05b_response_100_examples_swaggerOnAnnotation_lodalized() throws Exception { - assertJson(getSwagger(new R5b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "{foo:{bar:'l-foo'}}"); - assertJson(getSwaggerWithFile(new R5b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "{foo:{bar:'l-foo'}}"); + assertMap(getSwagger(new R5b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "foo{bar}", "{l-foo}"); + assertMap(getSwaggerWithFile(new R5b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getExamples(), "foo{bar}", "{l-foo}"); } //------------------------------------------------------------------------------------------------------------------ @@ -1764,12 +1747,12 @@ class Swagger_Test extends SimpleTestBase { public static class S1c extends X {} @Test void s01a_responses_100_schema_default() throws Exception { - assertJson(getSwagger(new S1a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "{type:'object',properties:{a:{format:'int32',type:'integer'}}}"); - assertJson(getSwaggerWithFile(new S1a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "{type:'array',items:{'$ref':'#/definitions/Foo'}}"); + assertBean(getSwagger(new S1a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "type,properties{a{format,type}}", "object,{{int32,integer}}"); + assertBean(getSwaggerWithFile(new S1a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "type,items{ref}", "array,{#/definitions/Foo}"); } @Test void s01b_responses_100_schema_default() throws Exception { - assertJson(getSwagger(new S1b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "{type:'object',properties:{a:{format:'int32',type:'integer'}}}"); - assertJson(getSwaggerWithFile(new S1b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "{type:'array',items:{'$ref':'#/definitions/Foo'}}"); + assertBean(getSwagger(new S1b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "type,properties{a{format,type}}", "object,{{int32,integer}}"); + assertBean(getSwaggerWithFile(new S1b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "type,items{ref}", "array,{#/definitions/Foo}"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}/responses/100':{get:{responses:{100:{schema:{$ref:'b'}}}}}}")) @@ -1779,8 +1762,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void s02_response_100_schema_swaggerOnClass() throws Exception { - assertJson(getSwagger(new S2()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "{'$ref':'b'}"); - assertJson(getSwaggerWithFile(new S2()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "{'$ref':'b'}"); + assertBean(getSwagger(new S2()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "ref", "b"); + assertBean(getSwaggerWithFile(new S2()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "ref", "b"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}/responses/100':{get:{responses:{100:{schema:{$ref:'b'}}}}}}")) @@ -1790,8 +1773,8 @@ class Swagger_Test extends SimpleTestBase { } @Test void s03_response_100_schema_swaggerOnMethoe() throws Exception { - assertJson(getSwagger(new S3()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "{'$ref':'c'}"); - assertJson(getSwaggerWithFile(new S3()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "{'$ref':'c'}"); + assertBean(getSwagger(new S3()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "ref", "c"); + assertBean(getSwaggerWithFile(new S3()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "ref", "c"); } @Rest(swagger=@Swagger("paths:{'/path/{foo}/responses/100':{get:{responses:{100:{schema:{$ref:'b'}}}}}}")) @@ -1808,12 +1791,12 @@ class Swagger_Test extends SimpleTestBase { public static class S4c extends X {} @Test void s04a_response_100_schema_swaggerOnAnnotation() throws Exception { - assertJson(getSwagger(new S4a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "{'$ref':'d'}"); - assertJson(getSwaggerWithFile(new S4a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "{'$ref':'d'}"); + assertBean(getSwagger(new S4a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "ref", "d"); + assertBean(getSwaggerWithFile(new S4a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "ref", "d"); } @Test void s04b_response_100_schema_swaggerOnAnnotation() throws Exception { - assertJson(getSwagger(new S4b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "{'$ref':'d'}"); - assertJson(getSwaggerWithFile(new S4b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "{'$ref':'d'}"); + assertBean(getSwagger(new S4b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "ref", "d"); + assertBean(getSwaggerWithFile(new S4b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "ref", "d"); } @Rest(messages="BasicRestInfoProviderTest", swagger=@Swagger("paths:{'/path/{foo}/responses/100':{get:{responses:{100:{schema:{$ref:'b'}}}}}}")) @@ -1830,12 +1813,12 @@ class Swagger_Test extends SimpleTestBase { public static class S5c extends X {} @Test void s05a_response_100_schema_swaggerOnAnnotation_loealized() throws Exception { - assertJson(getSwagger(new S5a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "{'$ref':'l-foo'}"); - assertJson(getSwaggerWithFile(new S5a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "{'$ref':'l-foo'}"); + assertBean(getSwagger(new S5a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "ref", "l-foo"); + assertBean(getSwaggerWithFile(new S5a()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "ref", "l-foo"); } @Test void s05b_response_100_schema_swaggerOnAnnotation_loealized() throws Exception { - assertJson(getSwagger(new S5b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "{'$ref':'l-foo'}"); - assertJson(getSwaggerWithFile(new S5b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "{'$ref':'l-foo'}"); + assertBean(getSwagger(new S5b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "ref", "l-foo"); + assertBean(getSwaggerWithFile(new S5b()).getPaths().get("/path/{foo}/responses/100").get("get").getResponse(100).getSchema(), "ref", "l-foo"); } @Bean(typeName="Foo")