Repository: incubator-juneau Updated Branches: refs/heads/master 24d06b7fc -> a82f5d1be
Fix occasional JUnit failure in CT_Visibility when running under Java 8. The failure is random because the bean properties are sometimes out-of-order. Fix by sorting bean properties on test class. Project: http://git-wip-us.apache.org/repos/asf/incubator-juneau/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-juneau/commit/a82f5d1b Tree: http://git-wip-us.apache.org/repos/asf/incubator-juneau/tree/a82f5d1b Diff: http://git-wip-us.apache.org/repos/asf/incubator-juneau/diff/a82f5d1b Branch: refs/heads/master Commit: a82f5d1befd1ef2a0ca67f1b6c7a5d9396bf630c Parents: 24d06b7 Author: jamesbognar <[email protected]> Authored: Sat Aug 6 12:14:30 2016 -0400 Committer: jamesbognar <[email protected]> Committed: Sat Aug 6 12:14:30 2016 -0400 ---------------------------------------------------------------------- .../java/org/apache/juneau/CT_Visibility.java | 48 ++++++------ .../src/test/java/org/apache/juneau/a/A1.java | 81 ++++++++++---------- 2 files changed, 65 insertions(+), 64 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/a82f5d1b/org.apache.juneau/src/test/java/org/apache/juneau/CT_Visibility.java ---------------------------------------------------------------------- diff --git a/org.apache.juneau/src/test/java/org/apache/juneau/CT_Visibility.java b/org.apache.juneau/src/test/java/org/apache/juneau/CT_Visibility.java index f72ea51..d31fc62 100755 --- a/org.apache.juneau/src/test/java/org/apache/juneau/CT_Visibility.java +++ b/org.apache.juneau/src/test/java/org/apache/juneau/CT_Visibility.java @@ -58,16 +58,16 @@ public class CT_Visibility { s4.setProperty(BEAN_beanFieldVisibility, PUBLIC); r = s1.serialize(a1); - assertEquals("{f1:1,a2:{f1:1,f5:5},a3:'A3',a4:'A4',a5:'A5',f5:5}", r); + assertEquals("{f1:1,f5:5,g2:{f1:1,f5:5},g3:'A3',g4:'A4',g5:'A5'}", r); r = s2.serialize(a1); - assertEquals("{f1:1,a2:{f1:1,f5:5},a3:{f1:1,f5:5},a4:'A4',a5:'A5',f5:5}", r); + assertEquals("{f1:1,f5:5,g2:{f1:1,f5:5},g3:{f1:1,f5:5},g4:'A4',g5:'A5'}", r); r = s3.serialize(a1); - assertEquals("{f1:1,a2:{f1:1,f5:5},a3:{f1:1,f5:5},a4:{f1:1,f5:5},a5:'A5',f5:5}", r); + assertEquals("{f1:1,f5:5,g2:{f1:1,f5:5},g3:{f1:1,f5:5},g4:{f1:1,f5:5},g5:'A5'}", r); r = s4.serialize(a1); - assertEquals("{f1:1,a2:{f1:1,f5:5},a3:{f1:1,f5:5},a4:{f1:1,f5:5},a5:{f1:1,f5:5},f5:5}", r); + assertEquals("{f1:1,f5:5,g2:{f1:1,f5:5},g3:{f1:1,f5:5},g4:{f1:1,f5:5},g5:{f1:1,f5:5}}", r); s1.setProperty(BEAN_beanFieldVisibility, PROTECTED); s2.setProperty(BEAN_beanFieldVisibility, PROTECTED); @@ -75,16 +75,16 @@ public class CT_Visibility { s4.setProperty(BEAN_beanFieldVisibility, PROTECTED); r = s1.serialize(a1); - assertEquals("{f1:1,f2:2,a2:{f1:1,f2:2,f5:5},a3:'A3',a4:'A4',a5:'A5',f5:5}", r); + assertEquals("{f1:1,f2:2,f5:5,g2:{f1:1,f2:2,f5:5},g3:'A3',g4:'A4',g5:'A5'}", r); r = s2.serialize(a1); - assertEquals("{f1:1,f2:2,a2:{f1:1,f2:2,f5:5},a3:{f1:1,f2:2,f5:5},a4:'A4',a5:'A5',f5:5}", r); + assertEquals("{f1:1,f2:2,f5:5,g2:{f1:1,f2:2,f5:5},g3:{f1:1,f2:2,f5:5},g4:'A4',g5:'A5'}", r); r = s3.serialize(a1); - assertEquals("{f1:1,f2:2,a2:{f1:1,f2:2,f5:5},a3:{f1:1,f2:2,f5:5},a4:{f1:1,f2:2,f5:5},a5:'A5',f5:5}", r); + assertEquals("{f1:1,f2:2,f5:5,g2:{f1:1,f2:2,f5:5},g3:{f1:1,f2:2,f5:5},g4:{f1:1,f2:2,f5:5},g5:'A5'}", r); r = s4.serialize(a1); - assertEquals("{f1:1,f2:2,a2:{f1:1,f2:2,f5:5},a3:{f1:1,f2:2,f5:5},a4:{f1:1,f2:2,f5:5},a5:{f1:1,f2:2,f5:5},f5:5}", r); + assertEquals("{f1:1,f2:2,f5:5,g2:{f1:1,f2:2,f5:5},g3:{f1:1,f2:2,f5:5},g4:{f1:1,f2:2,f5:5},g5:{f1:1,f2:2,f5:5}}", r); s1.setProperty(BEAN_beanFieldVisibility, Visibility.DEFAULT); s2.setProperty(BEAN_beanFieldVisibility, Visibility.DEFAULT); @@ -92,16 +92,16 @@ public class CT_Visibility { s4.setProperty(BEAN_beanFieldVisibility, Visibility.DEFAULT); r = s1.serialize(a1); - assertEquals("{f1:1,f2:2,f3:3,a2:{f1:1,f2:2,f3:3,f5:5},a3:'A3',a4:'A4',a5:'A5',f5:5}", r); + assertEquals("{f1:1,f2:2,f3:3,f5:5,g2:{f1:1,f2:2,f3:3,f5:5},g3:'A3',g4:'A4',g5:'A5'}", r); r = s2.serialize(a1); - assertEquals("{f1:1,f2:2,f3:3,a2:{f1:1,f2:2,f3:3,f5:5},a3:{f1:1,f2:2,f3:3,f5:5},a4:'A4',a5:'A5',f5:5}", r); + assertEquals("{f1:1,f2:2,f3:3,f5:5,g2:{f1:1,f2:2,f3:3,f5:5},g3:{f1:1,f2:2,f3:3,f5:5},g4:'A4',g5:'A5'}", r); r = s3.serialize(a1); - assertEquals("{f1:1,f2:2,f3:3,a2:{f1:1,f2:2,f3:3,f5:5},a3:{f1:1,f2:2,f3:3,f5:5},a4:{f1:1,f2:2,f3:3,f5:5},a5:'A5',f5:5}", r); + assertEquals("{f1:1,f2:2,f3:3,f5:5,g2:{f1:1,f2:2,f3:3,f5:5},g3:{f1:1,f2:2,f3:3,f5:5},g4:{f1:1,f2:2,f3:3,f5:5},g5:'A5'}", r); r = s4.serialize(a1); - assertEquals("{f1:1,f2:2,f3:3,a2:{f1:1,f2:2,f3:3,f5:5},a3:{f1:1,f2:2,f3:3,f5:5},a4:{f1:1,f2:2,f3:3,f5:5},a5:{f1:1,f2:2,f3:3,f5:5},f5:5}", r); + assertEquals("{f1:1,f2:2,f3:3,f5:5,g2:{f1:1,f2:2,f3:3,f5:5},g3:{f1:1,f2:2,f3:3,f5:5},g4:{f1:1,f2:2,f3:3,f5:5},g5:{f1:1,f2:2,f3:3,f5:5}}", r); s1.setProperty(BEAN_beanFieldVisibility, PRIVATE); s2.setProperty(BEAN_beanFieldVisibility, PRIVATE); @@ -109,16 +109,16 @@ public class CT_Visibility { s4.setProperty(BEAN_beanFieldVisibility, PRIVATE); r = s1.serialize(a1); - assertEquals("{f1:1,f2:2,f3:3,f4:4,a2:{f1:1,f2:2,f3:3,f4:4,f5:5},a3:'A3',a4:'A4',a5:'A5',f5:5}", r); + assertEquals("{f1:1,f2:2,f3:3,f4:4,f5:5,g2:{f1:1,f2:2,f3:3,f4:4,f5:5},g3:'A3',g4:'A4',g5:'A5'}", r); r = s2.serialize(a1); - assertEquals("{f1:1,f2:2,f3:3,f4:4,a2:{f1:1,f2:2,f3:3,f4:4,f5:5},a3:{f1:1,f2:2,f3:3,f4:4,f5:5},a4:'A4',a5:'A5',f5:5}", r); + assertEquals("{f1:1,f2:2,f3:3,f4:4,f5:5,g2:{f1:1,f2:2,f3:3,f4:4,f5:5},g3:{f1:1,f2:2,f3:3,f4:4,f5:5},g4:'A4',g5:'A5'}", r); r = s3.serialize(a1); - assertEquals("{f1:1,f2:2,f3:3,f4:4,a2:{f1:1,f2:2,f3:3,f4:4,f5:5},a3:{f1:1,f2:2,f3:3,f4:4,f5:5},a4:{f1:1,f2:2,f3:3,f4:4,f5:5},a5:'A5',f5:5}", r); + assertEquals("{f1:1,f2:2,f3:3,f4:4,f5:5,g2:{f1:1,f2:2,f3:3,f4:4,f5:5},g3:{f1:1,f2:2,f3:3,f4:4,f5:5},g4:{f1:1,f2:2,f3:3,f4:4,f5:5},g5:'A5'}", r); r = s4.serialize(a1); - assertEquals("{f1:1,f2:2,f3:3,f4:4,a2:{f1:1,f2:2,f3:3,f4:4,f5:5},a3:{f1:1,f2:2,f3:3,f4:4,f5:5},a4:{f1:1,f2:2,f3:3,f4:4,f5:5},a5:{f1:1,f2:2,f3:3,f4:4,f5:5},f5:5}", r); + assertEquals("{f1:1,f2:2,f3:3,f4:4,f5:5,g2:{f1:1,f2:2,f3:3,f4:4,f5:5},g3:{f1:1,f2:2,f3:3,f4:4,f5:5},g4:{f1:1,f2:2,f3:3,f4:4,f5:5},g5:{f1:1,f2:2,f3:3,f4:4,f5:5}}", r); s1.setProperty(BEAN_methodVisibility, NONE); s2.setProperty(BEAN_methodVisibility, NONE); @@ -126,16 +126,16 @@ public class CT_Visibility { s4.setProperty(BEAN_methodVisibility, NONE); r = s1.serialize(a1); - assertEquals("{f1:1,f2:2,f3:3,f4:4,a2:{f1:1,f2:2,f3:3,f4:4},a3:'A3',a4:'A4',a5:'A5'}", r); + assertEquals("{f1:1,f2:2,f3:3,f4:4,g2:{f1:1,f2:2,f3:3,f4:4},g3:'A3',g4:'A4',g5:'A5'}", r); r = s2.serialize(a1); - assertEquals("{f1:1,f2:2,f3:3,f4:4,a2:{f1:1,f2:2,f3:3,f4:4},a3:{f1:1,f2:2,f3:3,f4:4},a4:'A4',a5:'A5'}", r); + assertEquals("{f1:1,f2:2,f3:3,f4:4,g2:{f1:1,f2:2,f3:3,f4:4},g3:{f1:1,f2:2,f3:3,f4:4},g4:'A4',g5:'A5'}", r); r = s3.serialize(a1); - assertEquals("{f1:1,f2:2,f3:3,f4:4,a2:{f1:1,f2:2,f3:3,f4:4},a3:{f1:1,f2:2,f3:3,f4:4},a4:{f1:1,f2:2,f3:3,f4:4},a5:'A5'}", r); + assertEquals("{f1:1,f2:2,f3:3,f4:4,g2:{f1:1,f2:2,f3:3,f4:4},g3:{f1:1,f2:2,f3:3,f4:4},g4:{f1:1,f2:2,f3:3,f4:4},g5:'A5'}", r); r = s4.serialize(a1); - assertEquals("{f1:1,f2:2,f3:3,f4:4,a2:{f1:1,f2:2,f3:3,f4:4},a3:{f1:1,f2:2,f3:3,f4:4},a4:{f1:1,f2:2,f3:3,f4:4},a5:{f1:1,f2:2,f3:3,f4:4}}", r); + assertEquals("{f1:1,f2:2,f3:3,f4:4,g2:{f1:1,f2:2,f3:3,f4:4},g3:{f1:1,f2:2,f3:3,f4:4},g4:{f1:1,f2:2,f3:3,f4:4},g5:{f1:1,f2:2,f3:3,f4:4}}", r); s1.setProperty(BEAN_methodVisibility, PROTECTED); s2.setProperty(BEAN_methodVisibility, PROTECTED); @@ -143,16 +143,16 @@ public class CT_Visibility { s4.setProperty(BEAN_methodVisibility, PROTECTED); r = s1.serialize(a1); - assertEquals("{f1:1,f2:2,f3:3,f4:4,a2:{f1:1,f2:2,f3:3,f4:4,f5:5,f6:6},a3:'A3',a4:'A4',a5:'A5',f5:5,f6:6}", r); + assertEquals("{f1:1,f2:2,f3:3,f4:4,f5:5,f6:6,g2:{f1:1,f2:2,f3:3,f4:4,f5:5,f6:6},g3:'A3',g4:'A4',g5:'A5'}", r); r = s2.serialize(a1); - assertEquals("{f1:1,f2:2,f3:3,f4:4,a2:{f1:1,f2:2,f3:3,f4:4,f5:5,f6:6},a3:{f1:1,f2:2,f3:3,f4:4,f5:5,f6:6},a4:'A4',a5:'A5',f5:5,f6:6}", r); + assertEquals("{f1:1,f2:2,f3:3,f4:4,f5:5,f6:6,g2:{f1:1,f2:2,f3:3,f4:4,f5:5,f6:6},g3:{f1:1,f2:2,f3:3,f4:4,f5:5,f6:6},g4:'A4',g5:'A5'}", r); r = s3.serialize(a1); - assertEquals("{f1:1,f2:2,f3:3,f4:4,a2:{f1:1,f2:2,f3:3,f4:4,f5:5,f6:6},a3:{f1:1,f2:2,f3:3,f4:4,f5:5,f6:6},a4:{f1:1,f2:2,f3:3,f4:4,f5:5,f6:6},a5:'A5',f5:5,f6:6}", r); + assertEquals("{f1:1,f2:2,f3:3,f4:4,f5:5,f6:6,g2:{f1:1,f2:2,f3:3,f4:4,f5:5,f6:6},g3:{f1:1,f2:2,f3:3,f4:4,f5:5,f6:6},g4:{f1:1,f2:2,f3:3,f4:4,f5:5,f6:6},g5:'A5'}", r); r = s4.serialize(a1); - assertEquals("{f1:1,f2:2,f3:3,f4:4,a2:{f1:1,f2:2,f3:3,f4:4,f5:5,f6:6},a3:{f1:1,f2:2,f3:3,f4:4,f5:5,f6:6},a4:{f1:1,f2:2,f3:3,f4:4,f5:5,f6:6},a5:{f1:1,f2:2,f3:3,f4:4,f5:5,f6:6},f5:5,f6:6}", r); + assertEquals("{f1:1,f2:2,f3:3,f4:4,f5:5,f6:6,g2:{f1:1,f2:2,f3:3,f4:4,f5:5,f6:6},g3:{f1:1,f2:2,f3:3,f4:4,f5:5,f6:6},g4:{f1:1,f2:2,f3:3,f4:4,f5:5,f6:6},g5:{f1:1,f2:2,f3:3,f4:4,f5:5,f6:6}}", r); } http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/a82f5d1b/org.apache.juneau/src/test/java/org/apache/juneau/a/A1.java ---------------------------------------------------------------------- diff --git a/org.apache.juneau/src/test/java/org/apache/juneau/a/A1.java b/org.apache.juneau/src/test/java/org/apache/juneau/a/A1.java index 6b663c8..c20c778 100755 --- a/org.apache.juneau/src/test/java/org/apache/juneau/a/A1.java +++ b/org.apache.juneau/src/test/java/org/apache/juneau/a/A1.java @@ -16,6 +16,7 @@ import org.apache.juneau.annotation.*; // Default class @SuppressWarnings({"unused","synthetic-access"}) +@Bean(sort=true) public class A1 { public int f1; protected int f2; @@ -34,10 +35,10 @@ public class A1 { private int getF8() { return f8; } private void setF8(int f8) { this.f8 = f8; } - public A2 a2; - public A3 a3; - public A4 a4; - public A5 a5; + public A2 g2; + public A3 g3; + public A4 g4; + public A5 g5; public static A1 create() { A1 x = new A1(); @@ -49,42 +50,42 @@ public class A1 { x.f6 = 6; x.f7 = 7; x.f8 = 8; - x.a2 = new A2(); - x.a2.f1 = 1; - x.a2.f2 = 2; - x.a2.f3 = 3; - x.a2.f4 = 4; - x.a2.f5 = 5; - x.a2.f6 = 6; - x.a2.f7 = 7; - x.a2.f8 = 8; - x.a3 = new A3(); - x.a3.f1 = 1; - x.a3.f2 = 2; - x.a3.f3 = 3; - x.a3.f4 = 4; - x.a3.f5 = 5; - x.a3.f6 = 6; - x.a3.f7 = 7; - x.a3.f8 = 8; - x.a4 = new A4(); - x.a4.f1 = 1; - x.a4.f2 = 2; - x.a4.f3 = 3; - x.a4.f4 = 4; - x.a4.f5 = 5; - x.a4.f6 = 6; - x.a4.f7 = 7; - x.a4.f8 = 8; - x.a5 = new A5(); - x.a5.f1 = 1; - x.a5.f2 = 2; - x.a5.f3 = 3; - x.a5.f4 = 4; - x.a5.f5 = 5; - x.a5.f6 = 6; - x.a5.f7 = 7; - x.a5.f8 = 8; + x.g2 = new A2(); + x.g2.f1 = 1; + x.g2.f2 = 2; + x.g2.f3 = 3; + x.g2.f4 = 4; + x.g2.f5 = 5; + x.g2.f6 = 6; + x.g2.f7 = 7; + x.g2.f8 = 8; + x.g3 = new A3(); + x.g3.f1 = 1; + x.g3.f2 = 2; + x.g3.f3 = 3; + x.g3.f4 = 4; + x.g3.f5 = 5; + x.g3.f6 = 6; + x.g3.f7 = 7; + x.g3.f8 = 8; + x.g4 = new A4(); + x.g4.f1 = 1; + x.g4.f2 = 2; + x.g4.f3 = 3; + x.g4.f4 = 4; + x.g4.f5 = 5; + x.g4.f6 = 6; + x.g4.f7 = 7; + x.g4.f8 = 8; + x.g5 = new A5(); + x.g5.f1 = 1; + x.g5.f2 = 2; + x.g5.f3 = 3; + x.g5.f4 = 4; + x.g5.f5 = 5; + x.g5.f6 = 6; + x.g5.f7 = 7; + x.g5.f8 = 8; return x; }
