61 Object array = MethodHandles.arrayConstructor(arrayClass).invoke(10); 62 assertEquals(10, arrayLength.invoke(array)); 63 } 64 65 @Test(dataProvider = "arrayClasses", expectedExceptions = NullPointerException.class) 66 public void testArrayLengthInvokeNPE(Class<?> arrayClass) throws Throwable { 67 MethodHandle arrayLength = MethodHandles.arrayLength(arrayClass); 68 arrayLength.invoke(null); 69 } 70 71 @Test(expectedExceptions = IllegalArgumentException.class) 72 public void testArrayLengthNoArray() { 73 MethodHandles.arrayLength(String.class); 74 } 75 76 @Test(expectedExceptions = NullPointerException.class) 77 public void testArrayLengthNPE() { 78 MethodHandles.arrayLength(null); 79 } 80 81 } | 61 Object array = MethodHandles.arrayConstructor(arrayClass).invoke(10); 62 assertEquals(10, arrayLength.invoke(array)); 63 } 64 65 @Test(dataProvider = "arrayClasses", expectedExceptions = NullPointerException.class) 66 public void testArrayLengthInvokeNPE(Class<?> arrayClass) throws Throwable { 67 MethodHandle arrayLength = MethodHandles.arrayLength(arrayClass); 68 arrayLength.invoke(null); 69 } 70 71 @Test(expectedExceptions = IllegalArgumentException.class) 72 public void testArrayLengthNoArray() { 73 MethodHandles.arrayLength(String.class); 74 } 75 76 @Test(expectedExceptions = NullPointerException.class) 77 public void testArrayLengthNPE() { 78 MethodHandles.arrayLength(null); 79 } 80 81 @Test(expectedExceptions = NullPointerException.class) 82 public void testNullReference() throws Throwable { 83 MethodHandle arrayLength = MethodHandles.arrayLength(String[].class); 84 arrayLength.invokeExact(null); 85 } 86 } |