[Python-checkins] python/dist/src/Lib/test test_builtin.py,1.17,1.18

aleax@users.sourceforge.net aleax@users.sourceforge.net
Tue, 22 Apr 2003 01:13:03 -0700


Update of /cvsroot/python/python/dist/src/Lib/test
In directory sc8-pr-cvs1:/tmp/cvs-serv22004/src/Lib/test

Modified Files:
	test_builtin.py 
Log Message:
Adding new built-in function sum, with docs and tests.


Index: test_builtin.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_builtin.py,v
retrieving revision 1.17
retrieving revision 1.18
diff -C2 -d -r1.17 -r1.18
*** test_builtin.py	15 Apr 2003 18:59:28 -0000	1.17
--- test_builtin.py	22 Apr 2003 08:12:30 -0000	1.18
***************
*** 1100,1103 ****
--- 1100,1124 ----
          self.assertEqual(str(a), '{0: {...}}')
  
+     def test_sum(self):
+         self.assertEqual(sum([]), 0)
+         self.assertEqual(sum(range(2,8)), 27)
+         self.assertEqual(sum(iter(range(2,8))), 27)
+         self.assertEqual(sum(Squares(10)), 285)
+         self.assertEqual(sum(iter(Squares(10))), 285)
+         self.assertEqual(sum([[1], [2], [3]], []), [1, 2, 3])
+ 
+         self.assertRaises(TypeError, sum)
+         self.assertRaises(TypeError, sum, 42)
+         self.assertRaises(TypeError, sum, ['a', 'b', 'c'])
+         self.assertRaises(TypeError, sum, ['a', 'b', 'c'], '')
+         self.assertRaises(TypeError, sum, [[1], [2], [3]])
+         self.assertRaises(TypeError, sum, [{2:3}])
+         self.assertRaises(TypeError, sum, [{2:3}]*2, {2:3})
+ 
+         class BadSeq:
+             def __getitem__(self, index):
+                 raise ValueError
+         self.assertRaises(ValueError, sum, BadSeq())
+ 
      def test_tuple(self):
          self.assertEqual(tuple(()), ())