diff options
| author | Ib Lundgren <ib.lundgren@gmail.com> | 2012-11-17 13:55:07 +0100 |
|---|---|---|
| committer | Ib Lundgren <ib.lundgren@gmail.com> | 2012-11-17 13:55:07 +0100 |
| commit | 2dbedb93b63147d3abec13007792127a54fcbec8 (patch) | |
| tree | e03aaf9bbd8b6eaadff09e4dccf56608f50e3b5d /tests | |
| parent | f4d0d00559a50f84fdd55d7a32a223e956957d53 (diff) | |
| download | oauthlib-2dbedb93b63147d3abec13007792127a54fcbec8.tar.gz | |
Fixed blooper in url_equals
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/unittest/__init__.py | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/tests/unittest/__init__.py b/tests/unittest/__init__.py index d667b42..35b239a 100644 --- a/tests/unittest/__init__.py +++ b/tests/unittest/__init__.py @@ -1,3 +1,4 @@ +import collections import sys try: import urlparse @@ -18,18 +19,22 @@ except ImportError: if sys.version_info[1] == 1: TestCase.assertIsInstance = lambda self, obj, cls: self.assertTrue(isinstance(obj, cls)) -# Python 3 does not provide assertItemsEqual -# TODO (ib-lundgren): Find out why and what their recommended alternative is -if sys.version_info[0] == 3: - TestCase.assertItemsEqual = lambda self, a, b: self.assertEqual(sorted(a), sorted(b)) +# Somewhat consistent itemsequal between all python versions +if sys.version_info[1] == 3: + TestCase.assertItemsEqual = TestCase.assertCountEqual +elif sys.version_info[0] == 2 and sys.version_info[1] == 6: + pass +else: + TestCase.assertItemsEqual = lambda self, a, b: self.assertEqual( + collections.Counter(list(a)), collections.Counter(list(b))) # URL comparison where query param order is insignifcant def url_equals(self, a, b, parse_fragment=False): - parsed_a = urlparse.urlparse(a) - parsed_b = urlparse.urlparse(b) - query_a = urlparse.parse_qsl(a) - query_b = urlparse.parse_qsl(b) + parsed_a = urlparse.urlparse(a, allow_fragments=parse_fragment) + parsed_b = urlparse.urlparse(b, allow_fragments=parse_fragment) + query_a = urlparse.parse_qsl(parsed_a.query) + query_b = urlparse.parse_qsl(parsed_b.query) if parse_fragment: fragment_a = urlparse.parse_qsl(parsed_a.fragment) fragment_b = urlparse.parse_qsl(parsed_b.fragment) |
