py: Fix rshift and not of zero/one edge cases in mpz.

Addresses issue #1027.
This commit is contained in:
Damien George
2014-12-31 19:35:01 +00:00
parent 816a46a4ab
commit e0ac194f4f
2 changed files with 29 additions and 2 deletions

View File

@@ -0,0 +1,14 @@
# test [0,-0,1,-1] edge cases of bignum
long_zero = (2**64) >> 65
long_neg_zero = -long_zero
long_one = long_zero + 1
long_neg_one = -long_one
cases = [long_zero, long_neg_zero, long_one, long_neg_one]
print(cases)
print([-c for c in cases])
print([~c for c in cases])
print([c >> 1 for c in cases])
print([c << 1 for c in cases])