### Question:
TurtleSoup { public static Set<Point> convexHull(Set<Point> points) { throw new RuntimeException("implement me!"); }  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 calculateBearingToPoint(double currentBearing, int currentX, int currentY,
                                                 int targetX, int targetY); static List<Double> calculateBearings(List<Integer> xCoords, List<Integer> yCoords); static Set<Point> convexHull(Set<Point> points); static void drawPersonalArt(Turtle turtle); static void main(String args[]);  }### Answer:
@Test public void convexHullTest() { Set<Point> points = new HashSet<Point>(); Set<Point> convexHull = new HashSet<Point>(); assertEquals(convexHull, TurtleSoup.convexHull(points)); Point p11 = new Point(1, 1); Point p1010 = new Point(10, 10); Point p110 = new Point(1, 10); Point p12 = new Point(1, 2); Point p23 = new Point(2, 3); Point p32 = new Point(3, 2); points.add(p11); convexHull.add(p11); assertEquals(convexHull, TurtleSoup.convexHull(points)); points.add(p1010); convexHull.add(p1010); assertEquals(convexHull, TurtleSoup.convexHull(points)); points.add(p110); convexHull.add(p110); assertEquals(convexHull, TurtleSoup.convexHull(points)); points.add(p12); assertEquals(convexHull, TurtleSoup.convexHull(points)); points.add(p23); assertEquals(convexHull, TurtleSoup.convexHull(points)); points.add(p32); convexHull.add(p32); assertEquals(convexHull, TurtleSoup.convexHull(points)); }