@@ -1279,6 +1279,7 @@ def test_nmod():
1279
1279
assert G (1 ,2 ) != G (0 ,2 )
1280
1280
assert G (0 ,2 ) != G (0 ,3 )
1281
1281
assert G (3 ,5 ) == G (8 ,5 )
1282
+ assert isinstance (hash (G (3 , 5 )), int )
1282
1283
assert raises (lambda : G ([], 3 ), TypeError )
1283
1284
#assert G(3,5) == 8 # do we want this?
1284
1285
#assert 8 == G(3,5)
@@ -1300,9 +1301,14 @@ def test_nmod():
1300
1301
assert G (3 ,17 ) / G (2 ,17 ) == G (10 ,17 )
1301
1302
assert G (3 ,17 ) / 2 == G (10 ,17 )
1302
1303
assert 3 / G (2 ,17 ) == G (10 ,17 )
1304
+ assert G (0 ,3 ) / G (1 ,3 ) == G (0 ,3 )
1303
1305
assert G (3 ,17 ) * flint .fmpq (11 ,5 ) == G (10 ,17 )
1304
1306
assert G (3 ,17 ) / flint .fmpq (11 ,5 ) == G (6 ,17 )
1307
+ assert G (1 ,3 ) ** 2 == G (1 ,3 )
1308
+ assert G (2 ,3 ) ** flint .fmpz (2 ) == G (1 ,3 )
1305
1309
assert G (flint .fmpq (2 , 3 ), 5 ) == G (4 ,5 )
1310
+ assert raises (lambda : G (2 ,5 ) ** G (2 ,5 ), TypeError )
1311
+ assert raises (lambda : flint .fmpz (2 ) ** G (2 ,5 ), TypeError )
1306
1312
assert raises (lambda : G (flint .fmpq (2 , 3 ), 3 ), ZeroDivisionError )
1307
1313
assert raises (lambda : G (2 ,5 ) / G (0 ,5 ), ZeroDivisionError )
1308
1314
assert raises (lambda : G (2 ,5 ) / 0 , ZeroDivisionError )
@@ -1314,10 +1320,12 @@ def test_nmod():
1314
1320
assert raises (lambda : G (2 ,5 ) - [], TypeError )
1315
1321
assert raises (lambda : G (2 ,5 ) * [], TypeError )
1316
1322
assert raises (lambda : G (2 ,5 ) / [], TypeError )
1323
+ assert raises (lambda : G (2 ,5 ) ** [], TypeError )
1317
1324
assert raises (lambda : [] + G (2 ,5 ), TypeError )
1318
1325
assert raises (lambda : [] - G (2 ,5 ), TypeError )
1319
1326
assert raises (lambda : [] * G (2 ,5 ), TypeError )
1320
1327
assert raises (lambda : [] / G (2 ,5 ), TypeError )
1328
+ assert raises (lambda : [] ** G (2 ,5 ), TypeError )
1321
1329
assert G (3 ,17 ).modulus () == 17
1322
1330
assert str (G (3 ,5 )) == "3"
1323
1331
assert G (3 ,5 ).repr () == "nmod(3, 5)"
0 commit comments