| /* |
| * Licensed to the Apache Software Foundation (ASF) under one or more |
| * contributor license agreements. See the NOTICE file distributed with |
| * this work for additional information regarding copyright ownership. |
| * The ASF licenses this file to You under the Apache License, Version 2.0 |
| * (the "License"); you may not use this file except in compliance with |
| * the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| package tests.api.java.lang.reflect; |
| |
| import dalvik.annotation.TestTargets; |
| import dalvik.annotation.TestLevel; |
| import dalvik.annotation.TestTargetNew; |
| import dalvik.annotation.TestTargetClass; |
| |
| import java.lang.reflect.Array; |
| |
| @TestTargetClass(Array.class) |
| public class ArrayTest extends junit.framework.TestCase { |
| |
| /** |
| * @tests java.lang.reflect.Array#get(java.lang.Object, int) |
| */ |
| @TestTargetNew( |
| level = TestLevel.COMPLETE, |
| notes = "", |
| method = "get", |
| args = {java.lang.Object.class, int.class} |
| ) |
| public void test_getLjava_lang_ObjectI() { |
| // Test for method java.lang.Object |
| // java.lang.reflect.Array.get(java.lang.Object, int) |
| |
| int[] x = { 1 }; |
| Object ret = null; |
| boolean thrown = false; |
| try { |
| ret = Array.get(x, 0); |
| } catch (Exception e) { |
| fail("Exception during get test : " + e.getMessage()); |
| } |
| assertEquals("Get returned incorrect value", |
| 1, ((Integer) ret).intValue()); |
| try { |
| ret = Array.get(new Object(), 0); |
| } catch (IllegalArgumentException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Passing non-array failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| ret = Array.get(x, 4); |
| } catch (ArrayIndexOutOfBoundsException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Invalid index failed to throw exception"); |
| } |
| |
| //same test with non primitive component type |
| Integer[] y = new Integer[]{ 1 }; |
| ret = null; |
| thrown = false; |
| try { |
| ret = Array.get(y, 0); |
| } catch (Exception e) { |
| fail("Exception during get test : " + e.getMessage()); |
| } |
| assertEquals("Get returned incorrect value", |
| 1, ((Integer) ret).intValue()); |
| try { |
| ret = Array.get(new Object(), 0); |
| } catch (IllegalArgumentException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Passing non-array failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| ret = Array.get(y, 4); |
| } catch (ArrayIndexOutOfBoundsException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Invalid index failed to throw exception"); |
| } |
| } |
| |
| /** |
| * @tests java.lang.reflect.Array#getBoolean(java.lang.Object, int) |
| */ |
| @TestTargetNew( |
| level = TestLevel.COMPLETE, |
| notes = "", |
| method = "getBoolean", |
| args = {java.lang.Object.class, int.class} |
| ) |
| public void test_getBooleanLjava_lang_ObjectI() { |
| // Test for method boolean |
| // java.lang.reflect.Array.getBoolean(java.lang.Object, int) |
| boolean[] x = { true }; |
| boolean ret = false; |
| boolean thrown = false; |
| try { |
| ret = Array.getBoolean(x, 0); |
| } catch (Exception e) { |
| fail("Exception during get test : " + e.getMessage()); |
| } |
| assertTrue("Get returned incorrect value", ret); |
| try { |
| ret = Array.getBoolean(new Object(), 0); |
| } catch (IllegalArgumentException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Passing non-array failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| ret = Array.getBoolean(x, 4); |
| } catch (ArrayIndexOutOfBoundsException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Invalid index failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| ret = Array.getBoolean(null, 0); |
| } catch (NullPointerException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Null argument failed to throw NPE"); |
| } |
| } |
| |
| /** |
| * @tests java.lang.reflect.Array#getByte(java.lang.Object, int) |
| */ |
| @TestTargetNew( |
| level = TestLevel.COMPLETE, |
| notes = "", |
| method = "getByte", |
| args = {java.lang.Object.class, int.class} |
| ) |
| public void test_getByteLjava_lang_ObjectI() { |
| // Test for method byte |
| // java.lang.reflect.Array.getByte(java.lang.Object, int) |
| byte[] x = { 1 }; |
| byte ret = 0; |
| boolean thrown = false; |
| try { |
| ret = Array.getByte(x, 0); |
| } catch (Exception e) { |
| fail("Exception during get test : " + e.getMessage()); |
| } |
| assertEquals("Get returned incorrect value", 1, ret); |
| try { |
| ret = Array.getByte(new Object(), 0); |
| } catch (IllegalArgumentException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Passing non-array failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| ret = Array.getByte(x, 4); |
| } catch (ArrayIndexOutOfBoundsException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Invalid index failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| ret = Array.getByte(null, 0); |
| } catch (NullPointerException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Null argument failed to throw NPE"); |
| } |
| } |
| |
| /** |
| * @tests java.lang.reflect.Array#getChar(java.lang.Object, int) |
| */ |
| @TestTargetNew( |
| level = TestLevel.COMPLETE, |
| notes = "", |
| method = "getChar", |
| args = {java.lang.Object.class, int.class} |
| ) |
| public void test_getCharLjava_lang_ObjectI() { |
| // Test for method char |
| // java.lang.reflect.Array.getChar(java.lang.Object, int) |
| char[] x = { 1 }; |
| char ret = 0; |
| boolean thrown = false; |
| try { |
| ret = Array.getChar(x, 0); |
| } catch (Exception e) { |
| fail("Exception during get test : " + e.getMessage()); |
| } |
| assertEquals("Get returned incorrect value", 1, ret); |
| try { |
| ret = Array.getChar(new Object(), 0); |
| } catch (IllegalArgumentException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Passing non-array failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| ret = Array.getChar(x, 4); |
| } catch (ArrayIndexOutOfBoundsException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Invalid index failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| ret = Array.getChar(null, 0); |
| } catch (NullPointerException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Null argument failed to throw NPE"); |
| } |
| } |
| |
| /** |
| * @tests java.lang.reflect.Array#getDouble(java.lang.Object, int) |
| */ |
| @TestTargetNew( |
| level = TestLevel.COMPLETE, |
| notes = "", |
| method = "getDouble", |
| args = {java.lang.Object.class, int.class} |
| ) |
| public void test_getDoubleLjava_lang_ObjectI() { |
| // Test for method double |
| // java.lang.reflect.Array.getDouble(java.lang.Object, int) |
| double[] x = { 1 }; |
| double ret = 0; |
| boolean thrown = false; |
| try { |
| ret = Array.getDouble(x, 0); |
| } catch (Exception e) { |
| fail("Exception during get test : " + e.getMessage()); |
| } |
| assertEquals("Get returned incorrect value", 1, ret, 0.0); |
| try { |
| ret = Array.getDouble(new Object(), 0); |
| } catch (IllegalArgumentException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| |
| if (!thrown) { |
| fail("Passing non-array failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| ret = Array.getDouble(x, 4); |
| } catch (ArrayIndexOutOfBoundsException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Invalid index failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| ret = Array.getDouble(null, 0); |
| } catch (NullPointerException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Null argument failed to throw NPE"); |
| } |
| } |
| |
| /** |
| * @tests java.lang.reflect.Array#getFloat(java.lang.Object, int) |
| */ |
| @TestTargetNew( |
| level = TestLevel.COMPLETE, |
| notes = "", |
| method = "getFloat", |
| args = {java.lang.Object.class, int.class} |
| ) |
| public void test_getFloatLjava_lang_ObjectI() { |
| // Test for method float |
| // java.lang.reflect.Array.getFloat(java.lang.Object, int) |
| float[] x = { 1 }; |
| float ret = 0; |
| boolean thrown = false; |
| try { |
| ret = Array.getFloat(x, 0); |
| } catch (Exception e) { |
| fail("Exception during get test : " + e.getMessage()); |
| } |
| assertEquals("Get returned incorrect value", 1, ret, 0.0); |
| try { |
| ret = Array.getFloat(new Object(), 0); |
| } catch (IllegalArgumentException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Passing non-array failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| ret = Array.getFloat(x, 4); |
| } catch (ArrayIndexOutOfBoundsException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Invalid index failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| ret = Array.getFloat(null, 0); |
| } catch (NullPointerException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Null argument failed to throw NPE"); |
| } |
| } |
| |
| /** |
| * @tests java.lang.reflect.Array#getInt(java.lang.Object, int) |
| */ |
| @TestTargetNew( |
| level = TestLevel.COMPLETE, |
| notes = "", |
| method = "getInt", |
| args = {java.lang.Object.class, int.class} |
| ) |
| public void test_getIntLjava_lang_ObjectI() { |
| // Test for method int java.lang.reflect.Array.getInt(java.lang.Object, |
| // int) |
| int[] x = { 1 }; |
| int ret = 0; |
| boolean thrown = false; |
| try { |
| ret = Array.getInt(x, 0); |
| } catch (Exception e) { |
| fail("Exception during get test : " + e.getMessage()); |
| } |
| assertEquals("Get returned incorrect value", 1, ret); |
| try { |
| ret = Array.getInt(new Object(), 0); |
| } catch (IllegalArgumentException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Passing non-array failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| ret = Array.getInt(x, 4); |
| } catch (ArrayIndexOutOfBoundsException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Invalid index failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| ret = Array.getInt(null, 0); |
| } catch (NullPointerException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Null argument failed to throw NPE"); |
| } |
| } |
| |
| /** |
| * @tests java.lang.reflect.Array#getLength(java.lang.Object) |
| */ |
| @TestTargetNew( |
| level = TestLevel.COMPLETE, |
| notes = "", |
| method = "getLength", |
| args = {java.lang.Object.class} |
| ) |
| public void test_getLengthLjava_lang_Object() { |
| // Test for method int |
| // java.lang.reflect.Array.getLength(java.lang.Object) |
| long[] x = { 1 }; |
| |
| assertEquals("Returned incorrect length", 1, Array.getLength(x)); |
| assertEquals("Returned incorrect length", 10000, Array |
| .getLength(new Object[10000])); |
| try { |
| Array.getLength(new Object()); |
| } catch (IllegalArgumentException e) { |
| // Correct |
| return; |
| } |
| fail("Failed to throw exception when passed non-array"); |
| } |
| |
| /** |
| * @tests java.lang.reflect.Array#getLong(java.lang.Object, int) |
| */ |
| @TestTargetNew( |
| level = TestLevel.COMPLETE, |
| notes = "", |
| method = "getLong", |
| args = {java.lang.Object.class, int.class} |
| ) |
| public void test_getLongLjava_lang_ObjectI() { |
| // Test for method long |
| // java.lang.reflect.Array.getLong(java.lang.Object, int) |
| long[] x = { 1 }; |
| long ret = 0; |
| boolean thrown = false; |
| try { |
| ret = Array.getLong(x, 0); |
| } catch (Exception e) { |
| fail("Exception during get test : " + e.getMessage()); |
| } |
| assertEquals("Get returned incorrect value", 1, ret); |
| try { |
| ret = Array.getLong(new Object(), 0); |
| } catch (IllegalArgumentException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Passing non-array failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| ret = Array.getLong(x, 4); |
| } catch (ArrayIndexOutOfBoundsException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Invalid index failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| ret = Array.getLong(null, 0); |
| } catch (NullPointerException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Null argument failed to throw NPE"); |
| } |
| } |
| |
| /** |
| * @tests java.lang.reflect.Array#getShort(java.lang.Object, int) |
| */ |
| @TestTargetNew( |
| level = TestLevel.COMPLETE, |
| notes = "", |
| method = "getShort", |
| args = {java.lang.Object.class, int.class} |
| ) |
| public void test_getShortLjava_lang_ObjectI() { |
| // Test for method short |
| // java.lang.reflect.Array.getShort(java.lang.Object, int) |
| short[] x = { 1 }; |
| short ret = 0; |
| boolean thrown = false; |
| try { |
| ret = Array.getShort(x, 0); |
| } catch (Exception e) { |
| fail("Exception during get test : " + e.getMessage()); |
| } |
| assertEquals("Get returned incorrect value", 1, ret); |
| try { |
| ret = Array.getShort(new Object(), 0); |
| } catch (IllegalArgumentException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Passing non-array failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| ret = Array.getShort(x, 4); |
| } catch (ArrayIndexOutOfBoundsException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Invalid index failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| ret = Array.getShort(null, 0); |
| } catch (NullPointerException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Null argument failed to throw NPE"); |
| } |
| } |
| |
| /** |
| * @tests java.lang.reflect.Array#newInstance(java.lang.Class, int[]) |
| */ |
| @TestTargetNew( |
| level = TestLevel.COMPLETE, |
| notes = "", |
| method = "newInstance", |
| args = {java.lang.Class.class, int[].class} |
| ) |
| public void test_newInstanceLjava_lang_Class$I() { |
| // Test for method java.lang.Object |
| // java.lang.reflect.Array.newInstance(java.lang.Class, int []) |
| int[][] x; |
| int[] y = { 2 }; |
| |
| x = (int[][]) Array.newInstance(int[].class, y); |
| assertEquals("Failed to instantiate array properly", 2, x.length); |
| |
| boolean thrown = false; |
| try { |
| x = (int[][]) Array.newInstance(null, y); |
| } catch (NullPointerException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Null argument failed to throw NPE"); |
| } |
| |
| thrown = false; |
| try { |
| Array.newInstance(int[].class, new int[]{1,-1}); |
| } catch (NegativeArraySizeException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Negative array size failed to throw NegativeArraySizeException"); |
| } |
| |
| thrown = false; |
| try { |
| Array.newInstance(int[].class, new int[]{}); |
| } catch (IllegalArgumentException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Zero array size failed to throw IllegalArgumentException"); |
| } |
| } |
| |
| /** |
| * @tests java.lang.reflect.Array#newInstance(java.lang.Class, int) |
| */ |
| @TestTargetNew( |
| level = TestLevel.COMPLETE, |
| notes = "", |
| method = "newInstance", |
| args = {java.lang.Class.class, int.class} |
| ) |
| public void test_newInstanceLjava_lang_ClassI() { |
| // Test for method java.lang.Object |
| // java.lang.reflect.Array.newInstance(java.lang.Class, int) |
| int[] x; |
| |
| x = (int[]) Array.newInstance(int.class, 100); |
| assertEquals("Failed to instantiate array properly", 100, x.length); |
| |
| boolean thrown = false; |
| try { |
| Array.newInstance(null, 100); |
| } catch (NullPointerException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Null argument failed to throw NPE"); |
| } |
| |
| thrown = false; |
| try { |
| Array.newInstance(int[].class, -1); |
| } catch (NegativeArraySizeException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Negative array size failed to throw NegativeArraySizeException"); |
| } |
| } |
| |
| /** |
| * @tests java.lang.reflect.Array#set(java.lang.Object, int, |
| * java.lang.Object) |
| */ |
| @TestTargetNew( |
| level = TestLevel.COMPLETE, |
| notes = "", |
| method = "set", |
| args = {java.lang.Object.class, int.class, java.lang.Object.class} |
| ) |
| public void test_setLjava_lang_ObjectILjava_lang_Object() { |
| // Test for method void java.lang.reflect.Array.set(java.lang.Object, |
| // int, java.lang.Object) |
| int[] x = { 0 }; |
| boolean thrown = false; |
| try { |
| Array.set(x, 0, new Integer(1)); |
| } catch (Exception e) { |
| fail("Exception during get test : " + e.getMessage()); |
| } |
| assertEquals("Get returned incorrect value", 1, ((Integer) Array.get(x, 0)) |
| .intValue()); |
| try { |
| Array.set(new Object(), 0, new Object()); |
| } catch (IllegalArgumentException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Passing non-array failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| Array.set(x, 4, new Integer(1)); |
| } catch (ArrayIndexOutOfBoundsException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Invalid index failed to throw exception"); |
| } |
| |
| // trying to put null in a primitive array causes |
| // a IllegalArgumentException in 5.0 |
| boolean exception = false; |
| try { |
| Array.set(new int[1], 0, null); |
| } catch (IllegalArgumentException e) { |
| exception = true; |
| } |
| assertTrue("expected exception not thrown", exception); |
| |
| thrown = false; |
| try { |
| Array.set(null, 0, 2); |
| } catch (NullPointerException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Null argument failed to throw NPE"); |
| } |
| } |
| |
| /** |
| * @tests java.lang.reflect.Array#setBoolean(java.lang.Object, int, boolean) |
| */ |
| @TestTargetNew( |
| level = TestLevel.COMPLETE, |
| notes = "", |
| method = "setBoolean", |
| args = {java.lang.Object.class, int.class, boolean.class} |
| ) |
| public void test_setBooleanLjava_lang_ObjectIZ() { |
| // Test for method void |
| // java.lang.reflect.Array.setBoolean(java.lang.Object, int, boolean) |
| boolean[] x = { false }; |
| boolean thrown = false; |
| try { |
| Array.setBoolean(x, 0, true); |
| } catch (Exception e) { |
| fail("Exception during get test : " + e.getMessage()); |
| } |
| assertTrue("Failed to set correct value", Array.getBoolean(x, 0)); |
| try { |
| Array.setBoolean(new Object(), 0, false); |
| } catch (IllegalArgumentException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown){ |
| fail("Passing non-array failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| Array.setBoolean(x, 4, false); |
| } catch (ArrayIndexOutOfBoundsException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Invalid index failed to throw exception"); |
| } |
| |
| thrown = false; |
| try { |
| Array.setBoolean(null, 0, true); |
| } catch (NullPointerException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Null argument failed to throw NPE"); |
| } |
| } |
| |
| /** |
| * @tests java.lang.reflect.Array#setByte(java.lang.Object, int, byte) |
| */ |
| @TestTargetNew( |
| level = TestLevel.COMPLETE, |
| notes = "", |
| method = "setByte", |
| args = {java.lang.Object.class, int.class, byte.class} |
| ) |
| public void test_setByteLjava_lang_ObjectIB() { |
| // Test for method void |
| // java.lang.reflect.Array.setByte(java.lang.Object, int, byte) |
| byte[] x = { 0 }; |
| boolean thrown = false; |
| try { |
| Array.setByte(x, 0, (byte) 1); |
| } catch (Exception e) { |
| fail("Exception during get test : " + e.getMessage()); |
| } |
| assertEquals("Get returned incorrect value", 1, Array.getByte(x, 0)); |
| try { |
| Array.setByte(new Object(), 0, (byte) 9); |
| } catch (IllegalArgumentException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Passing non-array failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| Array.setByte(x, 4, (byte) 9); |
| } catch (ArrayIndexOutOfBoundsException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Invalid index failed to throw exception"); |
| } |
| |
| thrown = false; |
| try { |
| Array.setByte(null, 0, (byte)0); |
| } catch (NullPointerException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Null argument failed to throw NPE"); |
| } |
| } |
| |
| /** |
| * @tests java.lang.reflect.Array#setChar(java.lang.Object, int, char) |
| */ |
| @TestTargetNew( |
| level = TestLevel.COMPLETE, |
| notes = "", |
| method = "setChar", |
| args = {java.lang.Object.class, int.class, char.class} |
| ) |
| public void test_setCharLjava_lang_ObjectIC() { |
| // Test for method void |
| // java.lang.reflect.Array.setChar(java.lang.Object, int, char) |
| char[] x = { 0 }; |
| boolean thrown = false; |
| try { |
| Array.setChar(x, 0, (char) 1); |
| } catch (Exception e) { |
| fail("Exception during get test : " + e.getMessage()); |
| } |
| assertEquals("Get returned incorrect value", 1, Array.getChar(x, 0)); |
| try { |
| Array.setChar(new Object(), 0, (char) 9); |
| } catch (IllegalArgumentException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Passing non-array failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| Array.setChar(x, 4, (char) 9); |
| } catch (ArrayIndexOutOfBoundsException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Invalid index failed to throw exception"); |
| } |
| |
| thrown = false; |
| try { |
| Array.setChar(null, 0, (char)0); |
| } catch (NullPointerException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Null argument failed to throw NPE"); |
| } |
| } |
| |
| /** |
| * @tests java.lang.reflect.Array#setDouble(java.lang.Object, int, double) |
| */ |
| @TestTargetNew( |
| level = TestLevel.COMPLETE, |
| notes = "", |
| method = "setDouble", |
| args = {java.lang.Object.class, int.class, double.class} |
| ) |
| public void test_setDoubleLjava_lang_ObjectID() { |
| // Test for method void |
| // java.lang.reflect.Array.setDouble(java.lang.Object, int, double) |
| double[] x = { 0 }; |
| boolean thrown = false; |
| try { |
| Array.setDouble(x, 0, 1); |
| } catch (Exception e) { |
| fail("Exception during get test : " + e.getMessage()); |
| } |
| assertEquals("Get returned incorrect value", 1, Array.getDouble(x, 0), 0.0); |
| try { |
| Array.setDouble(new Object(), 0, 9); |
| } catch (IllegalArgumentException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Passing non-array failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| Array.setDouble(x, 4, 9); |
| } catch (ArrayIndexOutOfBoundsException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Invalid index failed to throw exception"); |
| } |
| |
| thrown = false; |
| try { |
| Array.setDouble(null, 0, 0); |
| } catch (NullPointerException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Null argument failed to throw NPE"); |
| } |
| } |
| |
| /** |
| * @tests java.lang.reflect.Array#setFloat(java.lang.Object, int, float) |
| */ |
| @TestTargetNew( |
| level = TestLevel.COMPLETE, |
| notes = "", |
| method = "setFloat", |
| args = {java.lang.Object.class, int.class, float.class} |
| ) |
| public void test_setFloatLjava_lang_ObjectIF() { |
| // Test for method void |
| // java.lang.reflect.Array.setFloat(java.lang.Object, int, float) |
| float[] x = { 0.0f }; |
| boolean thrown = false; |
| try { |
| Array.setFloat(x, 0, (float) 1); |
| } catch (Exception e) { |
| fail("Exception during get test : " + e.getMessage()); |
| } |
| assertEquals("Get returned incorrect value", 1, Array.getFloat(x, 0), 0.0); |
| try { |
| Array.setFloat(new Object(), 0, (float) 9); |
| } catch (IllegalArgumentException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Passing non-array failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| Array.setFloat(x, 4, (float) 9); |
| } catch (ArrayIndexOutOfBoundsException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Invalid index failed to throw exception"); |
| } |
| |
| thrown = false; |
| try { |
| Array.setFloat(null, 0, 0); |
| } catch (NullPointerException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Null argument failed to throw NPE"); |
| } |
| } |
| |
| /** |
| * @tests java.lang.reflect.Array#setInt(java.lang.Object, int, int) |
| */ |
| @TestTargetNew( |
| level = TestLevel.COMPLETE, |
| notes = "", |
| method = "setInt", |
| args = {java.lang.Object.class, int.class, int.class} |
| ) |
| public void test_setIntLjava_lang_ObjectII() { |
| // Test for method void java.lang.reflect.Array.setInt(java.lang.Object, |
| // int, int) |
| int[] x = { 0 }; |
| boolean thrown = false; |
| try { |
| Array.setInt(x, 0, (int) 1); |
| } catch (Exception e) { |
| fail("Exception during get test : " + e.getMessage()); |
| } |
| assertEquals("Get returned incorrect value", 1, Array.getInt(x, 0)); |
| try { |
| Array.setInt(new Object(), 0, (int) 9); |
| } catch (IllegalArgumentException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Passing non-array failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| Array.setInt(x, 4, (int) 9); |
| } catch (ArrayIndexOutOfBoundsException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Invalid index failed to throw exception"); |
| } |
| |
| thrown = false; |
| try { |
| Array.setInt(null, 0, 0); |
| } catch (NullPointerException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Null argument failed to throw NPE"); |
| } |
| } |
| |
| /** |
| * @tests java.lang.reflect.Array#setLong(java.lang.Object, int, long) |
| */ |
| @TestTargetNew( |
| level = TestLevel.COMPLETE, |
| notes = "", |
| method = "setLong", |
| args = {java.lang.Object.class, int.class, long.class} |
| ) |
| public void test_setLongLjava_lang_ObjectIJ() { |
| // Test for method void |
| // java.lang.reflect.Array.setLong(java.lang.Object, int, long) |
| long[] x = { 0 }; |
| boolean thrown = false; |
| try { |
| Array.setLong(x, 0, 1); |
| } catch (Exception e) { |
| fail("Exception during get test : " + e.getMessage()); |
| } |
| assertEquals("Get returned incorrect value", 1, Array.getLong(x, 0)); |
| try { |
| Array.setLong(new Object(), 0, 9); |
| } catch (IllegalArgumentException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Passing non-array failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| Array.setLong(x, 4, 9); |
| } catch (ArrayIndexOutOfBoundsException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Invalid index failed to throw exception"); |
| } |
| |
| thrown = false; |
| try { |
| Array.setLong(null, 0, 0); |
| } catch (NullPointerException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Null argument failed to throw NPE"); |
| } |
| } |
| |
| /** |
| * @tests java.lang.reflect.Array#setShort(java.lang.Object, int, short) |
| */ |
| @TestTargetNew( |
| level = TestLevel.COMPLETE, |
| notes = "", |
| method = "setShort", |
| args = {java.lang.Object.class, int.class, short.class} |
| ) |
| public void test_setShortLjava_lang_ObjectIS() { |
| // Test for method void |
| // java.lang.reflect.Array.setShort(java.lang.Object, int, short) |
| short[] x = { 0 }; |
| boolean thrown = false; |
| try { |
| Array.setShort(x, 0, (short) 1); |
| } catch (Exception e) { |
| fail("Exception during get test : " + e.getMessage()); |
| } |
| assertEquals("Get returned incorrect value", 1, Array.getShort(x, 0)); |
| try { |
| Array.setShort(new Object(), 0, (short) 9); |
| } catch (IllegalArgumentException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Passing non-array failed to throw exception"); |
| } |
| thrown = false; |
| try { |
| Array.setShort(x, 4, (short) 9); |
| } catch (ArrayIndexOutOfBoundsException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Invalid index failed to throw exception"); |
| } |
| |
| thrown = false; |
| try { |
| Array.setShort(null, 0, (short)0); |
| } catch (NullPointerException e) { |
| // Correct behaviour |
| thrown = true; |
| } |
| if (!thrown) { |
| fail("Null argument failed to throw NPE"); |
| } |
| } |
| |
| /** |
| * Sets up the fixture, for example, open a network connection. This method |
| * is called before a test is executed. |
| */ |
| protected void setUp() { |
| } |
| |
| /** |
| * Tears down the fixture, for example, close a network connection. This |
| * method is called after a test is executed. |
| */ |
| protected void tearDown() { |
| } |
| } |