@@ -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