def test_random_intensive_cmp(self):
     for i in range(100):
         number_of_points = int(uniform(20, 50))
         range_of_points = uniform(30.0, 50.0)
         points = generate_random_points_list(number_of_points, range_of_points)
         readwrite_list.write_list_of_points(points, "TestRecentRandomIntensive.txt")
         self.internal_test_cmp_with_direct(points)
 def internal_test_loop(self, points):
     number_of_rejected = 1
     while number_of_rejected > 0:
         rejected = find_redundant_points(points)
         if not rejected:
             scroll_points_list(points)
             rejected = find_redundant_points(points)
         number_of_rejected = len(rejected)
         for r in rejected:
             if r not in points:
                 filename = "TestRejectedNotInGiven.txt"
                 readwrite_list.write_list_of_points(points, filename)
             points.remove(r)
     return len(points)
    def internal_test_random(self, number_of_points, test_by_pivots = False):

        thelist = list();
        for i in range(number_of_points):
            thelist.append(Vector2D(random.uniform(-10.0, 10.0), random.uniform(-10.0, 10.0)));

        write_list_of_points(thelist, "RandomPoints.txt");

        circle1, pivot_points1 = find_smallest_circle_directly(thelist);
        circle2, pivot_points2 = find_smallest_circle_sqtime(thelist);

        if test_by_pivots:
            p1_in_p2 = all(p in pivot_points1 for p in pivot_points2)
            p2_in_p1 = all(p in pivot_points2 for p in pivot_points1)

            self.assertTrue(p1_in_p2)
            self.assertTrue(p2_in_p1)
        else:
            self.assertEqual(round(circle1.centre.get_x(), 3), round(circle2.centre.get_x(), 3));
            self.assertEqual(round(circle1.centre.get_y(), 3), round(circle2.centre.get_y(), 3));
            self.assertEqual(round(circle1.radius, 3), round(circle2.radius, 3));
 def test_random(self):
     for i in range(10):
         points = generate_random_points_list(30, 30.0)
         readwrite_list.write_list_of_points(points, "TestRecentRandom.txt")
         result_num = self.internal_test_loop(points)
         self.assertTrue(result_num < 16)