Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(209)

Delta Between Two Patch Sets: Lib/test/test_range.py

Issue 602: range: lean and mean (Closed) SVN Base: http://svn.python.org/view/*checkout*/python/branches/py3k/
Left Patch Set: Created 5 months, 1 week ago , Downloaded from: http://bugs.python.org/file10152/range_lean_and_mean.patch
Right Patch Set: __len__ is back! Created 5 months, 1 week ago
Use n/p to move between diff chunks; N/P to move between comments. Please Sign in to add in-line comments.
Jump to:
Left: Side by side diff | Download
Right: Side by side diff | Download
LEFTRIGHT
1 # Python test set -- built-in functions 1 # Python test set -- built-in functions
2 2
3 import test.test_support, unittest 3 import test.test_support, unittest
4 import sys 4 import sys
5 5
6 import warnings 6 import warnings
7 warnings.filterwarnings("ignore", "integer argument expected", 7 warnings.filterwarnings("ignore", "integer argument expected",
8 DeprecationWarning, "unittest") 8 DeprecationWarning, "unittest")
9 9
10 class RangeTest(unittest.TestCase): 10 class RangeTest(unittest.TestCase):
(...skipping 33 matching lines...) Show 10 above Show 10 below
44 self.assertRaises(ValueError, range, 1, 2, 0) 44 self.assertRaises(ValueError, range, 1, 2, 0)
45 45
46 self.assertRaises(TypeError, range, 0.0, 2, 1) 46 self.assertRaises(TypeError, range, 0.0, 2, 1)
47 self.assertRaises(TypeError, range, 1, 2.0, 1) 47 self.assertRaises(TypeError, range, 1, 2.0, 1)
48 self.assertRaises(TypeError, range, 1, 2, 1.0) 48 self.assertRaises(TypeError, range, 1, 2, 1.0)
49 self.assertRaises(TypeError, range, 1e100, 1e101, 1e101) 49 self.assertRaises(TypeError, range, 1e100, 1e101, 1e101)
50 50
51 self.assertRaises(TypeError, range, 0, "spam") 51 self.assertRaises(TypeError, range, 0, "spam")
52 self.assertRaises(TypeError, range, 0, 42, "spam") 52 self.assertRaises(TypeError, range, 0, 42, "spam")
53 53
54 self.assertEqual(len(range(0, sys.maxsize, sys.maxsize-1)), 2)
55
56 r = range(-sys.maxsize, sys.maxsize, 2)
57 self.assertEqual(len(r), sys.maxsize)
58
59 def test_repr(self): 54 def test_repr(self):
60 self.assertEqual(repr(range(1)), 'range(0, 1)') 55 self.assertEqual(repr(range(1)), 'range(0, 1)')
61 self.assertEqual(repr(range(1, 2)), 'range(1, 2)') 56 self.assertEqual(repr(range(1, 2)), 'range(1, 2)')
62 self.assertEqual(repr(range(1, 2, 3)), 'range(1, 2, 3)') 57 self.assertEqual(repr(range(1, 2, 3)), 'range(1, 2, 3)')
63 58
64 def test_attributes(self): 59 def test_attributes(self):
65 r = range(0, 10, 2) 60 r = range(0, 10, 2)
66 self.assertEqual(r.start, 0) 61 self.assertEqual(r.start, 0)
67 self.assertEqual(r.stop, 10) 62 self.assertEqual(r.stop, 10)
68 self.assertEqual(r.step, 2) 63 self.assertEqual(r.step, 2)
69 r = range(10) 64 r = range(10)
70 self.assertEqual(r.start, 0) 65 self.assertEqual(r.start, 0)
71 self.assertEqual(r.stop, 10) 66 self.assertEqual(r.stop, 10)
72 self.assertEqual(r.step, 1) 67 self.assertEqual(r.step, 1)
GvR 2008/05/02 13:52:47 I'd like the test to be explicit about what happen
68 r = range(10, 0, 4)
69 self.assertEqual(r.start, 10)
70 self.assertEqual(r.stop, 0)
71 self.assertEqual(r.step, 4)
72
73 def test_len(self):
74 self.assertEqual(len(range(10)), 10)
75 self.assertEqual(len(range(10, 0)), 0)
76 self.assertEqual(len(range(0, 10, 2)), 5)
77
78 self.assertEqual(len(range(0, sys.maxsize, sys.maxsize-1)), 2)
79
80 r = range(-sys.maxsize, sys.maxsize, 2)
81 self.assertEqual(len(r), sys.maxsize)
73 82
74 def test_main(): 83 def test_main():
75 test.test_support.run_unittest(RangeTest) 84 test.test_support.run_unittest(RangeTest)
76 85
77 if __name__ == "__main__": 86 if __name__ == "__main__":
78 test_main() 87 test_main()
LEFTRIGHT

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld r338