@Test
public void testCopyOfGeneric() {

	assertArrayEquals(new String[] {}, ArrayUtils.copyOf(new String[] { "1", "2", "3" }, 0));
	assertArrayEquals(new String[] { "1" }, ArrayUtils.copyOf(new String[] { "1", "2", "3" }, 1));
	assertArrayEquals(new String[] { "1", "2" }, ArrayUtils.copyOf(new String[] { "1", "2", "3" }, 2));
	assertArrayEquals(new String[] { "1", "2", "3" }, ArrayUtils.copyOf(new String[] { "1", "2", "3" }, 3));
	assertArrayEquals(new String[] { "1", "2", "3", null }, ArrayUtils.copyOf(new String[] { "1", "2", "3" }, 4));
	try {
		ArrayUtils.copyOf(new String[] { "1", "2", "3" }, -1);
		fail("Should have thrown");
	} catch (NegativeArraySizeException e) {
	}
}