1.1 --- a/vmtest/src/test/java/org/apidesign/bck2brwsr/tck/ReflectionArrayTest.java Fri Jan 18 18:35:17 2013 +0100
1.2 +++ b/vmtest/src/test/java/org/apidesign/bck2brwsr/tck/ReflectionArrayTest.java Fri Jan 18 19:22:49 2013 +0100
1.3 @@ -31,6 +31,16 @@
1.4 String[] arr = (String[]) Array.newInstance(String.class, 10);
1.5 return arr.length;
1.6 }
1.7 +
1.8 + @Compare public int reflectiveLengthOfStringArray() {
1.9 + Object arr = Array.newInstance(String.class, 10);
1.10 + return Array.getLength(arr);
1.11 + }
1.12 +
1.13 + @Compare public int reflectiveLengthOneNonArray() {
1.14 + Object arr = "non-array";
1.15 + return Array.getLength(arr);
1.16 + }
1.17
1.18 @Compare public String compTypeOfStringArray() {
1.19 String[] arr = (String[]) Array.newInstance(String.class, 10);
1.20 @@ -46,6 +56,11 @@
1.21 return arr.length;
1.22 }
1.23
1.24 + @Compare public int reflectiveLengthOfIntArray() {
1.25 + Object arr = Array.newInstance(Integer.TYPE, 10);
1.26 + return Array.getLength(arr);
1.27 + }
1.28 +
1.29 @Compare public String compTypeOfIntArray() {
1.30 int[] arr = (int[]) Array.newInstance(int.class, 10);
1.31 return arr.getClass().getComponentType().getName();
1.32 @@ -54,6 +69,40 @@
1.33 @Compare public Object intNegativeArrayExcp() {
1.34 return Array.newInstance(int.class, -5);
1.35 }
1.36 +
1.37 + @Compare public Integer verifyAutobox() {
1.38 + int[] arr = (int[]) Array.newInstance(int.class, 5);
1.39 + return (Integer) Array.get(arr, 0);
1.40 + }
1.41 + @Compare public int verifyInt() {
1.42 + int[] arr = (int[]) Array.newInstance(int.class, 5);
1.43 + return Array.getInt(arr, 0);
1.44 + }
1.45 + @Compare public long verifyConvertToLong() {
1.46 + int[] arr = (int[]) Array.newInstance(int.class, 5);
1.47 + return Array.getLong(arr, 0);
1.48 + }
1.49 +
1.50 + @Compare public Object verifySetIntToObject() {
1.51 + Object[] arr = (Object[]) Array.newInstance(Object.class, 5);
1.52 + Array.setInt(arr, 0, 10);
1.53 + return Array.get(arr, 0);
1.54 + }
1.55 + @Compare public long verifySetShort() {
1.56 + int[] arr = (int[]) Array.newInstance(int.class, 5);
1.57 + Array.setShort(arr, 0, (short)10);
1.58 + return Array.getLong(arr, 0);
1.59 + }
1.60 + @Compare public long verifyCantSetLong() {
1.61 + int[] arr = (int[]) Array.newInstance(int.class, 5);
1.62 + Array.setLong(arr, 0, 10);
1.63 + return Array.getLong(arr, 0);
1.64 + }
1.65 +
1.66 + @Compare public double verifyConvertToDouble() {
1.67 + int[] arr = (int[]) Array.newInstance(int.class, 5);
1.68 + return Array.getDouble(arr, 0);
1.69 + }
1.70
1.71 @Compare public int multiIntArray() {
1.72 int[][][] arr = (int[][][]) Array.newInstance(int.class, 3, 3, 3);