@Test
 public void pointWithinChannel() {
   DR = DataReader.use("equationTestNodes.txt", "equationTestEdges.txt");
   DR.createNodeList();
   Edge edge =
       new Edge(
           DR.getNodes().get(1), DR.getNodes().get(2), 0, "", 0, "0", "0", 0.1, 0, 0, 0, 0, true);
   assertFalse(Equation.pointWithinChannel(-3.0, 4.0, edge));
   assertTrue(Equation.pointWithinChannel(4.0, 5.0, edge));
 }
 @Test
 public void distanceBetweenNodes() {
   DR = DataReader.use("equationTestNodes.txt", "equationTestEdges.txt");
   DR.createNodeList();
   Node node1 = DR.getNodes().get(1);
   Node node2 = DR.getNodes().get(2);
   Node node5 = DR.getNodes().get(5);
   assertEquals(5.0, Equation.distanceBetweenNodes(node1, node2), 0.001);
   assertFalse(Math.abs(Equation.distanceBetweenNodes(node2, node5) - 5.0) < 0.001);
 }
 @Test
 public void getNormalVector() {
   DR = DataReader.use("equationTestNodes.txt", "equationTestEdges.txt");
   DR.createNodeList();
   Edge edge =
       new Edge(
           DR.getNodes().get(1), DR.getNodes().get(2), 0, "", 0, "0", "0", 0.1, 0, 0, 0, 0, true);
   double[] expArr = new double[] {-3.0, 4.0};
   double[] expArr2 = new double[] {-3.3, 4.1};
   assertArrayEquals(expArr, Equation.getNormalVector(edge), 0.001);
   assertFalse(Math.abs(expArr2[0] - Equation.getNormalVector(edge)[0]) < 0.001);
   assertFalse(Math.abs(expArr2[1] - Equation.getNormalVector(edge)[1]) < 0.001);
 }
 @Test
 public void nodesToVector() {
   DR = DataReader.use("equationTestNodes.txt", "equationTestEdges.txt");
   DR.createNodeList();
   Node node5 = DR.getNodes().get(5);
   Node node1 = DR.getNodes().get(1);
   double[] expArr = new double[] {-3.0, 1.0};
   assertArrayEquals(expArr, Equation.nodesToVector(node5, node1), 0.01);
   Node node2 = DR.getNodes().get(2);
   Node node3 = DR.getNodes().get(3);
   double[] expArr2 = new double[] {4.3, 3.2};
   assertFalse(Math.abs(expArr2[0] - Equation.nodesToVector(node2, node3)[0]) < 0.001);
   assertFalse(Math.abs(expArr2[1] - Equation.nodesToVector(node2, node3)[1]) < 0.001);
 }
 @Test
 public void distanceBetweenPointAndLine() {
   DR = DataReader.use("equationTestNodes.txt", "equationTestEdges.txt");
   DR.createNodeList();
   Edge edge =
       new Edge(
           DR.getNodes().get(1), DR.getNodes().get(2), 0, "", 0, "0", "0", 0.1, 0, 0, 0, 0, true);
   double x1 = 1.0;
   double y1 = 7.5;
   assertEquals(5.0, Equation.distanceBetweenPointAndLine(edge, x1, y1), 0.001);
   double x2 = 1.0;
   double y2 = 9.5;
   assertFalse(Math.abs(Equation.distanceBetweenPointAndLine(edge, x2, y2) - 7.0) < 0.001);
 }
 @Test
 public void edgeToVector() {
   DR = DataReader.use("equationTestNodes.txt", "equationTestEdges.txt");
   DR.createNodeList();
   Edge edge1 =
       new Edge(
           DR.getNodes().get(1), DR.getNodes().get(2), 0, "", 0, "0", "0", 0.1, 0, 0, 0, 0, true);
   Edge edge2 =
       new Edge(
           DR.getNodes().get(2), DR.getNodes().get(3), 0, "", 0, "0", "0", 0.1, 0, 0, 0, 0, true);
   Edge edge3 =
       new Edge(
           DR.getNodes().get(3), DR.getNodes().get(4), 0, "", 0, "0", "0", 0.1, 0, 0, 0, 0, true);
   double[] expArr1 = new double[] {4.0, 3.0};
   double[] expArr2 = new double[] {-7.0, 1.0};
   double[] expArr3 = new double[] {-2.0, -4.0};
   assertArrayEquals(expArr1, Equation.edgeToVector(edge1), 0.001);
   assertArrayEquals(expArr2, Equation.edgeToVector(edge2), 0.001);
   assertArrayEquals(expArr3, Equation.edgeToVector(edge3), 0.001);
   double[] expArr4 = new double[] {1.0, 3.1};
   double[] expArr5 = new double[] {-7.5, 2.0};
   double[] expArr6 = new double[] {2.0, -4.7};
   assertFalse(Math.abs(expArr4[0] - Equation.edgeToVector(edge1)[0]) < 0.001);
   assertFalse(Math.abs(expArr4[1] - Equation.edgeToVector(edge1)[1]) < 0.001);
   assertFalse(Math.abs(expArr5[0] - Equation.edgeToVector(edge2)[0]) < 0.001);
   assertFalse(Math.abs(expArr5[1] - Equation.edgeToVector(edge2)[1]) < 0.001);
   assertFalse(Math.abs(expArr6[0] - Equation.edgeToVector(edge3)[0]) < 0.001);
   assertFalse(Math.abs(expArr6[1] - Equation.edgeToVector(edge3)[1]) < 0.001);
 }
 @After
 public void breakDown() {
   DR = null;
   DataReader.resetInstance();
 }