public void testCheckedCast() { for (char value : VALUES) { assertEquals(value, Chars.checkedCast((long) value)); } assertCastFails(GREATEST + 1L); assertCastFails(LEAST - 1L); assertCastFails(Long.MAX_VALUE); assertCastFails(Long.MIN_VALUE); }
public void testContains() { assertFalse(Chars.contains(EMPTY, (char) 1)); assertFalse(Chars.contains(ARRAY1, (char) 2)); assertFalse(Chars.contains(ARRAY234, (char) 1)); assertTrue(Chars.contains(new char[] {(char) -1}, (char) -1)); assertTrue(Chars.contains(ARRAY234, (char) 2)); assertTrue(Chars.contains(ARRAY234, (char) 3)); assertTrue(Chars.contains(ARRAY234, (char) 4)); }
public void testConcat() { assertTrue(Arrays.equals(EMPTY, Chars.concat())); assertTrue(Arrays.equals(EMPTY, Chars.concat(EMPTY))); assertTrue(Arrays.equals(EMPTY, Chars.concat(EMPTY, EMPTY, EMPTY))); assertTrue(Arrays.equals(ARRAY1, Chars.concat(ARRAY1))); assertNotSame(ARRAY1, Chars.concat(ARRAY1)); assertTrue(Arrays.equals(ARRAY1, Chars.concat(EMPTY, ARRAY1, EMPTY))); assertTrue( Arrays.equals( new char[] {(char) 1, (char) 1, (char) 1}, Chars.concat(ARRAY1, ARRAY1, ARRAY1))); assertTrue( Arrays.equals( new char[] {(char) 1, (char) 2, (char) 3, (char) 4}, Chars.concat(ARRAY1, ARRAY234))); }
public void testAsList_isAView() { char[] array = {(char) 0, (char) 1}; List<Character> list = Chars.asList(array); list.set(0, (char) 2); assertTrue(Arrays.equals(new char[] {(char) 2, (char) 1}, array)); array[1] = (char) 3; assertEquals(Arrays.asList((char) 2, (char) 3), list); }
private void assertCastFails(long value) { try { Chars.checkedCast(value); fail("Cast to char should have failed: " + value); } catch (IllegalArgumentException ex) { assertTrue( value + " not found in exception text: " + ex.getMessage(), ex.getMessage().contains(String.valueOf(value))); } }
public void testLastIndexOf() { assertEquals(-1, Chars.lastIndexOf(EMPTY, (char) 1)); assertEquals(-1, Chars.lastIndexOf(ARRAY1, (char) 2)); assertEquals(-1, Chars.lastIndexOf(ARRAY234, (char) 1)); assertEquals(0, Chars.lastIndexOf(new char[] {(char) -1}, (char) -1)); assertEquals(0, Chars.lastIndexOf(ARRAY234, (char) 2)); assertEquals(1, Chars.lastIndexOf(ARRAY234, (char) 3)); assertEquals(2, Chars.lastIndexOf(ARRAY234, (char) 4)); assertEquals( 3, Chars.lastIndexOf(new char[] {(char) 2, (char) 3, (char) 2, (char) 3}, (char) 3)); }
public void testToArray_withNull() { List<Character> list = Arrays.asList((char) 0, (char) 1, null); try { Chars.toArray(list); fail(); } catch (NullPointerException expected) { } }
private static void testSortDescending(char[] input, char[] expectedOutput) { input = Arrays.copyOf(input, input.length); Chars.sortDescending(input); assertTrue(Arrays.equals(expectedOutput, input)); }
public void testEnsureCapacity() { assertSame(EMPTY, Chars.ensureCapacity(EMPTY, 0, 1)); assertSame(ARRAY1, Chars.ensureCapacity(ARRAY1, 0, 1)); assertSame(ARRAY1, Chars.ensureCapacity(ARRAY1, 1, 1)); assertTrue( Arrays.equals( new char[] {(char) 1, (char) 0, (char) 0}, Chars.ensureCapacity(ARRAY1, 2, 1))); }
public void testConstrainToRange() { assertEquals((char) 1, Chars.constrainToRange((char) 1, (char) 0, (char) 5)); assertEquals((char) 1, Chars.constrainToRange((char) 1, (char) 1, (char) 5)); assertEquals((char) 3, Chars.constrainToRange((char) 1, (char) 3, (char) 5)); assertEquals((char) 254, Chars.constrainToRange((char) 255, (char) 250, (char) 254)); assertEquals((char) 2, Chars.constrainToRange((char) 5, (char) 2, (char) 2)); try { Chars.constrainToRange((char) 1, (char) 3, (char) 2); fail(); } catch (IllegalArgumentException expected) { } }
public void testSortDescendingIndexed() { testSortDescending(new char[] {}, 0, 0, new char[] {}); testSortDescending(new char[] {'1'}, 0, 1, new char[] {'1'}); testSortDescending(new char[] {'1', '2'}, 0, 2, new char[] {'2', '1'}); testSortDescending(new char[] {'1', '3', '1'}, 0, 2, new char[] {'3', '1', '1'}); testSortDescending(new char[] {'1', '3', '1'}, 0, 1, new char[] {'1', '3', '1'}); testSortDescending(new char[] {'A', '1', 'B', '2'}, 1, 3, new char[] {'A', 'B', '1', '2'}); }
public void testReverse() { testReverse(new char[] {}, new char[] {}); testReverse(new char[] {'1'}, new char[] {'1'}); testReverse(new char[] {'1', '2'}, new char[] {'2', '1'}); testReverse(new char[] {'3', '1', '1'}, new char[] {'1', '1', '3'}); testReverse(new char[] {'A', '1', 'B', '2'}, new char[] {'2', 'B', '1', 'A'}); }
public void testAsListEmpty() { assertSame(Collections.emptyList(), Chars.asList(EMPTY)); }
public void testMax() { assertEquals(LEAST, Chars.max(LEAST)); assertEquals(GREATEST, Chars.max(GREATEST)); assertEquals( (char) 9, Chars.max((char) 8, (char) 6, (char) 7, (char) 5, (char) 3, (char) 0, (char) 9)); }
public void testAsList_toArray_roundTrip() { char[] array = {(char) 0, (char) 1, (char) 2}; List<Character> list = Chars.asList(array); char[] newArray = Chars.toArray(list); // Make sure it returned a copy list.set(0, (char) 4); assertTrue(Arrays.equals(new char[] {(char) 0, (char) 1, (char) 2}, newArray)); newArray[1] = (char) 5; assertEquals((char) 1, (char) list.get(1)); }
public void testMax_noArgs() { try { Chars.max(); fail(); } catch (IllegalArgumentException expected) { } }
private static void testReverse(char[] input, char[] expectedOutput) { input = Arrays.copyOf(input, input.length); Chars.reverse(input); assertTrue(Arrays.equals(expectedOutput, input)); }
public void testEnsureCapacity() { assertSame(EMPTY, Chars.ensureCapacity(EMPTY, 0, 1)); assertSame(ARRAY1, Chars.ensureCapacity(ARRAY1, 0, 1)); assertSame(ARRAY1, Chars.ensureCapacity(ARRAY1, 1, 1)); assertTrue(Arrays.equals( new char[] {(char) 1, (char) 0, (char) 0}, Chars.ensureCapacity(ARRAY1, 2, 1))); }
private void assertCastFails(long value) { try { Chars.checkedCast(value); fail("Cast to char should have failed: " + value); } catch (IllegalArgumentException ex) { assertTrue(value + " not found in exception text: " + ex.getMessage(), ex.getMessage().contains(String.valueOf(value))); } }
public void testConstrainToRange() { assertEquals((char) 1, Chars.constrainToRange((char) 1, (char) 0, (char) 5)); assertEquals((char) 1, Chars.constrainToRange((char) 1, (char) 1, (char) 5)); assertEquals((char) 3, Chars.constrainToRange((char) 1, (char) 3, (char) 5)); assertEquals((char) 254, Chars.constrainToRange((char) 255, (char) 250, (char) 254)); assertEquals((char) 2, Chars.constrainToRange((char) 5, (char) 2, (char) 2)); try { Chars.constrainToRange((char) 1, (char) 3, (char) 2); fail(); } catch (IllegalArgumentException expected) { } }