# Check every path through every method of UserList
from UserList
import UserList
from test
import test_support
, list_tests
class UserListTest(list_tests
.CommonTest
):
super(UserListTest
, self
).test_getslice()
self
.assertEqual(u
[:i
], l
[:i
])
self
.assertEqual(u
[i
:], l
[i
:])
self
.assertEqual(u
[i
:j
], l
[i
:j
])
def test_add_specials(self
):
self
.assertEqual(u2
, list("spameggs"))
def test_radd_specials(self
):
self
.assertEqual(u2
, list("spameggs"))
u2
= u
.__radd
__(UserList("spam"))
self
.assertEqual(u2
, list("spameggs"))
super(UserListTest
, self
).test_iadd()
self
.assertEqual(u
, [0, 1, 0, 1])
u
= self
.type2test([0, 1])
self
.assertEqual(u
, [0, 1])
self
.assertNotEqual(u
, [0])
self
.assertNotEqual(u
, [0, 2])
u
= self
.type2test([0, 1])
self
.assertEqual(u
+ [], u
)
self
.assertEqual(u
+ [2], [0, 1, 2])
def test_getitemoverwriteiter(self
):
# Verify that __getitem__ overrides *are* recognized by __iter__
def __getitem__(self
, key
):
self
.assertEqual(iter(T((1,2))).next(), "0!!!")
test_support
.run_unittest(UserListTest
)
if __name__
== "__main__":