private static void testReverse(double[] input, double[] expectedOutput) { input = Arrays.copyOf(input, input.length); Doubles.reverse(input); assertTrue(Arrays.equals(expectedOutput, input)); }
private static void testReverse( double[] input, int fromIndex, int toIndex, double[] expectedOutput) { input = Arrays.copyOf(input, input.length); Doubles.reverse(input, fromIndex, toIndex); assertTrue(Arrays.equals(expectedOutput, input)); }
public void testToArray() { // need explicit type parameter to avoid javac warning!? List<Double> none = Arrays.<Double>asList(); assertTrue(Arrays.equals(EMPTY, Doubles.toArray(none))); List<Double> one = Arrays.asList((double) 1); assertTrue(Arrays.equals(ARRAY1, Doubles.toArray(one))); double[] array = {(double) 0, (double) 1, Math.PI}; List<Double> three = Arrays.asList((double) 0, (double) 1, Math.PI); assertTrue(Arrays.equals(array, Doubles.toArray(three))); assertTrue(Arrays.equals(array, Doubles.toArray(Doubles.asList(array)))); }
public void testToArray_withConversion() { double[] array = {(double) 0, (double) 1, (double) 2}; List<Byte> bytes = Arrays.asList((byte) 0, (byte) 1, (byte) 2); List<Short> shorts = Arrays.asList((short) 0, (short) 1, (short) 2); List<Integer> ints = Arrays.asList(0, 1, 2); List<Float> floats = Arrays.asList((float) 0, (float) 1, (float) 2); List<Long> longs = Arrays.asList((long) 0, (long) 1, (long) 2); List<Double> doubles = Arrays.asList((double) 0, (double) 1, (double) 2); assertTrue(Arrays.equals(array, Doubles.toArray(bytes))); assertTrue(Arrays.equals(array, Doubles.toArray(shorts))); assertTrue(Arrays.equals(array, Doubles.toArray(ints))); assertTrue(Arrays.equals(array, Doubles.toArray(floats))); assertTrue(Arrays.equals(array, Doubles.toArray(longs))); assertTrue(Arrays.equals(array, Doubles.toArray(doubles))); }
public void testAsList_subList_toArray_roundTrip() { double[] array = {(double) 0, (double) 1, (double) 2, (double) 3}; List<Double> list = Doubles.asList(array); assertTrue( Arrays.equals(new double[] {(double) 1, (double) 2}, Doubles.toArray(list.subList(1, 3)))); assertTrue(Arrays.equals(new double[] {}, Doubles.toArray(list.subList(2, 2)))); }
public void testConcat() { assertTrue(Arrays.equals(EMPTY, Doubles.concat())); assertTrue(Arrays.equals(EMPTY, Doubles.concat(EMPTY))); assertTrue(Arrays.equals(EMPTY, Doubles.concat(EMPTY, EMPTY, EMPTY))); assertTrue(Arrays.equals(ARRAY1, Doubles.concat(ARRAY1))); assertNotSame(ARRAY1, Doubles.concat(ARRAY1)); assertTrue(Arrays.equals(ARRAY1, Doubles.concat(EMPTY, ARRAY1, EMPTY))); assertTrue( Arrays.equals( new double[] {(double) 1, (double) 1, (double) 1}, Doubles.concat(ARRAY1, ARRAY1, ARRAY1))); assertTrue( Arrays.equals( new double[] {(double) 1, (double) 2, (double) 3, (double) 4}, Doubles.concat(ARRAY1, ARRAY234))); }
public void testAsList_isAView() { double[] array = {(double) 0, (double) 1}; List<Double> list = Doubles.asList(array); list.set(0, (double) 2); assertTrue(Arrays.equals(new double[] {(double) 2, (double) 1}, array)); array[1] = (double) 3; assertThat(list).containsExactly((double) 2, (double) 3).inOrder(); }
public void testAsList_toArray_roundTrip() { double[] array = {(double) 0, (double) 1, (double) 2}; List<Double> list = Doubles.asList(array); double[] newArray = Doubles.toArray(list); // Make sure it returned a copy list.set(0, (double) 4); assertTrue(Arrays.equals(new double[] {(double) 0, (double) 1, (double) 2}, newArray)); newArray[1] = (double) 5; assertEquals((double) 1, (double) list.get(1)); }
public void testContains() { assertFalse(Doubles.contains(EMPTY, (double) 1)); assertFalse(Doubles.contains(ARRAY1, (double) 2)); assertFalse(Doubles.contains(ARRAY234, (double) 1)); assertTrue(Doubles.contains(new double[] {(double) -1}, (double) -1)); assertTrue(Doubles.contains(ARRAY234, (double) 2)); assertTrue(Doubles.contains(ARRAY234, (double) 3)); assertTrue(Doubles.contains(ARRAY234, (double) 4)); for (double value : NUMBERS) { assertTrue("" + value, Doubles.contains(new double[] {5.0, value}, value)); } assertFalse(Doubles.contains(new double[] {5.0, NaN}, NaN)); }
public void testEnsureCapacity() { assertSame(EMPTY, Doubles.ensureCapacity(EMPTY, 0, 1)); assertSame(ARRAY1, Doubles.ensureCapacity(ARRAY1, 0, 1)); assertSame(ARRAY1, Doubles.ensureCapacity(ARRAY1, 1, 1)); assertTrue( Arrays.equals( new double[] {(double) 1, (double) 0, (double) 0}, Doubles.ensureCapacity(ARRAY1, 2, 1))); }
public void testMax() { assertEquals(LEAST, Doubles.max(LEAST)); assertEquals(GREATEST, Doubles.max(GREATEST)); assertEquals( (double) 9, Doubles.max( (double) 8, (double) 6, (double) 7, (double) 5, (double) 3, (double) 0, (double) 9)); assertEquals(0.0, Doubles.max(-0.0, 0.0)); assertEquals(0.0, Doubles.max(0.0, -0.0)); assertEquals(GREATEST, Doubles.max(NUMBERS)); assertTrue(Double.isNaN(Doubles.max(VALUES))); }
public void testMin() { assertEquals(LEAST, Doubles.min(LEAST)); assertEquals(GREATEST, Doubles.min(GREATEST)); assertEquals( (double) 0, Doubles.min( (double) 8, (double) 6, (double) 7, (double) 5, (double) 3, (double) 0, (double) 9)); assertEquals(-0.0, Doubles.min(-0.0, 0.0)); assertEquals(-0.0, Doubles.min(0.0, -0.0)); assertEquals(LEAST, Doubles.min(NUMBERS)); assertTrue(Double.isNaN(Doubles.min(VALUES))); }
private static void testReverse( double[] input, int fromIndex, int toIndex, double[] expectedOutput) { input = Arrays.copyOf(input, input.length); Doubles.reverse(input, fromIndex, toIndex); assertTrue(Arrays.equals(expectedOutput, input)); }
public void testToArray() { // need explicit type parameter to avoid javac warning!? List<Double> none = Arrays.<Double>asList(); assertTrue(Arrays.equals(EMPTY, Doubles.toArray(none))); List<Double> one = Arrays.asList((double) 1); assertTrue(Arrays.equals(ARRAY1, Doubles.toArray(one))); double[] array = {(double) 0, (double) 1, Math.PI}; List<Double> three = Arrays.asList((double) 0, (double) 1, Math.PI); assertTrue(Arrays.equals(array, Doubles.toArray(three))); assertTrue(Arrays.equals(array, Doubles.toArray(Doubles.asList(array)))); }
public void testAsList_subList_toArray_roundTrip() { double[] array = { (double) 0, (double) 1, (double) 2, (double) 3 }; List<Double> list = Doubles.asList(array); assertTrue(Arrays.equals(new double[] { (double) 1, (double) 2 }, Doubles.toArray(list.subList(1, 3)))); assertTrue(Arrays.equals(new double[] {}, Doubles.toArray(list.subList(2, 2)))); }
public void testAsList_isAView() { double[] array = {(double) 0, (double) 1}; List<Double> list = Doubles.asList(array); list.set(0, (double) 2); assertTrue(Arrays.equals(new double[] {(double) 2, (double) 1}, array)); array[1] = (double) 3; assertThat(list).containsExactly((double) 2, (double) 3).inOrder(); }
public void testAsList_toArray_roundTrip() { double[] array = { (double) 0, (double) 1, (double) 2 }; List<Double> list = Doubles.asList(array); double[] newArray = Doubles.toArray(list); // Make sure it returned a copy list.set(0, (double) 4); assertTrue(Arrays.equals( new double[] { (double) 0, (double) 1, (double) 2 }, newArray)); newArray[1] = (double) 5; assertEquals((double) 1, (double) list.get(1)); }
public void testEnsureCapacity() { assertSame(EMPTY, Doubles.ensureCapacity(EMPTY, 0, 1)); assertSame(ARRAY1, Doubles.ensureCapacity(ARRAY1, 0, 1)); assertSame(ARRAY1, Doubles.ensureCapacity(ARRAY1, 1, 1)); assertTrue(Arrays.equals( new double[] {(double) 1, (double) 0, (double) 0}, Doubles.ensureCapacity(ARRAY1, 2, 1))); }
public void testMin() { assertEquals(LEAST, Doubles.min(LEAST)); assertEquals(GREATEST, Doubles.min(GREATEST)); assertEquals((double) 0, Doubles.min( (double) 8, (double) 6, (double) 7, (double) 5, (double) 3, (double) 0, (double) 9)); assertEquals(-0.0, Doubles.min(-0.0, 0.0)); assertEquals(-0.0, Doubles.min(0.0, -0.0)); assertEquals(LEAST, Doubles.min(NUMBERS)); assertTrue(Double.isNaN(Doubles.min(VALUES))); }
public void testMax() { assertEquals(LEAST, Doubles.max(LEAST)); assertEquals(GREATEST, Doubles.max(GREATEST)); assertEquals((double) 9, Doubles.max( (double) 8, (double) 6, (double) 7, (double) 5, (double) 3, (double) 0, (double) 9)); assertEquals(0.0, Doubles.max(-0.0, 0.0)); assertEquals(0.0, Doubles.max(0.0, -0.0)); assertEquals(GREATEST, Doubles.max(NUMBERS)); assertTrue(Double.isNaN(Doubles.max(VALUES))); }