summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_tuple.py
diff options
context:
space:
mode:
authorWalter Dörwald <walter@livinglogic.de>2003-12-08 11:38:45 (GMT)
committerWalter Dörwald <walter@livinglogic.de>2003-12-08 11:38:45 (GMT)
commit1dde95dffa44c7ddc4eee7b21cc44274d3e3effe (patch)
treed0dd6303c14c3c86f91cc93d3b1c028ecc34c334 /Lib/test/test_tuple.py
parent6b70f8b91d48b1d2ebc8c77a10dcf9e1a7817a19 (diff)
downloadcpython-1dde95dffa44c7ddc4eee7b21cc44274d3e3effe.zip
cpython-1dde95dffa44c7ddc4eee7b21cc44274d3e3effe.tar.gz
cpython-1dde95dffa44c7ddc4eee7b21cc44274d3e3effe.tar.bz2
Move list and tuple tests from test_types.py to their own scripts:
test_tuple.py and test_list.py. Common tests for tuple, list and UserList are shared (in seq_tests.py and list_tests.py). Port tests to PyUnit. (From SF patch #736962)
Diffstat (limited to 'Lib/test/test_tuple.py')
-rw-r--r--Lib/test/test_tuple.py49
1 files changed, 49 insertions, 0 deletions
diff --git a/Lib/test/test_tuple.py b/Lib/test/test_tuple.py
new file mode 100644
index 0000000..4fe299f
--- /dev/null
+++ b/Lib/test/test_tuple.py
@@ -0,0 +1,49 @@
+import unittest
+from test import test_support, seq_tests
+
+class TupleTest(seq_tests.CommonTest):
+ type2test = tuple
+
+ def test_constructors(self):
+ super(TupleTest, self).test_len()
+ # calling built-in types without argument must return empty
+ self.assertEqual(tuple(), ())
+
+ def test_truth(self):
+ super(TupleTest, self).test_truth()
+ self.assert_(not ())
+ self.assert_((42, ))
+
+ def test_len(self):
+ super(TupleTest, self).test_len()
+ self.assertEqual(len(()), 0)
+ self.assertEqual(len((0,)), 1)
+ self.assertEqual(len((0, 1, 2)), 3)
+
+ def test_iadd(self):
+ super(TupleTest, self).test_iadd()
+ u = (0, 1)
+ u2 = u
+ u += (2, 3)
+ self.assert_(u is not u2)
+
+ def test_imul(self):
+ super(TupleTest, self).test_imul()
+ u = (0, 1)
+ u2 = u
+ u *= 3
+ self.assert_(u is not u2)
+
+ def test_tupleresizebug(self):
+ # Check that a specific bug in _PyTuple_Resize() is squashed.
+ def f():
+ for i in range(1000):
+ yield i
+ self.assertEqual(list(tuple(f())), range(1000))
+
+
+def test_main():
+ test_support.run_unittest(TupleTest)
+
+if __name__=="__main__":
+ test_main()