Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(6)

Side by Side Diff: Lib/test/test_set.py

Issue 602: range: lean and mean (Closed) SVN Base: http://svn.python.org/view/*checkout*/python/branches/py3k/
Patch Set: address more concerns Created 1 year, 7 months ago , Downloaded from: http://bugs.python.org/file10183/range_lean_and_mean5.patch
Use n/p to move between diff chunks; N/P to move between comments. Please Sign in to add in-line comments.
Jump to:
View unified diff | Download patch
OLDNEW
1 import unittest 1 import unittest
2 from test import test_support 2 from test import test_support
3 from weakref import proxy 3 from weakref import proxy
4 import operator 4 import operator
5 import copy 5 import copy
6 import pickle 6 import pickle
7 import os 7 import os
8 from random import randrange, shuffle 8 from random import randrange, shuffle
9 import sys 9 import sys
10 import warnings 10 import warnings
(...skipping 1551 matching lines...) Expand 10 before | Expand all | Expand 10 after
1562 1562
1563 from itertools import chain 1563 from itertools import chain
1564 def L(seqn): 1564 def L(seqn):
1565 'Test multiple tiers of iterators' 1565 'Test multiple tiers of iterators'
1566 return chain(map(lambda x:x, R(Ig(G(seqn))))) 1566 return chain(map(lambda x:x, R(Ig(G(seqn)))))
1567 1567
1568 class TestVariousIteratorArgs(unittest.TestCase): 1568 class TestVariousIteratorArgs(unittest.TestCase):
1569 1569
1570 def test_constructor(self): 1570 def test_constructor(self):
1571 for cons in (set, frozenset): 1571 for cons in (set, frozenset):
1572 for s in ("123", "", range(1000), ('do', 1.2), range(2000,2200,5)): 1572 for s in ("123", "", ('do', 1.2)):
1573 for g in (G, I, Ig, S, L, R): 1573 for g in (G, I, Ig, S, L, R):
1574 self.assertEqual(sorted(cons(g(s)), key=repr), sorted(g(s), key=repr)) 1574 self.assertEqual(sorted(cons(g(s)), key=repr), sorted(g(s), key=repr))
1575 self.assertRaises(TypeError, cons , X(s)) 1575 self.assertRaises(TypeError, cons , X(s))
1576 self.assertRaises(TypeError, cons , N(s)) 1576 self.assertRaises(TypeError, cons , N(s))
1577 self.assertRaises(ZeroDivisionError, cons , E(s)) 1577 self.assertRaises(ZeroDivisionError, cons , E(s))
1578 1578
1579 def test_inline_methods(self): 1579 def test_inline_methods(self):
1580 s = set('november') 1580 s = set('november')
1581 for data in ("123", "", range(1000), ('do', 1.2), range(2000,2200,5), 'd ecember'): 1581 for data in ("123", "", ('do', 1.2), 'december'):
1582 for meth in (s.union, s.intersection, s.difference, s.symmetric_diff erence, s.isdisjoint): 1582 for meth in (s.union, s.intersection, s.difference, s.symmetric_diff erence, s.isdisjoint):
1583 for g in (G, I, Ig, L, R): 1583 for g in (G, I, Ig, L, R):
1584 expected = meth(data) 1584 expected = meth(data)
1585 actual = meth(G(data)) 1585 actual = meth(G(data))
1586 if isinstance(expected, bool): 1586 if isinstance(expected, bool):
1587 self.assertEqual(actual, expected) 1587 self.assertEqual(actual, expected)
1588 else: 1588 else:
1589 self.assertEqual(sorted(actual, key=repr), sorted(expect ed, key=repr)) 1589 self.assertEqual(sorted(actual, key=repr), sorted(expect ed, key=repr))
1590 self.assertRaises(TypeError, meth, X(s)) 1590 self.assertRaises(TypeError, meth, X(s))
1591 self.assertRaises(TypeError, meth, N(s)) 1591 self.assertRaises(TypeError, meth, N(s))
1592 self.assertRaises(ZeroDivisionError, meth, E(s)) 1592 self.assertRaises(ZeroDivisionError, meth, E(s))
1593 1593
1594 def test_inplace_methods(self): 1594 def test_inplace_methods(self):
1595 for data in ("123", "", range(1000), ('do', 1.2), range(2000,2200,5), 'd ecember'): 1595 for data in ("123", "", ('do', 1.2), 'december'):
1596 for methname in ('update', 'intersection_update', 1596 for methname in ('update', 'intersection_update',
1597 'difference_update', 'symmetric_difference_update') : 1597 'difference_update', 'symmetric_difference_update') :
1598 for g in (G, I, Ig, S, L, R): 1598 for g in (G, I, Ig, S, L, R):
1599 s = set('january') 1599 s = set('january')
1600 t = s.copy() 1600 t = s.copy()
1601 getattr(s, methname)(list(g(data))) 1601 getattr(s, methname)(list(g(data)))
1602 getattr(t, methname)(g(data)) 1602 getattr(t, methname)(g(data))
1603 self.assertEqual(sorted(s, key=repr), sorted(t, key=repr)) 1603 self.assertEqual(sorted(s, key=repr), sorted(t, key=repr))
1604 1604
1605 self.assertRaises(TypeError, getattr(set('january'), methname), X(data)) 1605 self.assertRaises(TypeError, getattr(set('january'), methname), X(data))
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after
1759 import gc 1759 import gc
1760 counts = [None] * 5 1760 counts = [None] * 5
1761 for i in range(len(counts)): 1761 for i in range(len(counts)):
1762 test_support.run_unittest(*test_classes) 1762 test_support.run_unittest(*test_classes)
1763 gc.collect() 1763 gc.collect()
1764 counts[i] = sys.gettotalrefcount() 1764 counts[i] = sys.gettotalrefcount()
1765 print(counts) 1765 print(counts)
1766 1766
1767 if __name__ == "__main__": 1767 if __name__ == "__main__":
1768 test_main(verbose=True) 1768 test_main(verbose=True)
OLDNEW

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld r497