@@ -639,11 +639,15 @@ def test_nmod():
639639 assert G (1 ,2 ) != G (0 ,2 )
640640 assert G (0 ,2 ) != G (0 ,3 )
641641 assert G (3 ,5 ) == G (8 ,5 )
642+ assert raises (lambda : G ([], 3 ), TypeError )
642643 #assert G(3,5) == 8 # do we want this?
643644 #assert 8 == G(3,5)
644645 assert G (3 ,5 ) != 7
645646 assert 7 != G (3 ,5 )
646- assert G (- 3 ,5 ) == - G (3 ,5 ) == G (2 ,5 )
647+ assert raises (lambda : G (3 ,5 ) < G (2 ,5 ), TypeError )
648+ assert bool (G (0 ,5 )) is False
649+ assert bool (G (2 ,5 )) is True
650+ assert G (- 3 ,5 ) == - G (3 ,5 ) == G (2 ,5 ) == + G (2 ,5 )
647651 assert G (2 ,5 ) + G (1 ,5 ) == G (3 ,5 )
648652 assert G (2 ,5 ) + 1 == G (3 ,5 )
649653 assert 1 + G (2 ,5 ) == G (3 ,5 )
@@ -658,13 +662,25 @@ def test_nmod():
658662 assert 3 / G (2 ,17 ) == G (10 ,17 )
659663 assert G (3 ,17 ) * flint .fmpq (11 ,5 ) == G (10 ,17 )
660664 assert G (3 ,17 ) / flint .fmpq (11 ,5 ) == G (6 ,17 )
665+ assert G (flint .fmpq (2 , 3 ), 5 ) == G (4 ,5 )
666+ assert raises (lambda : G (flint .fmpq (2 , 3 ), 3 ), ZeroDivisionError )
661667 assert raises (lambda : G (2 ,5 ) / G (0 ,5 ), ZeroDivisionError )
662668 assert raises (lambda : G (2 ,5 ) / 0 , ZeroDivisionError )
663669 assert raises (lambda : G (2 ,5 ) + G (2 ,7 ), ValueError )
664670 assert raises (lambda : G (2 ,5 ) - G (2 ,7 ), ValueError )
665671 assert raises (lambda : G (2 ,5 ) * G (2 ,7 ), ValueError )
666672 assert raises (lambda : G (2 ,5 ) / G (2 ,7 ), ValueError )
673+ assert raises (lambda : G (2 ,5 ) + [], TypeError )
674+ assert raises (lambda : G (2 ,5 ) - [], TypeError )
675+ assert raises (lambda : G (2 ,5 ) * [], TypeError )
676+ assert raises (lambda : G (2 ,5 ) / [], TypeError )
677+ assert raises (lambda : [] + G (2 ,5 ), TypeError )
678+ assert raises (lambda : [] - G (2 ,5 ), TypeError )
679+ assert raises (lambda : [] * G (2 ,5 ), TypeError )
680+ assert raises (lambda : [] / G (2 ,5 ), TypeError )
667681 assert G (3 ,17 ).modulus () == 17
682+ assert str (G (3 ,5 )) == "3"
683+ assert G (3 ,5 ).repr () == "nmod(3, 5)"
668684
669685def test_nmod_poly ():
670686 P = flint .nmod_poly
0 commit comments