mirror of
https://github.com/python/cpython.git
synced 2025-08-04 08:59:19 +00:00
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)
This commit is contained in:
parent
6b70f8b91d
commit
1dde95dffa
7 changed files with 696 additions and 514 deletions
49
Lib/test/test_tuple.py
Normal file
49
Lib/test/test_tuple.py
Normal file
|
@ -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()
|
Loading…
Add table
Add a link
Reference in a new issue