@@ -955,52 +955,53 @@ def test_factorial(self):
955
955
self .assertRaises (ValueError , math .factorial , - 11.1 )
956
956
957
957
def testGcd (self ):
958
- gcd = math .gcd
959
- self .assertEqual (gcd (0 , 0 ), 0 )
960
- self .assertEqual (gcd (1 , 0 ), 1 )
961
- self .assertEqual (gcd (- 1 , 0 ), 1 )
962
- self .assertEqual (gcd (0 , 1 ), 1 )
963
- self .assertEqual (gcd (0 , - 1 ), 1 )
964
- self .assertEqual (gcd (7 , 1 ), 1 )
965
- self .assertEqual (gcd (7 , - 1 ), 1 )
966
- self .assertEqual (gcd (- 23 , 15 ), 1 )
967
- self .assertEqual (gcd (120 , 84 ), 12 )
968
- self .assertEqual (gcd (84 , - 120 ), 12 )
969
- self .assertEqual (gcd (1216342683557601535506311712 ,
970
- 436522681849110124616458784 ), 32 )
971
- c = 652560
972
- x = 434610456570399902378880679233098819019853229470286994367836600566
973
- y = 1064502245825115327754847244914921553977
974
- a = x * c
975
- b = y * c
976
- self .assertEqual (gcd (a , b ), c )
977
- self .assertEqual (gcd (b , a ), c )
978
- self .assertEqual (gcd (- a , b ), c )
979
- self .assertEqual (gcd (b , - a ), c )
980
- self .assertEqual (gcd (a , - b ), c )
981
- self .assertEqual (gcd (- b , a ), c )
982
- self .assertEqual (gcd (- a , - b ), c )
983
- self .assertEqual (gcd (- b , - a ), c )
984
- c = 576559230871654959816130551884856912003141446781646602790216406874
985
- a = x * c
986
- b = y * c
987
- self .assertEqual (gcd (a , b ), c )
988
- self .assertEqual (gcd (b , a ), c )
989
- self .assertEqual (gcd (- a , b ), c )
990
- self .assertEqual (gcd (b , - a ), c )
991
- self .assertEqual (gcd (a , - b ), c )
992
- self .assertEqual (gcd (- b , a ), c )
993
- self .assertEqual (gcd (- a , - b ), c )
994
- self .assertEqual (gcd (- b , - a ), c )
995
-
996
- self .assertRaises (TypeError , gcd , 120.0 , 84 )
997
- self .assertRaises (TypeError , gcd , 120 , 84.0 )
998
- self .assertEqual (gcd (MyIndexable (120 ), MyIndexable (84 )), 12 )
999
-
1000
- # test of specializations
1001
- self .assertRaises (TypeError , gcd , 120 , MyIndexable (6.0 ))
1002
- self .assertRaises (TypeError , gcd , 'ahoj' , 1 )
1003
- self .assertEqual (gcd (MyIndexable (True ), MyIndexable (84 )), 1 )
958
+ if (sys .version_info .major >= 3 and sys .version_info .minor >= 5 ):
959
+ gcd = math .gcd
960
+ self .assertEqual (gcd (0 , 0 ), 0 )
961
+ self .assertEqual (gcd (1 , 0 ), 1 )
962
+ self .assertEqual (gcd (- 1 , 0 ), 1 )
963
+ self .assertEqual (gcd (0 , 1 ), 1 )
964
+ self .assertEqual (gcd (0 , - 1 ), 1 )
965
+ self .assertEqual (gcd (7 , 1 ), 1 )
966
+ self .assertEqual (gcd (7 , - 1 ), 1 )
967
+ self .assertEqual (gcd (- 23 , 15 ), 1 )
968
+ self .assertEqual (gcd (120 , 84 ), 12 )
969
+ self .assertEqual (gcd (84 , - 120 ), 12 )
970
+ self .assertEqual (gcd (1216342683557601535506311712 ,
971
+ 436522681849110124616458784 ), 32 )
972
+ c = 652560
973
+ x = 434610456570399902378880679233098819019853229470286994367836600566
974
+ y = 1064502245825115327754847244914921553977
975
+ a = x * c
976
+ b = y * c
977
+ self .assertEqual (gcd (a , b ), c )
978
+ self .assertEqual (gcd (b , a ), c )
979
+ self .assertEqual (gcd (- a , b ), c )
980
+ self .assertEqual (gcd (b , - a ), c )
981
+ self .assertEqual (gcd (a , - b ), c )
982
+ self .assertEqual (gcd (- b , a ), c )
983
+ self .assertEqual (gcd (- a , - b ), c )
984
+ self .assertEqual (gcd (- b , - a ), c )
985
+ c = 576559230871654959816130551884856912003141446781646602790216406874
986
+ a = x * c
987
+ b = y * c
988
+ self .assertEqual (gcd (a , b ), c )
989
+ self .assertEqual (gcd (b , a ), c )
990
+ self .assertEqual (gcd (- a , b ), c )
991
+ self .assertEqual (gcd (b , - a ), c )
992
+ self .assertEqual (gcd (a , - b ), c )
993
+ self .assertEqual (gcd (- b , a ), c )
994
+ self .assertEqual (gcd (- a , - b ), c )
995
+ self .assertEqual (gcd (- b , - a ), c )
996
+
997
+ self .assertRaises (TypeError , gcd , 120.0 , 84 )
998
+ self .assertRaises (TypeError , gcd , 120 , 84.0 )
999
+ self .assertEqual (gcd (MyIndexable (120 ), MyIndexable (84 )), 12 )
1000
+
1001
+ # test of specializations
1002
+ self .assertRaises (TypeError , gcd , 120 , MyIndexable (6.0 ))
1003
+ self .assertRaises (TypeError , gcd , 'ahoj' , 1 )
1004
+ self .assertEqual (gcd (MyIndexable (True ), MyIndexable (84 )), 1 )
1004
1005
1005
1006
def test_floor (self ):
1006
1007
class TestFloor :
@@ -1303,7 +1304,8 @@ def executeFnTest(self, values, fn, fnName):
1303
1304
self .assertTrue (math .isnan (result ), "Test2 fail: {}({}) = {}, but was {}" .format (fnName , value [0 ], expected , result ))
1304
1305
else :
1305
1306
if result != expected :
1306
- self .assertTrue (math .isclose (result , expected , rel_tol = 1e-12 ), "Test3 fail: {}({}) = {}, but was {}" .format (fnName , value [0 ], expected , result ))
1307
+ if (sys .version_info .major >= 3 and sys .version_info .minor >= 5 ):
1308
+ self .assertTrue (math .isclose (result , expected , rel_tol = 1e-14 ), "Test3 fail: {}({}) = {}, but was {}" .format (fnName , value [0 ], expected , result ))
1307
1309
1308
1310
def test_erf (self ):
1309
1311
erfValues = [(0.0 , 0.0 ), (- 0.0 , - 0.0 ), (INF , 1.0 ), (NINF , - 1.0 ), (NAN , NAN ),
0 commit comments