add toArray(int[])

This commit is contained in:
2017-10-07 10:01:38 +02:00
parent 56779368b8
commit cbe468cae8
2 changed files with 66 additions and 1 deletions

View File

@@ -285,6 +285,59 @@ public class IntListTest {
Assert.assertArrayEquals(actual, new int[0]);
}
@Test
public void testToArray() {
final IntList list = new IntList();
list.addAll(1, 2, 3, 4, 5, 6);
{
final int[] input = new int[1];
final int[] actual = list.toArray(input);
// input is too short -> new array returned
Assert.assertNotSame(input, actual);
Assert.assertArrayEquals(list.toArray(), actual);
}
{
final int[] input = new int[list.size()];
final int[] actual = list.toArray(input);
// input fits exactly -> input returned
Assert.assertSame(input, actual);
Assert.assertArrayEquals(list.toArray(), actual);
}
{
final int[] input = new int[list.size() + 1];
final int[] expected = { 1, 2, 3, 4, 5, 6, 0 };
final int[] actual = list.toArray(input);
// input too big -> input returned
Assert.assertSame(input, actual);
Assert.assertArrayEquals(expected, actual);
}
}
@Test
public void testToArrayWithEmptyList() {
final IntList list = new IntList();
{
final int[] input = new int[0];
final int[] actual = list.toArray(input);
// input fits exactly -> input returned
Assert.assertSame(input, actual);
Assert.assertArrayEquals(list.toArray(), actual);
}
{
final int[] input = new int[list.size() + 1];
final int[] expected = { 0 };
final int[] actual = list.toArray(input);
// input too big -> input returned
Assert.assertSame(input, actual);
Assert.assertArrayEquals(expected, actual);
}
}
@Test
public void testRemove() {
final IntList list = new IntList();