def test_calculate_area(self): name = 'Test1' side1 = 12 side2 = 13 side3 = 14 expected_area = 72.31 actual_area = Triangle(name, side1, side2, side3).area self.assertEqual(actual_area, expected_area)
def test_make3(self): self.assertEqual(Triangle(1, 2, 3, 6, 2, 8).make3(), [ Triangle(1, 2, 3, 6, 2, 5), Triangle(3, 6, 2, 8, 2, 5), Triangle(1, 2, 2, 8, 2, 5) ]) self.assertEqual(Triangle(-12, 3, 5, 9, 2, -3).make3(), [ Triangle(- 12, 3, 5, 9, -2, 3), Triangle(5, 9, 2, -3, -2, 3), Triangle(-12, 3, 2, -3, -2, 3) ])
def test_eq_tri(self): self.assertEqual(self.t1 == Triangle(1,2,1,3,2,2), True) self.assertEqual(self.t1 == Triangle(1, 2, 2, 2, 1, 3), True) self.assertEqual(self.t1 == Triangle(1, 3, 1, 2, 2, 2), True) self.assertEqual(self.t1 == Triangle(1, 3, 2, 2, 1, 2), True) self.assertEqual(self.t1 == Triangle(2, 2, 1, 3, 1, 2), True) self.assertEqual(self.t1 == Triangle(2, 2, 1, 2, 1, 3), True) self.assertEqual(self.t1 == Triangle(1,1,2,1,3,3), False)
def test_triangle_area(self): options = [ [(1, 2, 3), None], [(1, 2, 30), None], [(2, 2, 2), 1.0], [(2.0, 2.0, 2.0), 1.0], [(100, 100, 100), 353.5534], ] for sides, result in options: self.assertEqual(Triangle.triangle_area(sides), result)
def makeCircle(radius, height): # return list of triangles circularPointCount = 20 center = Point(0, 0, 0) points = [] for i in range(circularPointCount): angle = (math.pi * 2 / circularPointCount) * i x = math.cos(angle) * radius z = math.sin(angle) * radius y = z / 3 points.append(Point(x, y, z)) triangles = [] for p1, p2 in zip(points, points[1:] + points[:1]): triangles.append(Triangle(p1, p2, center)) renderTriangles(triangles)
class TestTriangle(unittest.TestCase): def setUp(self): self.t1 = Triangle(1,2,1,3,2,2) self.t2 = Triangle(1,2,2,4,1,3) def test_init_tri(self): with self.assertRaises(ValueError): Triangle(1,1,1,1) with self.assertRaises(ValueError): Triangle(1,1,1,2,1,3) def test_eq_tri(self): self.assertEqual(self.t1 == Triangle(1,2,1,3,2,2), True) self.assertEqual(self.t1 == Triangle(1, 2, 2, 2, 1, 3), True) self.assertEqual(self.t1 == Triangle(1, 3, 1, 2, 2, 2), True) self.assertEqual(self.t1 == Triangle(1, 3, 2, 2, 1, 2), True) self.assertEqual(self.t1 == Triangle(2, 2, 1, 3, 1, 2), True) self.assertEqual(self.t1 == Triangle(2, 2, 1, 2, 1, 3), True) self.assertEqual(self.t1 == Triangle(1,1,2,1,3,3), False) def test_center_tri(self): self.assertEqual(self.t2.center(), Point(1,3.0)) self.assertNotEqual(self.t1.center(), Point(1,1)) def test_area_tri(self): self.assertEqual(self.t1.area(), 0.5) self.assertNotEqual(self.t1.area(), 1.0) def test_move_tri(self): self.assertEqual(self.t1.move(99,99), Triangle(100,101, 100,102, 101,101)) self.assertNotEqual(self.t1.move(99,99), Triangle(1,1,2,1,3,3)) def test_make4_tri(self): self.assertEqual(self.t1.make4(), [Triangle(1, 2, 1.0, 2.5, 1.5, 2.0), Triangle(1.0, 2.5, 1, 3, 1.5, 2.5), Triangle(1.0, 2.5, 1.5, 2.0, 1.5, 2.5), Triangle(1.5, 2.0, 1.5, 2.5, 2, 2)]) def tearDown(self): pass
from triangles import Triangle trg1 = Triangle(-2, 1, 0, 5, 3, -2) trg2 = Triangle(-3, 0, 1, -4, 2, 1) trg1.__str__() trg2.__repr__() print trg1._eq_(trg2) print trg2._ne_(trg1)
def setUp(self): self.t1 = Triangle(1,2,1,3,2,2) self.t2 = Triangle(1,2,2,4,1,3)
def test_make4_tri(self): self.assertEqual(self.t1.make4(), [Triangle(1, 2, 1.0, 2.5, 1.5, 2.0), Triangle(1.0, 2.5, 1, 3, 1.5, 2.5), Triangle(1.0, 2.5, 1.5, 2.0, 1.5, 2.5), Triangle(1.5, 2.0, 1.5, 2.5, 2, 2)])
def test_move_tri(self): self.assertEqual(self.t1.move(99,99), Triangle(100,101, 100,102, 101,101)) self.assertNotEqual(self.t1.move(99,99), Triangle(1,1,2,1,3,3))
def test_init_tri(self): with self.assertRaises(ValueError): Triangle(1,1,1,1) with self.assertRaises(ValueError): Triangle(1,1,1,2,1,3)
def test_move(self): self.assertEqual(Triangle(1, 2, 3, 6, -2, -8).move(3, -1), Triangle(4, 1, 6, 5, 1, -9)) self.assertEqual(Triangle(-2, 3, 5, 9, 2, -3).move(1, 1), Triangle(-1, 4, 6, 10, 3, -2))
def test_area(self): self.assertEqual(Triangle(1, 2, 3, 6, 2, 8).area(), 4) self.assertEqual(Triangle(-10, -3, 3, 7, 6, 1).area(), 54) self.assertEqual(Triangle(-12, 3, 5, 9, 2, -3).area(), 93)
def test_center(self): self.assertEqual(Triangle(1, 2, 3, 6, 2, 8).center(), Point(2, 5)) self.assertEqual(Triangle(-12, 3, 5, 9, 2, -3).center(), Point(- 2, 3)) self.assertEqual(Triangle(-8, 2, 5, -8, 19, 2).center(), Point(16 / 3, - 4 / 3))
def test_eq(self): self.assertTrue(Triangle(1, 2, 3, 6.7, 0.2, -4) == Triangle(1, 2, 3, 6.7, 0.2, -4)) self.assertTrue(Triangle(1.5, 2, 3, 6.23, -1, -1) != Triangle(3, 6.23, -1, -1, 1.5, 2)) self.assertTrue(Triangle(5, 1, 12, 9, 2, 5) != Triangle(5, 1, 9, 2, 0.87, 4))
def test_print(self): self.assertEqual(str(Triangle(1, 2, 3, 6, 0, 5)), "[(1, 2), (3, 6), (0, 5)]") self.assertEqual(str(Triangle(5, -2.5, 8.23, 7, -1, -3)), "[(5, -2.5), (8.23, 7), (-1, -3)]") self.assertEqual(repr(Triangle(2, -2, 5, 5, 1, 7)), "Triangle(2, -2, 5, 5, 1, 7)")