def testTGdeu(self): # Tam giac deu print "Test case 23: a = %r, b = %r, c = %r" % (2,2,2) self.assertEqual(detect_triangle(2.0, 2.0, 2.0), "Tam giac deu\n") print "Test case 24: a = %r, b = %r, c = %r" % ("2**32-1","2**32-1","2**32-1") self.assertEqual(detect_triangle(2**32-1, 2**32-1, 2**32-1), "Tam giac deu\n") print "Test case 25: a = %r, b = %r, c = %r" % ("1e-10","1e-10","1e-10") self.assertEqual(detect_triangle(1e-10, 1e-10, 1e-10), "Tam giac deu\n")
def testTGvuongcan(self): # Tam giac vuong can print "Test case 26: a = %r, b = %r, c = %r" % (1,1,math.sqrt(2)) self.assertEqual(detect_triangle(1.0, 1.0, math.sqrt(2.0)), "Tam giac vuong can\n") print "Test case 27: a = %r, b = %r, c = %r" % (2,2*math.sqrt(2),2) self.assertEqual(detect_triangle(2, 2*math.sqrt(2), 2), "Tam giac vuong can\n") print "Test case 28: a = %r, b = %r, c = %r" % (2*math.sqrt(2),2,2) self.assertEqual(detect_triangle(2*math.sqrt(2.0), 2.0, 2), "Tam giac vuong can\n")
def testTGVuong(self): # Tam giac vuong print "Test case 13: a = %r, b = %r, c = %r" % (3,4,5) self.assertEqual(detect_triangle(3.0, 4.0, 5.0), "Tam giac vuong\n") print "Test case 14: a = %r, b = %r, c = %r" % (5*1e-10, 4*1e-10,3*1e-10) self.assertEqual(detect_triangle(5*1e-10, 3*1e-10,4*1e-10), "Tam giac vuong\n") print "Test case 15: a = %r, b = %r, c = %r" % (4*2**31, 5*2**31,3*2**31) self.assertEqual(detect_triangle(4*2**29, 5*2**29,3*2**29), "Tam giac vuong\n") print "Test case 33: a = %r, b = %r, c = %r" % (8.0,math.sqrt(48),4.0) self.assertEqual(detect_triangle(8.0,math.sqrt(48),4.0), "Tam giac vuong\n")
def testTGthuong(self): # Tam giac thuong print "Test case 29: a = %r, b = %r, c = %r" % (3, 5, 7) self.assertEqual(detect_triangle(3, 5.0, 7.0), "Tam giac binh thuong\n") print "Test case 30: a = %r, b = %r, c = %r" % (2, "2^32-1", "2^32-2") self.assertEqual(detect_triangle(2, 2**31-5, 2**31-4), "Tam giac binh thuong\n") # Gioi han 10**-5 cho e = 10**-10 print "Test case 31: a = %r, b = %r, c = %r" % (2e-10, 3-5e-10, 3-4e-10) self.assertEqual(detect_triangle(2e-10, 3-5e-10, 3-4e-10), "Tam giac binh thuong\n") print "Test case 32: a = %r, b = %r, c = %r" % (2e-7, 3e-7, 4e-7) self.assertEqual(detect_triangle(2e-7, 3e-7, 4e-7), "Tam giac binh thuong\n")
def s_detect_triangle( a , b , c , e): return { 0: detect_triangle(a,b,c), 1: detect_triangle(a,c,b), 2: detect_triangle(b,a,c), 3: detect_triangle(b,c,a), 4: detect_triangle(c,a,b), 5: detect_triangle(c,b,a), }[e]
def testTGcan(self): # Tam giac can print "Test case 16: a = %r, b = %r, c = %r" % (2,2,1) self.assertEqual(detect_triangle(2.0, 2.0, 1.0), "Tam giac can\n") print "Test case 17: a = %r, b = %r, c = %r" % ("4e-5", "7e-5", "4e-5") self.assertEqual(detect_triangle(4e-5, 7e-5, 4e-5), "Tam giac can\n") print "Test case 18: a = %r, b = %r, c = %r" % ("5e-5", "5e-5", "8e-5") self.assertEqual(detect_triangle(5e-5, 5e-5, 8e-5), "Tam giac can\n") print "Test case 19: a = %r, b = %r, c = %r" % ("5e-5", "3e-5", "3e-5") self.assertEqual(detect_triangle(5e-5, 3e-5, 3e-5), "Tam giac can\n") print "Test case 20: a = %r, b = %r, c = %r" % ("2**32-1",4,"2**32-1") self.assertEqual(detect_triangle(2**32-1, 4, 2**32-1), "Tam giac can\n") print "Test case 21: a = %r, b = %r, c = %r" % ("2**32-1","2**32-1",4) self.assertEqual(detect_triangle(2**32-1, 2**32-1, 4), "Tam giac can\n") # Gioi han 2**26 khi co mot bien < 1 print "Test case 22: a = %r, b = %r, c = %r" % ("2**32-1","2**32-1","1e-6") self.assertEqual(detect_triangle(2**32-1, 2**32-1, 1e-9), "Tam giac can\n")
def testInputInvalid(self): # Test invalid print "Test case 1: a = %r, b = %r, c = %r" % ("-1",2,0) self.assertEqual(detect_triangle('a', 2.0, 0), "Gia tri dau vao khong phu hop\n") print "Test case 2: a = %r, b = %r, c = %r" % (2,"-1",0) self.assertEqual(detect_triangle(2, "-1", 0), "Gia tri dau vao khong phu hop\n") print "Test case 3: a = %r, b = %r, c = %r" % (2,0,"-1") self.assertEqual(detect_triangle(2,0, "-1"), "Gia tri dau vao khong phu hop\n") print "Test case 4: a = %r, b = %r, c = %r" % (1,2,"2^32") self.assertEqual(detect_triangle(1, 2.0, 2**32), "Gia tri dau vao khong phu hop\n") print "Test case 6: a = %r, b = %r, c = %r" % ("2^32-1","2**32","0") self.assertEqual(detect_triangle(2**32-1, 2**32, 0), "Gia tri dau vao khong phu hop\n") print "Test case 7: a = %r, b = %r, c = %r" % ("1e-10","2**32","2**32-2") self.assertEqual(detect_triangle(1e-10 , 2**32, 2**32-2), "Gia tri dau vao khong phu hop\n")
def testInputValid(self): # Test invalid. print "Test case 5: a = %r, b = %r, c = %r" % (0,2,"2^32-1") self.assertEqual(detect_triangle(0, 2.0, 2**32-1), "Khong phai tam giac\n") print "Test case 8: a = %r, b = %r, c = %r" % (1,4,5) self.assertEqual(detect_triangle(1.0, 4.0, 5.0), "Khong phai tam giac\n") print "Test case 9: a = %r, b = %r, c = %r" % (1,4,"2**32-1") self.assertEqual(detect_triangle(1.0, 4.0, 2**32-1), "Khong phai tam giac\n") print "Test case 10: a = %r, b = %r, c = %r" % (1,2**32-1,1) self.assertEqual(detect_triangle(1.0, 2**32-1, 1), "Khong phai tam giac\n") print "Test case 11: a = %r, b = %r, c = %r" % ("1e-10",4,1) self.assertEqual(detect_triangle(1e-10, 4.0, 1), "Khong phai tam giac\n") print "Test case 12: a = %r, b = %r, c = %r" % ("2**32-1","1e-10","1e-10") self.assertEqual(detect_triangle(2**32-1, 1e-10, 1e-10), "Khong phai tam giac\n")
def test_triangleVuong3(self): self.assertEquals(triangle.detect_triangle(3.0, 4.0, 5.0), "Tam giac vuong")
def test_triangleDeu2(self): self.assertEquals( triangle.detect_triangle(2**32.0 - 1, 2**32.0 - 1, 2**32.0 - 1), "Tam giac deu")
def test_KieuGiaTri2(self): self.assertEquals(triangle.detect_triangle('a', 'b', 5), "Kieu du lieu sai")
def test_MienGiaTri2(self): self.assertEquals(triangle.detect_triangle(-1.0, -1.0, -1.0), "Khong thuoc mien gia tri")
def test30(self): self.assertEqual(triangle.detect_triangle(6,-4,5),'Vuot qua mien gia tri')
def test20(self): self.assertEqual(triangle.detect_triangle(4,0,8),'Khong phai tam giac')
def test16(self): self.assertEqual(triangle.detect_triangle(12345678,12345677,12345679),'Tam giac thuong')
def test_triangleDeu1(self): self.assertEquals(triangle.detect_triangle(1.0, 1.0, 1.0), "Tam giac deu")
def test_triangleThuong(self): self.assertEquals(triangle.detect_triangle(2.0, 4.0, 3.0), "Tam giac thuong")
def test_triangleCan5(self): self.assertEquals( triangle.detect_triangle(2**32.0 - 1, 1.0, 2**32.0 - 1), "Tam giac can")
def test_triangleCan4(self): self.assertEquals(triangle.detect_triangle(2**31.0, 2**31.0, 0.0001), "Tam giac can")
def test_triangleCan3(self): self.assertEquals(triangle.detect_triangle(3.0, 3.0, 1.0), "Tam giac can")
def test_triangleVuong4(self): self.assertEquals( triangle.detect_triangle(math.sqrt(2.0), math.sqrt(1.0), math.sqrt(3.0)), "Tam giac vuong")
def test12(self): self.assertEqual(triangle.detect_triangle(3*math.sqrt(2),3,3),'Tam giac vuong can')
def test14(self): self.assertEqual(triangle.detect_triangle(4,2,3),'Tam giac thuong')
def test_triangleThuong3(self): self.assertEquals(triangle.detect_triangle(0.0001, 0.00012, 0.00011), "Tam giac thuong")
def test18(self): self.assertEqual(triangle.detect_triangle(1,1,2),'Khong phai tam giac')
def test_triangleThuong4(self): self.assertEquals( triangle.detect_triangle(2**32.0 - 1, 2**32.0 - 1.1, 2**32.0 - 2), "Tam giac thuong")
def test28(self): self.assertEqual(triangle.detect_triangle(1,1,pow(2,32)),'Vuot qua mien gia tri')
def test_KhongPhaitriangle2(self): self.assertEquals(triangle.detect_triangle(1.0, 3.0, 1.0), "Khong thoa man tam giac")
def test_KieuGiaTri3(self): self.assertEquals(triangle.detect_triangle(1.0, 'b', 'c'), "Kieu du lieu sai")
def test_triangleDeu3(self): self.assertEquals( triangle.detect_triangle(0.00000000001, 0.00000000001, 0.00000000001), "Tam giac deu")
def test6(self): self.assertEqual(triangle.detect_triangle(pow(2,31)-1,pow(2,31)-1,pow(2,31)-1),'Tam giac deu')
def test8(self): self.assertEqual(triangle.detect_triangle(3,4,5),'Tam giac vuong')
def test_MienGiaTri4(self): self.assertEquals(triangle.detect_triangle(2**32.0, 2**32.0, 2**32.0), "Khong thuoc mien gia tri")
def test10(self): self.assertEqual(triangle.detect_triangle(3*pow(1,-10),4*pow(1,-10),5*pow(1,-10)),'Tam giac vuong')
def testEquilateral(self): result = detect_triangle(2.0, 2.0, 2.0) self.assertEqual(result, 'equilateral')
def test_triangleVuongCan3(self): self.assertEquals(triangle.detect_triangle(math.sqrt(2.0), 1.0, 1.0), "Tam giac vuong can")
def test5(self): self.assertEqual(triangle.detect_triangle(1,1,1),'Tam giac deu')
def testWrongValue3(self): result = detect_triangle(2.0, 3.0, -2**32) self.assertEqual(result, 'Wrong value(not float)')
def test7(self): self.assertEqual(triangle.detect_triangle(pow(1,-40),pow(1,-40),pow(1,-40)),'Tam giac deu')
def testNullValue1(self): result = detect_triangle() self.assertEqual(result, 'Null Value')
def test9(self): self.assertEqual(triangle.detect_triangle(3*pow(2,25),4*pow(2,25),5*pow(2,25)),'Tam giac vuong')
def testEquilateral1(self): result = detect_triangle(3, 3, 3) self.assertEqual(result, 'equilateral')
def test11(self): self.assertEqual(triangle.detect_triangle(1,1,math.sqrt(2)),'Tam giac vuong can')
def testIsosceles_rightangled(self): result = detect_triangle(3.0, 3.0, math.sqrt(18.0)) self.assertEqual(result, 'isosceles right-angled')
def test13(self): self.assertEqual(triangle.detect_triangle(5,5*math.sqrt(2),5),'Tam giac vuong can')
def testIsosceles_rightangled1(self): result = detect_triangle(5.0, math.sqrt(50), 5.0) self.assertEqual(result, 'isosceles right-angled')
def test15(self): self.assertEqual(triangle.detect_triangle(9/2,3,2),'Tam giac thuong')
def testIsosceles_rightangled2(self): result = detect_triangle(math.sqrt(32.0), 4.0, 4.0) self.assertEqual(result, 'isosceles right-angled')
def test17(self): self.assertEqual(triangle.detect_triangle(pow(2,31)-1,pow(2,31)-2,pow(2,31)-3),'Tam giac thuong')
def testRight_angled(self): result = detect_triangle(3, 4, 5) self.assertEqual(result, 'right-angled')
def test19(self): self.assertEqual(triangle.detect_triangle(0,1,4),'Khong phai tam giac')
def testRight_angled1(self): result = detect_triangle(3.0, 4.0, 5.0) self.assertEqual(result, 'right-angled')
def test25(self): self.assertEqual(triangle.detect_triangle(9,0,0),'Khong phai tam giac')
def testRight_angled2(self): result = detect_triangle(4.0, math.sqrt(52), 6.0) self.assertEqual(result, 'right-angled')
def test29(self): self.assertEqual(triangle.detect_triangle(-1,4,5),'Vuot qua mien gia tri')
def testRight_angled3(self): result = detect_triangle(math.sqrt(61), 5.0, 6.0) self.assertEqual(result, 'right-angled')
def test33(self): self.assertEqual(triangle.detect_triangle(-1,-4,-5),'Vuot qua mien gia tri')
def testIsosceles(self): result = detect_triangle(2.0, 2.0, 3.0) self.assertEqual(result, 'isosceles')
def test_Fspecialtriangle1(self): self.assertEqual(detect_triangle(5,5,5),0)
def test_vuongcan3(self): result = detect_triangle(4.0, 2**32 - 1, 2**32 - 1) self.assertEqual(result, "tam giac vuong can")