diff options
author | Serhiy Storchaka <storchaka@gmail.com> | 2017-04-16 09:37:18 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-04-16 09:37:18 +0300 |
commit | baf9f29811dba9c06e76b8e220bd77260202f299 (patch) | |
tree | 2057d3d950d1411d7399929558745fd63230556a /Lib/test/test_builtin.py | |
parent | 813f943c592cf225871b99cffc99304c8cbbee40 (diff) | |
download | cpython-git-baf9f29811dba9c06e76b8e220bd77260202f299.tar.gz |
bpo-29839: Raise ValueError rather than OverflowError in len() for negative values. (#701)
Diffstat (limited to 'Lib/test/test_builtin.py')
-rw-r--r-- | Lib/test/test_builtin.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/Lib/test/test_builtin.py b/Lib/test/test_builtin.py index d2420e9dda..6613ca3a8c 100644 --- a/Lib/test/test_builtin.py +++ b/Lib/test/test_builtin.py @@ -770,10 +770,18 @@ class BuiltinTest(unittest.TestCase): def __len__(self): return 4.5 self.assertRaises(TypeError, len, FloatLen()) + class NegativeLen: + def __len__(self): + return -10 + self.assertRaises(ValueError, len, NegativeLen()) class HugeLen: def __len__(self): return sys.maxsize + 1 self.assertRaises(OverflowError, len, HugeLen()) + class HugeNegativeLen: + def __len__(self): + return -sys.maxsize-10 + self.assertRaises(ValueError, len, HugeNegativeLen()) class NoLenMethod(object): pass self.assertRaises(TypeError, len, NoLenMethod()) |