### Question:
TurtleSoup { public static double calculateHeadingToPoint(double currentHeading, int currentX, int currentY, int targetX, int targetY) { if(currentX == targetX && currentY == targetY) return 0.0; double degreess = Math.atan2(targetY - currentY, targetX - currentX) / Math.PI * 180.00; if (degreess < 0) degreess += 360.00; currentHeading = 90.00 - currentHeading; if (currentHeading < 0) currentHeading += 360.00; double ans = currentHeading - degreess; if (ans < 0) ans += 360.00; return ans; }  static void drawSquare(Turtle turtle, int sideLength); static double calculateRegularPolygonAngle(int sides); static int calculatePolygonSidesFromAngle(double angle); static void drawRegularPolygon(Turtle turtle, int sides, int sideLength); static double calculateHeadingToPoint(double currentHeading, int currentX, int currentY, int targetX,
			int targetY); static List<Double> calculateHeadings(List<Integer> xCoords, List<Integer> yCoords); static void drawPersonalArt(Turtle turtle); static void main(String args[]);  }### Answer:
@Test public void calculateHeadingToPointTest() { assertEquals(0.0, TurtleSoup.calculateHeadingToPoint(0.0, 0, 0, 0, 1), 0.001); assertEquals(0.0, TurtleSoup.calculateHeadingToPoint(0.0, 0, 0, 0, 0), 0.001); assertEquals(90.0, TurtleSoup.calculateHeadingToPoint(0.0, 0, 0, 1, 0), 0.001); assertEquals(359.0, TurtleSoup.calculateHeadingToPoint(1.0, 4, 5, 4, 6), 0.001); }