@Test public void testEpsilonquals() throws Exception { Random random = new Random(9017); for (int i = 0; i < ITERATIONS; i++) { double epsilon = random.nextDouble(); int sizeA = random.nextInt(100) + 1; List<Point2D> listA = IntStream.range(0, sizeA).mapToObj(v -> EuclidCoreRandomTools.nextPoint2D(random)).collect(Collectors.toList()); List<Point2D> listAPrime = listA.stream().map(Point2D::new).collect(Collectors.toList()); listAPrime.forEach(p -> p.add(nextDouble(random, epsilon), nextDouble(random, epsilon))); List<Point2D> listSizeA = listA.stream().map(Point2D::new).collect(Collectors.toList()); listSizeA.forEach(p -> p.add((random.nextBoolean() ? -1.0 : 1.0) * nextDouble(random, epsilon, epsilon + 1.0), (random.nextBoolean() ? -1.0 : 1.0) * nextDouble(random, epsilon, epsilon + 1.0))); int sizeB = random.nextInt(100) + 1; List<Point2D> listB = IntStream.range(0, sizeB).mapToObj(v -> EuclidCoreRandomTools.nextPoint2D(random)).collect(Collectors.toList()); assertTrue("Iteration: " + i, Vertex2DSupplier.asVertex2DSupplier(listA).epsilonEquals(Vertex2DSupplier.asVertex2DSupplier(listA), epsilon)); assertTrue("Iteration: " + i, Vertex2DSupplier.asVertex2DSupplier(listA).epsilonEquals(Vertex2DSupplier.asVertex2DSupplier(listAPrime), epsilon)); assertFalse("Iteration: " + i, Vertex2DSupplier.asVertex2DSupplier(listA).epsilonEquals(Vertex2DSupplier.asVertex2DSupplier(listSizeA), epsilon)); assertFalse("Iteration: " + i, Vertex2DSupplier.asVertex2DSupplier(listA).epsilonEquals(Vertex2DSupplier.asVertex2DSupplier(listB), epsilon)); } } }
@Test public void testCreatingEmptySupplier() { Vertex2DSupplier expected = Vertex2DSupplier.emptyVertex2DSupplier(); Vertex2DSupplier actual; actual = Vertex2DSupplier.asVertex2DSupplier(); assertEquals(expected, actual); assertTrue(expected.epsilonEquals(actual, EPSILON)); actual = Vertex2DSupplier.asVertex2DSupplier(new Point2DReadOnly[0], 0); assertEquals(expected, actual); assertTrue(expected.epsilonEquals(actual, EPSILON)); actual = Vertex2DSupplier.asVertex2DSupplier(new Point2DReadOnly[0], 0, 0); assertEquals(expected, actual); assertTrue(expected.epsilonEquals(actual, EPSILON)); actual = Vertex2DSupplier.asVertex2DSupplier(Collections.emptyList()); assertEquals(expected, actual); assertTrue(expected.epsilonEquals(actual, EPSILON)); actual = Vertex2DSupplier.asVertex2DSupplier(Collections.emptyList(), 0); assertEquals(expected, actual); assertTrue(expected.epsilonEquals(actual, EPSILON)); actual = Vertex2DSupplier.asVertex2DSupplier(Collections.emptyList(), 0, 0); assertEquals(expected, actual); assertTrue(expected.epsilonEquals(actual, EPSILON)); }