diff options
author | Raymond Hettinger <python@rcn.com> | 2011-01-03 02:12:02 (GMT) |
---|---|---|
committer | Raymond Hettinger <python@rcn.com> | 2011-01-03 02:12:02 (GMT) |
commit | 426e052a4f60f94f3d97c95ce8477b967a975b3b (patch) | |
tree | 5e9fa2c4be45ccb06af560cb8b197e16702c87e5 /Lib | |
parent | 23eaa70057ce40672c91375f1319c9a9f19790b5 (diff) | |
download | cpython-426e052a4f60f94f3d97c95ce8477b967a975b3b.zip cpython-426e052a4f60f94f3d97c95ce8477b967a975b3b.tar.gz cpython-426e052a4f60f94f3d97c95ce8477b967a975b3b.tar.bz2 |
Make C helper function more closely match the pure python version, and add tests.
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/test/test_collections.py | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/Lib/test/test_collections.py b/Lib/test/test_collections.py index deda1cd..d785fcb 100644 --- a/Lib/test/test_collections.py +++ b/Lib/test/test_collections.py @@ -3,7 +3,7 @@ import unittest, doctest, operator import inspect from test import support -from collections import namedtuple, Counter, OrderedDict +from collections import namedtuple, Counter, OrderedDict, _count_elements from test import mapping_tests import pickle, copy from random import randrange, shuffle @@ -775,6 +775,19 @@ class TestCounter(unittest.TestCase): c.subtract('aaaabbcce') self.assertEqual(c, Counter(a=-1, b=0, c=-1, d=1, e=-1)) + def test_helper_function(self): + # two paths, one for real dicts and one for other mappings + elems = list('abracadabra') + + d = dict() + _count_elements(d, elems) + self.assertEqual(d, {'a': 5, 'r': 2, 'b': 2, 'c': 1, 'd': 1}) + + m = OrderedDict() + _count_elements(m, elems) + self.assertEqual(m, + OrderedDict([('a', 5), ('b', 2), ('r', 2), ('c', 1), ('d', 1)])) + class TestOrderedDict(unittest.TestCase): def test_init(self): |