Skip to content

Commit 638488d

Browse files
committed
Add missing test coverage for
org.apache.commons.lang3.ArrayUtils.shift(byte[], int, int, int)
1 parent 2de5281 commit 638488d

File tree

1 file changed

+44
-1
lines changed

1 file changed

+44
-1
lines changed

src/test/java/org/apache/commons/lang3/ArrayUtilsTest.java

Lines changed: 44 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4504,6 +4504,8 @@ void testShiftAllShort() {
45044504

45054505
@Test
45064506
void testShiftBoolean() {
4507+
ArrayUtils.shift((boolean[]) null, 1);
4508+
ArrayUtils.shift(new boolean[0], 1);
45074509
final boolean[] array = { true, true, false, false };
45084510
ArrayUtils.shift(array, 1);
45094511
assertFalse(array[0]);
@@ -4568,7 +4570,48 @@ void testShiftBooleanParams() {
45684570

45694571
@Test
45704572
void testShiftByte() {
4571-
final byte[] array = {1, 2, 3, 4};
4573+
ArrayUtils.shift((byte[]) null, 1);
4574+
ArrayUtils.shift(new byte[0], 1);
4575+
final byte[] array = { 1, 2, 3, 4 };
4576+
ArrayUtils.shift(array, 1);
4577+
assertEquals(4, array[0]);
4578+
assertEquals(1, array[1]);
4579+
assertEquals(2, array[2]);
4580+
assertEquals(3, array[3]);
4581+
ArrayUtils.shift(array, -1);
4582+
assertEquals(1, array[0]);
4583+
assertEquals(2, array[1]);
4584+
assertEquals(3, array[2]);
4585+
assertEquals(4, array[3]);
4586+
ArrayUtils.shift(array, 5);
4587+
assertEquals(4, array[0]);
4588+
assertEquals(1, array[1]);
4589+
assertEquals(2, array[2]);
4590+
assertEquals(3, array[3]);
4591+
ArrayUtils.shift(array, -3);
4592+
assertEquals(3, array[0]);
4593+
assertEquals(4, array[1]);
4594+
assertEquals(1, array[2]);
4595+
assertEquals(2, array[3]);
4596+
}
4597+
4598+
@Test
4599+
void testShiftByteParams() {
4600+
// edge cases where nothing happens
4601+
// (1) array == null
4602+
ArrayUtils.shift((byte[]) null, 0, 0, 0);
4603+
// (2) startIndexInclusive >= array.length - 1
4604+
ArrayUtils.shift(new byte[0], 100, 0, 0);
4605+
// (3) endIndexExclusive <= 0
4606+
byte[] array1 = { 1 };
4607+
ArrayUtils.shift(array1, -1, 0, 0);
4608+
assertArrayEquals(new byte[] { 1 }, array1);
4609+
// (4) n <= 1
4610+
byte[] array2 = { 1, 0, 1 };
4611+
ArrayUtils.shift(array2, 1, 1, 0);
4612+
assertArrayEquals(new byte[] { 1, 0, 1 }, array2);
4613+
// tests
4614+
final byte[] array = { 1, 2, 3, 4 };
45724615
ArrayUtils.shift(array, 1);
45734616
assertEquals(4, array[0]);
45744617
assertEquals(1, array[1]);

0 commit comments

Comments
 (0)