Repository: incubator-juneau Updated Branches: refs/heads/master a675bcd3c -> 8d699b2fb
Fix test failure due to bean properties out of order. Project: http://git-wip-us.apache.org/repos/asf/incubator-juneau/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-juneau/commit/8d699b2f Tree: http://git-wip-us.apache.org/repos/asf/incubator-juneau/tree/8d699b2f Diff: http://git-wip-us.apache.org/repos/asf/incubator-juneau/diff/8d699b2f Branch: refs/heads/master Commit: 8d699b2fbf63653ddf3dc30a288a74131572129a Parents: a675bcd Author: jamesbognar <[email protected]> Authored: Fri Sep 9 12:38:53 2016 -0400 Committer: jamesbognar <[email protected]> Committed: Fri Sep 9 12:38:53 2016 -0400 ---------------------------------------------------------------------- .../java/org/apache/juneau/server/DTO2s.java | 57 ++++++++++---------- .../org/apache/juneau/server/ContentTest.java | 24 ++++----- .../java/org/apache/juneau/server/DTOs.java | 57 ++++++++++---------- .../org/apache/juneau/server/ParamsTest.java | 36 ++++++------- 4 files changed, 90 insertions(+), 84 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/8d699b2f/juneau-server-test/src/main/java/org/apache/juneau/server/DTO2s.java ---------------------------------------------------------------------- diff --git a/juneau-server-test/src/main/java/org/apache/juneau/server/DTO2s.java b/juneau-server-test/src/main/java/org/apache/juneau/server/DTO2s.java index 3b3b90f..a47412f 100755 --- a/juneau-server-test/src/main/java/org/apache/juneau/server/DTO2s.java +++ b/juneau-server-test/src/main/java/org/apache/juneau/server/DTO2s.java @@ -14,10 +14,12 @@ package org.apache.juneau.server; import java.util.*; +import org.apache.juneau.annotation.*; import org.apache.juneau.urlencoding.annotation.*; public class DTO2s { + @Bean(sort=true) public static class A { public String a; public int b; @@ -34,16 +36,17 @@ public class DTO2s { } @SuppressWarnings("serial") + @Bean(sort=true) public static class B { - public String[] f1; - public List<String> f2; - public int[] f3; - public List<Integer> f4; - public String[][] f5; - public List<String[]> f6; - public A[] f7; - public List<A> f8; - public A[][] f9; + public String[] f01; + public List<String> f02; + public int[] f03; + public List<Integer> f04; + public String[][] f05; + public List<String[]> f06; + public A[] f07; + public List<A> f08; + public A[][] f09; public List<List<A>> f10; private String[] f11; @@ -81,15 +84,15 @@ public class DTO2s { static B create() { B t = new B(); - t.f1 = new String[]{"a","b"}; - t.f2 = new ArrayList<String>(){{add("c");add("d");}}; - t.f3 = new int[]{1,2}; - t.f4 = new ArrayList<Integer>(){{add(3);add(4);}}; - t.f5 = new String[][]{{"e","f"},{"g","h"}}; - t.f6 = new ArrayList<String[]>(){{add(new String[]{"i","j"});add(new String[]{"k","l"});}}; - t.f7 = new A[]{A.create(),A.create()}; - t.f8 = new ArrayList<A>(){{add(A.create());add(A.create());}}; - t.f9 = new A[][]{{A.create()},{A.create()}}; + t.f01 = new String[]{"a","b"}; + t.f02 = new ArrayList<String>(){{add("c");add("d");}}; + t.f03 = new int[]{1,2}; + t.f04 = new ArrayList<Integer>(){{add(3);add(4);}}; + t.f05 = new String[][]{{"e","f"},{"g","h"}}; + t.f06 = new ArrayList<String[]>(){{add(new String[]{"i","j"});add(new String[]{"k","l"});}}; + t.f07 = new A[]{A.create(),A.create()}; + t.f08 = new ArrayList<A>(){{add(A.create());add(A.create());}}; + t.f09 = new A[][]{{A.create()},{A.create()}}; t.f10 = new ArrayList<List<A>>(){{add(Arrays.asList(A.create()));add(Arrays.asList(A.create()));}}; t.setF11(new String[]{"a","b"}); t.setF12(new ArrayList<String>(){{add("c");add("d");}}); @@ -110,15 +113,15 @@ public class DTO2s { @SuppressWarnings("serial") static C create() { C t = new C(); - t.f1 = new String[]{"a","b"}; - t.f2 = new ArrayList<String>(){{add("c");add("d");}}; - t.f3 = new int[]{1,2}; - t.f4 = new ArrayList<Integer>(){{add(3);add(4);}}; - t.f5 = new String[][]{{"e","f"},{"g","h"}}; - t.f6 = new ArrayList<String[]>(){{add(new String[]{"i","j"});add(new String[]{"k","l"});}}; - t.f7 = new A[]{A.create(),A.create()}; - t.f8 = new ArrayList<A>(){{add(A.create());add(A.create());}}; - t.f9 = new A[][]{{A.create()},{A.create()}}; + t.f01 = new String[]{"a","b"}; + t.f02 = new ArrayList<String>(){{add("c");add("d");}}; + t.f03 = new int[]{1,2}; + t.f04 = new ArrayList<Integer>(){{add(3);add(4);}}; + t.f05 = new String[][]{{"e","f"},{"g","h"}}; + t.f06 = new ArrayList<String[]>(){{add(new String[]{"i","j"});add(new String[]{"k","l"});}}; + t.f07 = new A[]{A.create(),A.create()}; + t.f08 = new ArrayList<A>(){{add(A.create());add(A.create());}}; + t.f09 = new A[][]{{A.create()},{A.create()}}; t.f10 = new ArrayList<List<A>>(){{add(Arrays.asList(A.create()));add(Arrays.asList(A.create()));}}; t.setF11(new String[]{"a","b"}); t.setF12(new ArrayList<String>(){{add("c");add("d");}}); http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/8d699b2f/juneau-server-test/src/test/java/org/apache/juneau/server/ContentTest.java ---------------------------------------------------------------------- diff --git a/juneau-server-test/src/test/java/org/apache/juneau/server/ContentTest.java b/juneau-server-test/src/test/java/org/apache/juneau/server/ContentTest.java index 8e70c00..03f6a89 100755 --- a/juneau-server-test/src/test/java/org/apache/juneau/server/ContentTest.java +++ b/juneau-server-test/src/test/java/org/apache/juneau/server/ContentTest.java @@ -195,9 +195,9 @@ public class ContentTest { // } DTOs.B b = DTOs.B.create(); r = c.doPost(URL + "/B?content=" + UonSerializer.DEFAULT.serialize(b), null).getResponseAsString(); - assertEquals("{f1:['a','b'],f2:['c','d'],f3:[1,2],f4:[3,4],f5:[['e','f'],['g','h']],f6:[['i','j'],['k','l']],f7:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f8:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f9:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f10:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f11:['a','b'],f12:['c','d'],f13:[1,2],f14:[3,4],f15:[['e','f'],['g','h']],f16:[['i','j'],['k','l']],f17:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f18:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f19:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f20:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]]}", r); + assertEquals("{f01:['a','b'],f02:['c','d'],f03:[1,2],f04:[3,4],f05:[['e','f'],['g','h']],f06:[['i','j'],['k','l']],f07:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f08:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f09:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f10:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f11:['a','b'],f12:['c','d'],f13:[1,2],f14:[3,4],f15:[['e','f'],['g','h']],f16:[['i','j'],['k','l']],f17:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f18:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f19:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f20:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]]}", r); r = c.doPost(URL + "/B?content=" + UonSerializer.DEFAULT_SIMPLE.serialize(b), null).getResponseAsString(); - assertEquals("{f1:['a','b'],f2:['c','d'],f3:[1,2],f4:[3,4],f5:[['e','f'],['g','h']],f6:[['i','j'],['k','l']],f7:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f8:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f9:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f10:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f11:['a','b'],f12:['c','d'],f13:[1,2],f14:[3,4],f15:[['e','f'],['g','h']],f16:[['i','j'],['k','l']],f17:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f18:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f19:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f20:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]]}", r); + assertEquals("{f01:['a','b'],f02:['c','d'],f03:[1,2],f04:[3,4],f05:[['e','f'],['g','h']],f06:[['i','j'],['k','l']],f07:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f08:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f09:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f10:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f11:['a','b'],f12:['c','d'],f13:[1,2],f14:[3,4],f15:[['e','f'],['g','h']],f16:[['i','j'],['k','l']],f17:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f18:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f19:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f20:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]]}", r); // @RestMethod(name="POST", path="/C") // public DTO2s.C testPojo2(@Content DTO2s.C c) { @@ -205,9 +205,9 @@ public class ContentTest { // } DTOs.C x = DTOs.C.create(); r = c.doPost(URL + "/C?content=" + UonSerializer.DEFAULT.serialize(x), null).getResponseAsString(); - assertEquals("{f1:['a','b'],f2:['c','d'],f3:[1,2],f4:[3,4],f5:[['e','f'],['g','h']],f6:[['i','j'],['k','l']],f7:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f8:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f9:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f10:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f11:['a','b'],f12:['c','d'],f13:[1,2],f14:[3,4],f15:[['e','f'],['g','h']],f16:[['i','j'],['k','l']],f17:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f18:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f19:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f20:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]]}", r); + assertEquals("{f01:['a','b'],f02:['c','d'],f03:[1,2],f04:[3,4],f05:[['e','f'],['g','h']],f06:[['i','j'],['k','l']],f07:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f08:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f09:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f10:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f11:['a','b'],f12:['c','d'],f13:[1,2],f14:[3,4],f15:[['e','f'],['g','h']],f16:[['i','j'],['k','l']],f17:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f18:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f19:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f20:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]]}", r); r = c.doPost(URL + "/C?content=" + UonSerializer.DEFAULT_SIMPLE.serialize(x), null).getResponseAsString(); - assertEquals("{f1:['a','b'],f2:['c','d'],f3:[1,2],f4:[3,4],f5:[['e','f'],['g','h']],f6:[['i','j'],['k','l']],f7:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f8:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f9:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f10:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f11:['a','b'],f12:['c','d'],f13:[1,2],f14:[3,4],f15:[['e','f'],['g','h']],f16:[['i','j'],['k','l']],f17:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f18:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f19:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f20:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]]}", r); + assertEquals("{f01:['a','b'],f02:['c','d'],f03:[1,2],f04:[3,4],f05:[['e','f'],['g','h']],f06:[['i','j'],['k','l']],f07:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f08:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f09:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f10:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f11:['a','b'],f12:['c','d'],f13:[1,2],f14:[3,4],f15:[['e','f'],['g','h']],f16:[['i','j'],['k','l']],f17:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f18:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f19:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f20:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]]}", r); c.closeQuietly(); } @@ -348,7 +348,7 @@ public class ContentTest { // } DTOs.B b = DTOs.B.create(); r = c.doPost(URL + "/B?content=" + encode(JsonSerializer.DEFAULT_LAX.serialize(b)), null).getResponseAsString(); - assertEquals("{f1:['a','b'],f2:['c','d'],f3:[1,2],f4:[3,4],f5:[['e','f'],['g','h']],f6:[['i','j'],['k','l']],f7:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f8:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f9:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f10:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f11:['a','b'],f12:['c','d'],f13:[1,2],f14:[3,4],f15:[['e','f'],['g','h']],f16:[['i','j'],['k','l']],f17:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f18:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f19:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f20:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]]}", r); + assertEquals("{f01:['a','b'],f02:['c','d'],f03:[1,2],f04:[3,4],f05:[['e','f'],['g','h']],f06:[['i','j'],['k','l']],f07:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f08:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f09:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f10:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f11:['a','b'],f12:['c','d'],f13:[1,2],f14:[3,4],f15:[['e','f'],['g','h']],f16:[['i','j'],['k','l']],f17:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f18:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f19:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f20:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]]}", r); // @RestMethod(name="POST", path="/C") // public DTO2s.C testPojo2(@Content DTO2s.C c) { @@ -356,7 +356,7 @@ public class ContentTest { // } DTOs.C x = DTOs.C.create(); r = c.doPost(URL + "/C?content=" + encode(JsonSerializer.DEFAULT_LAX.serialize(x)), null).getResponseAsString(); - assertEquals("{f1:['a','b'],f2:['c','d'],f3:[1,2],f4:[3,4],f5:[['e','f'],['g','h']],f6:[['i','j'],['k','l']],f7:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f8:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f9:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f10:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f11:['a','b'],f12:['c','d'],f13:[1,2],f14:[3,4],f15:[['e','f'],['g','h']],f16:[['i','j'],['k','l']],f17:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f18:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f19:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f20:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]]}", r); + assertEquals("{f01:['a','b'],f02:['c','d'],f03:[1,2],f04:[3,4],f05:[['e','f'],['g','h']],f06:[['i','j'],['k','l']],f07:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f08:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f09:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f10:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f11:['a','b'],f12:['c','d'],f13:[1,2],f14:[3,4],f15:[['e','f'],['g','h']],f16:[['i','j'],['k','l']],f17:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f18:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f19:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f20:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]]}", r); c.closeQuietly(); } @@ -497,7 +497,7 @@ public class ContentTest { // } DTOs.B b = DTOs.B.create(); r = c.doPost(URL + "/B?content=" + encode(JsonSerializer.DEFAULT_LAX.serialize(b)) + "&Content-Type=text/json", null).getResponseAsString(); - assertEquals("{f1:['a','b'],f2:['c','d'],f3:[1,2],f4:[3,4],f5:[['e','f'],['g','h']],f6:[['i','j'],['k','l']],f7:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f8:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f9:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f10:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f11:['a','b'],f12:['c','d'],f13:[1,2],f14:[3,4],f15:[['e','f'],['g','h']],f16:[['i','j'],['k','l']],f17:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f18:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f19:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f20:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]]}", r); + assertEquals("{f01:['a','b'],f02:['c','d'],f03:[1,2],f04:[3,4],f05:[['e','f'],['g','h']],f06:[['i','j'],['k','l']],f07:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f08:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f09:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f10:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f11:['a','b'],f12:['c','d'],f13:[1,2],f14:[3,4],f15:[['e','f'],['g','h']],f16:[['i','j'],['k','l']],f17:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f18:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f19:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f20:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]]}", r); // @RestMethod(name="POST", path="/C") // public DTO2s.C testPojo2(@Content DTO2s.C c) { @@ -505,7 +505,7 @@ public class ContentTest { // } DTOs.C x = DTOs.C.create(); r = c.doPost(URL + "/C?content=" + encode(JsonSerializer.DEFAULT_LAX.serialize(x)) + "&Content-Type=text/json", null).getResponseAsString(); - assertEquals("{f1:['a','b'],f2:['c','d'],f3:[1,2],f4:[3,4],f5:[['e','f'],['g','h']],f6:[['i','j'],['k','l']],f7:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f8:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f9:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f10:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f11:['a','b'],f12:['c','d'],f13:[1,2],f14:[3,4],f15:[['e','f'],['g','h']],f16:[['i','j'],['k','l']],f17:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f18:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f19:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f20:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]]}", r); + assertEquals("{f01:['a','b'],f02:['c','d'],f03:[1,2],f04:[3,4],f05:[['e','f'],['g','h']],f06:[['i','j'],['k','l']],f07:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f08:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f09:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f10:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f11:['a','b'],f12:['c','d'],f13:[1,2],f14:[3,4],f15:[['e','f'],['g','h']],f16:[['i','j'],['k','l']],f17:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f18:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f19:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f20:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]]}", r); c.closeQuietly(); } @@ -678,9 +678,9 @@ public class ContentTest { // } DTOs.B b = DTOs.B.create(); r = c.doPost(URL + "/B", "" + UonSerializer.DEFAULT.serialize(b)).getResponseAsString(); - assertEquals("{f1:['a','b'],f2:['c','d'],f3:[1,2],f4:[3,4],f5:[['e','f'],['g','h']],f6:[['i','j'],['k','l']],f7:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f8:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f9:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f10:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f11:['a','b'],f12:['c','d'],f13:[1,2],f14:[3,4],f15:[['e','f'],['g','h']],f16:[['i','j'],['k','l']],f17:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f18:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f19:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f20:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]]}", r); + assertEquals("{f01:['a','b'],f02:['c','d'],f03:[1,2],f04:[3,4],f05:[['e','f'],['g','h']],f06:[['i','j'],['k','l']],f07:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f08:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f09:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f10:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f11:['a','b'],f12:['c','d'],f13:[1,2],f14:[3,4],f15:[['e','f'],['g','h']],f16:[['i','j'],['k','l']],f17:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f18:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f19:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f20:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]]}", r); r = c.doPost(URL + "/B", "" + UonSerializer.DEFAULT_SIMPLE.serialize(b)).getResponseAsString(); - assertEquals("{f1:['a','b'],f2:['c','d'],f3:[1,2],f4:[3,4],f5:[['e','f'],['g','h']],f6:[['i','j'],['k','l']],f7:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f8:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f9:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f10:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f11:['a','b'],f12:['c','d'],f13:[1,2],f14:[3,4],f15:[['e','f'],['g','h']],f16:[['i','j'],['k','l']],f17:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f18:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f19:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f20:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]]}", r); + assertEquals("{f01:['a','b'],f02:['c','d'],f03:[1,2],f04:[3,4],f05:[['e','f'],['g','h']],f06:[['i','j'],['k','l']],f07:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f08:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f09:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f10:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f11:['a','b'],f12:['c','d'],f13:[1,2],f14:[3,4],f15:[['e','f'],['g','h']],f16:[['i','j'],['k','l']],f17:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f18:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f19:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f20:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]]}", r); // @RestMethod(name="POST", path="/C") // public DTO2s.C testPojo2(@Content DTO2s.C c) { @@ -688,9 +688,9 @@ public class ContentTest { // } DTOs.C x = DTOs.C.create(); r = c.doPost(URL + "/C", "" + UonSerializer.DEFAULT.serialize(x)).getResponseAsString(); - assertEquals("{f1:['a','b'],f2:['c','d'],f3:[1,2],f4:[3,4],f5:[['e','f'],['g','h']],f6:[['i','j'],['k','l']],f7:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f8:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f9:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f10:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f11:['a','b'],f12:['c','d'],f13:[1,2],f14:[3,4],f15:[['e','f'],['g','h']],f16:[['i','j'],['k','l']],f17:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f18:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f19:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f20:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]]}", r); + assertEquals("{f01:['a','b'],f02:['c','d'],f03:[1,2],f04:[3,4],f05:[['e','f'],['g','h']],f06:[['i','j'],['k','l']],f07:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f08:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f09:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f10:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f11:['a','b'],f12:['c','d'],f13:[1,2],f14:[3,4],f15:[['e','f'],['g','h']],f16:[['i','j'],['k','l']],f17:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f18:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f19:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f20:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]]}", r); r = c.doPost(URL + "/C", "" + UonSerializer.DEFAULT_SIMPLE.serialize(x)).getResponseAsString(); - assertEquals("{f1:['a','b'],f2:['c','d'],f3:[1,2],f4:[3,4],f5:[['e','f'],['g','h']],f6:[['i','j'],['k','l']],f7:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f8:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f9:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f10:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f11:['a','b'],f12:['c','d'],f13:[1,2],f14:[3,4],f15:[['e','f'],['g','h']],f16:[['i','j'],['k','l']],f17:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f18:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f19:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f20:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]]}", r); + assertEquals("{f01:['a','b'],f02:['c','d'],f03:[1,2],f04:[3,4],f05:[['e','f'],['g','h']],f06:[['i','j'],['k','l']],f07:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f08:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f09:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f10:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f11:['a','b'],f12:['c','d'],f13:[1,2],f14:[3,4],f15:[['e','f'],['g','h']],f16:[['i','j'],['k','l']],f17:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f18:[{a:'a',b:1,c:true},{a:'a',b:1,c:true}],f19:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]],f20:[[{a:'a',b:1,c:true}],[{a:'a',b:1,c:true}]]}", r); c.closeQuietly(); } http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/8d699b2f/juneau-server-test/src/test/java/org/apache/juneau/server/DTOs.java ---------------------------------------------------------------------- diff --git a/juneau-server-test/src/test/java/org/apache/juneau/server/DTOs.java b/juneau-server-test/src/test/java/org/apache/juneau/server/DTOs.java index f1b1a4a..541245a 100755 --- a/juneau-server-test/src/test/java/org/apache/juneau/server/DTOs.java +++ b/juneau-server-test/src/test/java/org/apache/juneau/server/DTOs.java @@ -14,10 +14,12 @@ package org.apache.juneau.server; import java.util.*; +import org.apache.juneau.annotation.*; import org.apache.juneau.urlencoding.annotation.*; public class DTOs { + @Bean(sort=true) public static class A { public String a; public int b; @@ -34,16 +36,17 @@ public class DTOs { } @SuppressWarnings("serial") + @Bean(sort=true) public static class B { - public String[] f1; - public List<String> f2; - public int[] f3; - public List<Integer> f4; - public String[][] f5; - public List<String[]> f6; - public A[] f7; - public List<A> f8; - public A[][] f9; + public String[] f01; + public List<String> f02; + public int[] f03; + public List<Integer> f04; + public String[][] f05; + public List<String[]> f06; + public A[] f07; + public List<A> f08; + public A[][] f09; public List<List<A>> f10; private String[] f11; @@ -81,15 +84,15 @@ public class DTOs { static B create() { B t = new B(); - t.f1 = new String[]{"a","b"}; - t.f2 = new ArrayList<String>(){{add("c");add("d");}}; - t.f3 = new int[]{1,2}; - t.f4 = new ArrayList<Integer>(){{add(3);add(4);}}; - t.f5 = new String[][]{{"e","f"},{"g","h"}}; - t.f6 = new ArrayList<String[]>(){{add(new String[]{"i","j"});add(new String[]{"k","l"});}}; - t.f7 = new A[]{A.create(),A.create()}; - t.f8 = new ArrayList<A>(){{add(A.create());add(A.create());}}; - t.f9 = new A[][]{{A.create()},{A.create()}}; + t.f01 = new String[]{"a","b"}; + t.f02 = new ArrayList<String>(){{add("c");add("d");}}; + t.f03 = new int[]{1,2}; + t.f04 = new ArrayList<Integer>(){{add(3);add(4);}}; + t.f05 = new String[][]{{"e","f"},{"g","h"}}; + t.f06 = new ArrayList<String[]>(){{add(new String[]{"i","j"});add(new String[]{"k","l"});}}; + t.f07 = new A[]{A.create(),A.create()}; + t.f08 = new ArrayList<A>(){{add(A.create());add(A.create());}}; + t.f09 = new A[][]{{A.create()},{A.create()}}; t.f10 = new ArrayList<List<A>>(){{add(Arrays.asList(A.create()));add(Arrays.asList(A.create()));}}; t.setF11(new String[]{"a","b"}); t.setF12(new ArrayList<String>(){{add("c");add("d");}}); @@ -110,15 +113,15 @@ public class DTOs { @SuppressWarnings("serial") static C create() { C t = new C(); - t.f1 = new String[]{"a","b"}; - t.f2 = new ArrayList<String>(){{add("c");add("d");}}; - t.f3 = new int[]{1,2}; - t.f4 = new ArrayList<Integer>(){{add(3);add(4);}}; - t.f5 = new String[][]{{"e","f"},{"g","h"}}; - t.f6 = new ArrayList<String[]>(){{add(new String[]{"i","j"});add(new String[]{"k","l"});}}; - t.f7 = new A[]{A.create(),A.create()}; - t.f8 = new ArrayList<A>(){{add(A.create());add(A.create());}}; - t.f9 = new A[][]{{A.create()},{A.create()}}; + t.f01 = new String[]{"a","b"}; + t.f02 = new ArrayList<String>(){{add("c");add("d");}}; + t.f03 = new int[]{1,2}; + t.f04 = new ArrayList<Integer>(){{add(3);add(4);}}; + t.f05 = new String[][]{{"e","f"},{"g","h"}}; + t.f06 = new ArrayList<String[]>(){{add(new String[]{"i","j"});add(new String[]{"k","l"});}}; + t.f07 = new A[]{A.create(),A.create()}; + t.f08 = new ArrayList<A>(){{add(A.create());add(A.create());}}; + t.f09 = new A[][]{{A.create()},{A.create()}}; t.f10 = new ArrayList<List<A>>(){{add(Arrays.asList(A.create()));add(Arrays.asList(A.create()));}}; t.setF11(new String[]{"a","b"}); t.setF12(new ArrayList<String>(){{add("c");add("d");}}); http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/8d699b2f/juneau-server-test/src/test/java/org/apache/juneau/server/ParamsTest.java ---------------------------------------------------------------------- diff --git a/juneau-server-test/src/test/java/org/apache/juneau/server/ParamsTest.java b/juneau-server-test/src/test/java/org/apache/juneau/server/ParamsTest.java index 292c984..578519c 100755 --- a/juneau-server-test/src/test/java/org/apache/juneau/server/ParamsTest.java +++ b/juneau-server-test/src/test/java/org/apache/juneau/server/ParamsTest.java @@ -648,15 +648,15 @@ public class ParamsTest { String url = URL + "/testFormPostsWithMultiParamsUsingProperty"; String in = "" - + "f1=a&f1=b" - + "&f2=c&f2=d" - + "&f3=1&f3=2" - + "&f4=3&f4=4" - + "&f5=(e,f)&f5=(g,h)" - + "&f6=(i,j)&f6=(k,l)" - + "&f7=(a=a,b=1,c=true)&f7=(a=b,b=2,c=false)" - + "&f8=(a=a,b=1,c=true)&f8=(a=b,b=2,c=false)" - + "&f9=((a=a,b=1,c=true))&f9=((a=b,b=2,c=false))" + + "f01=a&f01=b" + + "&f02=c&f02=d" + + "&f03=1&f03=2" + + "&f04=3&f04=4" + + "&f05=(e,f)&f05=(g,h)" + + "&f06=(i,j)&f06=(k,l)" + + "&f07=(a=a,b=1,c=true)&f07=(a=b,b=2,c=false)" + + "&f08=(a=a,b=1,c=true)&f08=(a=b,b=2,c=false)" + + "&f09=((a=a,b=1,c=true))&f09=((a=b,b=2,c=false))" + "&f10=((a=a,b=1,c=true))&f10=((a=b,b=2,c=false))" + "&f11=a&f11=b" + "&f12=c&f12=d" @@ -688,15 +688,15 @@ public class ParamsTest { String url = URL + "/testFormPostsWithMultiParamsUsingAnnotation"; String in = "" - + "f1=a&f1=b" - + "&f2=c&f2=d" - + "&f3=1&f3=2" - + "&f4=3&f4=4" - + "&f5=(e,f)&f5=(g,h)" - + "&f6=(i,j)&f6=(k,l)" - + "&f7=(a=a,b=1,c=true)&f7=(a=b,b=2,c=false)" - + "&f8=(a=a,b=1,c=true)&f8=(a=b,b=2,c=false)" - + "&f9=((a=a,b=1,c=true))&f9=((a=b,b=2,c=false))" + + "f01=a&f01=b" + + "&f02=c&f02=d" + + "&f03=1&f03=2" + + "&f04=3&f04=4" + + "&f05=(e,f)&f05=(g,h)" + + "&f06=(i,j)&f06=(k,l)" + + "&f07=(a=a,b=1,c=true)&f07=(a=b,b=2,c=false)" + + "&f08=(a=a,b=1,c=true)&f08=(a=b,b=2,c=false)" + + "&f09=((a=a,b=1,c=true))&f09=((a=b,b=2,c=false))" + "&f10=((a=a,b=1,c=true))&f10=((a=b,b=2,c=false))" + "&f11=a&f11=b" + "&f12=c&f12=d"
