Fix and test weak referencing of itertools.tee objects.

This commit is contained in:
Raymond Hettinger 2004-10-17 16:40:14 +00:00
parent 837dd93e3b
commit a9f6092904
2 changed files with 14 additions and 1 deletions

View file

@ -1,6 +1,7 @@
import unittest
from test import test_support
from itertools import *
from weakref import proxy
import sys
import operator
import random
@ -382,6 +383,13 @@ class TestBasicOps(unittest.TestCase):
t3 = tnew(t1)
self.assert_(list(t1) == list(t2) == list(t3) == list('abc'))
# test that tee objects are weak referencable
a, b = tee(xrange(10))
p = proxy(a)
self.assertEqual(getattr(p, '__class__'), type(b))
del a
self.assertRaises(ReferenceError, getattr, p, '__class__')
def test_StopIteration(self):
self.assertRaises(StopIteration, izip().next)