def test_equilateral(self): self.assertEqual(classify_triangle(1,1,1),"Equilateral")
def test_classify_right_isosceles_triangle(): assert set(classify_triangle(1, 1, sqrt(2))) == {TriangleType.ISOSCELES, TriangleType.RIGHTTRIANGLE}
def test_classify_scalene_triangle(): assert classify_triangle(4, 7, 9) == [TriangleType.SCALENE]
def test_classify_equilateral_triangle_float(): assert classify_triangle(10.2, 10.2, 10.2) == [TriangleType.EQUILATERAL]
def test_classify_isosceles_integer3(): assert classify_triangle(7, 5, 5) == [TriangleType.ISOSCELES]
def test_raises_exception_string_number_sides(): with pytest.raises(NotATriangle): classify_triangle('10', '15', '20')
def test_raises_exception_any_zero(): with pytest.raises(NotATriangle): classify_triangle(0, 1, 2)
def test_rightB(self): self.assertEqual(classify_triangle(5,3,4),'Right')
def test_rightC(self): self.assertEqual(classify_triangle(5,12,13),'Right')
def test_notATriangleC(self): self.assertEqual(classify_triangle(3,3,7),"NotATriangle")
def test_rightA(self): self.assertEqual(classify_triangle(3,4,5),'Right')
def test_notATriangleA(self): self.assertEqual(classify_triangle(7,3,3),"NotATriangle")
def test_isoscelesC(self): self.assertEqual(classify_triangle(3,3,1),"Isosceles")
def test_isoscelesA(self): self.assertEqual(classify_triangle(1,3,3),"Isosceles")
def test_raises_exception_zeros(): with pytest.raises(NotATriangle): classify_triangle(0, 0, 0)
def test_rightSqrtA(self): self.assertEqual(classify_triangle(2*sqrt(2),2,2),"Right")
def test_raises_exception_string_number_side(): with pytest.raises(NotATriangle): classify_triangle('5', 10, 7)
def test_rightSqrtB(self): self.assertEqual(classify_triangle(5,5*sqrt(3),10),'Right')
def test_raises_exception_string_char_side(): with pytest.raises(NotATriangle): classify_triangle('abc', 0, 0)
def test_rightSqrtC(self): self.assertEqual(classify_triangle(4,4,4*sqrt(2)),"Right")
def test_classify_equilateral_triangle_integer(): assert classify_triangle(5, 5, 5) == [TriangleType.EQUILATERAL]
def test_scaleneA(self): self.assertEqual(classify_triangle(2,3,4),"Scalene")
def test_raises_exception_not_triangle(): with pytest.raises(NotATriangle): classify_triangle(5, 1, 2)
def test_scaleneB(self): self.assertEqual(classify_triangle(7,5,3),"Scalene")
def test_classify_right_triangle3(): assert classify_triangle(5, 3, 4) == [TriangleType.RIGHTTRIANGLE]
def test_scaleneC(self): self.assertEqual(classify_triangle(8.2,3.2,10),"Scalene")
def test_classify_right_triangle_big_numbers(): assert classify_triangle(3*99**100, 4*99**100, 5*99**100) == [TriangleType.RIGHTTRIANGLE]
def test_raises_exception_not_triangle_oneside_equal_to_sum_of_the_others_float(): with pytest.raises(NotATriangle): classify_triangle(2.0000000000000000000000002, 1.0000000000000000000000001, 1.0000000000000000000000001)
def test_raises_exception_not_triangle_oneside_equal_to_sum_of_the_others(): with pytest.raises(NotATriangle): classify_triangle(6, 3, 3)
def test_InvalidInputZero(self): self.assertEqual(classify_triangle(0,2,3),"InvalidInput")