summaryrefslogtreecommitdiff
path: root/test_singledispatch.py
diff options
context:
space:
mode:
author?ukasz Langa <lukasz@langa.pl>2013-05-31 12:59:38 +0200
committer?ukasz Langa <lukasz@langa.pl>2013-05-31 12:59:38 +0200
commit7608b45137e9b06d127c25550821f11a644479dd (patch)
tree98be66fef0526496152aca2cdebac701073d5856 /test_singledispatch.py
parentb0e6c5214c258c0e861e058df3c63411c8eae6d2 (diff)
parent070c478c0c768a1cf94a0964c594a03a4e520f8d (diff)
downloadsingledispatch-7608b45137e9b06d127c25550821f11a644479dd.tar.gz
Merged with upstream and made compatible with 2.6 - 3.3
Diffstat (limited to 'test_singledispatch.py')
-rw-r--r--test_singledispatch.py13
1 files changed, 11 insertions, 2 deletions
diff --git a/test_singledispatch.py b/test_singledispatch.py
index 484e88e..60872f8 100644
--- a/test_singledispatch.py
+++ b/test_singledispatch.py
@@ -313,12 +313,14 @@ class TestSingleDispatch(unittest.TestCase):
self.assertEqual(len(td), 1)
self.assertEqual(td.get_ops, [list, dict])
self.assertEqual(td.set_ops, [dict, list, dict])
- self.assertEqual(td.data[dict], g.dispatch(dict))
+ self.assertEqual(td.data[dict],
+ functools._find_impl(dict, g.registry))
self.assertEqual(g(l), "list")
self.assertEqual(len(td), 2)
self.assertEqual(td.get_ops, [list, dict])
self.assertEqual(td.set_ops, [dict, list, dict, list])
- self.assertEqual(td.data[list], g.dispatch(list))
+ self.assertEqual(td.data[list],
+ functools._find_impl(list, g.registry))
class X(object):
pass
c.MutableMapping.register(X) # Will not invalidate the cache,
@@ -341,6 +343,11 @@ class TestSingleDispatch(unittest.TestCase):
self.assertEqual(g(d), "sized")
self.assertEqual(td.get_ops, [list, dict, dict, list, list, dict])
self.assertEqual(td.set_ops, [dict, list, dict, list, dict, list])
+ g.dispatch(list)
+ g.dispatch(dict)
+ self.assertEqual(td.get_ops, [list, dict, dict, list, list, dict,
+ list, dict])
+ self.assertEqual(td.set_ops, [dict, list, dict, list, dict, list])
c.MutableSet.register(X) # Will invalidate the cache.
self.assertEqual(len(td), 2) # Stale cache.
self.assertEqual(g(l), "list")
@@ -354,6 +361,8 @@ class TestSingleDispatch(unittest.TestCase):
g.register(dict, lambda arg: "dict")
self.assertEqual(g(d), "dict")
self.assertEqual(g(l), "list")
+ g._clear_cache()
+ self.assertEqual(len(td), 0)
functools.WeakKeyDictionary = _orig_wkd