summaryrefslogtreecommitdiff
path: root/Lib/test/test_long.py
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/test/test_long.py')
-rw-r--r--Lib/test/test_long.py18
1 files changed, 18 insertions, 0 deletions
diff --git a/Lib/test/test_long.py b/Lib/test/test_long.py
index b00f736064..c47587888a 100644
--- a/Lib/test/test_long.py
+++ b/Lib/test/test_long.py
@@ -805,6 +805,24 @@ class LongTest(unittest.TestCase):
self.assertRaises(ZeroDivisionError, eval, zero, namespace)
+ def test_small_ints(self):
+ for i in range(-5, 257):
+ self.assertTrue(i is i + 0)
+ self.assertTrue(i is i * 1)
+ self.assertTrue(i is i - 0)
+ self.assertTrue(i is i // 1)
+ self.assertTrue(i is i & -1)
+ self.assertTrue(i is i | 0)
+ self.assertTrue(i is i ^ 0)
+ self.assertTrue(i is ~~i)
+ self.assertTrue(i is i**1)
+ self.assertTrue(i is int(str(i)))
+ self.assertTrue(i is i<<2>>2, str(i))
+ # corner cases
+ i = 1 << 70
+ self.assertTrue(i - i is 0)
+ self.assertTrue(0 * i is 0)
+
def test_main():
support.run_unittest(LongTest)