From 7e74eac48cab78c86ac377dac391e1506a889d92 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Sun, 5 Oct 2014 16:28:21 -0400 Subject: Address PR comments --- test_six.py | 30 ++++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) (limited to 'test_six.py') diff --git a/test_six.py b/test_six.py index 4ca3200..6b2b97e 100644 --- a/test_six.py +++ b/test_six.py @@ -389,9 +389,9 @@ def test_dictionary_iterators(monkeypatch): monkeypatch.undo() -def test_dictionary_views(monkeypatch): - if sys.version_info[:2] <= (2, 6): - py.test.skip("view methods on dictionaries only available on 2.7+") +@py.test.mark.skipIf(sys.version_info[:2] <= (2, 6), + "view methods on dictionaries only available on 2.7+") +def test_dictionary_views(): def stock_method_name(viewwhat): """Given a method suffix like "keys" or "values", return the name of the dict method that delivers those on the version of Python @@ -401,22 +401,24 @@ def test_dictionary_views(monkeypatch): return 'view' + viewwhat class MyDict(dict): - pass + def viewkeys(self, *args, **kw): + record.append(kw) + return super(MyDict, self).viewkeys() - d = MyDict(zip(range(10), reversed(range(10)))) + def keys(self, *args, **kw): + record.append(kw) + return super().keys() + + d = dict(zip(range(10), reversed(range(10)))) for name in "keys", "values", "items": meth = getattr(six, "view" + name) view = meth(d) assert set(view) == set(getattr(d, name)()) - record = [] - def with_kw(*args, **kw): - record.append(kw["kw"]) - return old(*args) - old = getattr(MyDict, stock_method_name(name)) - monkeypatch.setattr(MyDict, stock_method_name(name), with_kw) - meth(d, kw=42) - assert record == [42] - monkeypatch.undo() + d = MyDict() + record = [] + six.viewkeys(d, kw=42) + assert record == [{'kw': 42}] + def test_advance_iterator(): assert six.next is six.advance_iterator -- cgit v1.2.1