summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulien Cristau <julien.cristau@logilab.fr>2013-07-22 08:51:35 +0200
committerJulien Cristau <julien.cristau@logilab.fr>2013-07-22 08:51:35 +0200
commitc7a5df7f9cb4ad06174655185b319d91ea4f84f2 (patch)
tree7ca127025f383987dd1ba64b5c8496326bf172e2
parent84ba539413f84d320a4a59db95d38361b054383e (diff)
downloadlogilab-common-c7a5df7f9cb4ad06174655185b319d91ea4f84f2.tar.gz
testlib: fix for python 3.3
unittest.TestCase no longer has a assertSameElements method. Use assertCountEqual instead of assertSameElements/assertItemsEqual. Closes #144526
-rw-r--r--test/unittest_cache.py12
-rw-r--r--testlib.py13
2 files changed, 14 insertions, 11 deletions
diff --git a/test/unittest_cache.py b/test/unittest_cache.py
index 9b02b39..459f172 100644
--- a/test/unittest_cache.py
+++ b/test/unittest_cache.py
@@ -33,7 +33,7 @@ class CacheTestCase(TestCase):
self.assertEqual(len(self.cache._usage), 1)
self.assertEqual(self.cache._usage[-1], 1,
'1 is not the most recently used key')
- self.assertItemsEqual(self.cache._usage,
+ self.assertCountEqual(self.cache._usage,
self.cache.keys(),
"usage list and data keys are different")
@@ -47,7 +47,7 @@ class CacheTestCase(TestCase):
"lenght of usage list is not 2")
self.assertEqual(self.cache._usage[-1], 2,
'1 is not the most recently used key')
- self.assertItemsEqual(self.cache._usage,
+ self.assertCountEqual(self.cache._usage,
self.cache.keys())# usage list and data keys are different
def test_setitem3(self):
@@ -57,7 +57,7 @@ class CacheTestCase(TestCase):
self.assertEqual(self.cache[1], 'bar', "1 : 'bar' is not in cache.data")
self.assertEqual(len(self.cache._usage), 1, "lenght of usage list is not 1")
self.assertEqual(self.cache._usage[-1], 1, '1 is not the most recently used key')
- self.assertItemsEqual(self.cache._usage,
+ self.assertCountEqual(self.cache._usage,
self.cache.keys())# usage list and data keys are different
def test_recycling1(self):
@@ -74,7 +74,7 @@ class CacheTestCase(TestCase):
'key 1 has not been suppressed from the cache LRU list')
self.assertEqual(len(self.cache._usage), 5, "lenght of usage list is not 5")
self.assertEqual(self.cache._usage[-1], 6, '6 is not the most recently used key')
- self.assertItemsEqual(self.cache._usage,
+ self.assertCountEqual(self.cache._usage,
self.cache.keys())# usage list and data keys are different
def test_recycling2(self):
@@ -86,7 +86,7 @@ class CacheTestCase(TestCase):
a = self.cache[1]
self.assertEqual(a, 'foo')
self.assertEqual(self.cache._usage[-1], 1, '1 is not the most recently used key')
- self.assertItemsEqual(self.cache._usage,
+ self.assertCountEqual(self.cache._usage,
self.cache.keys())# usage list and data keys are different
def test_delitem(self):
@@ -97,7 +97,7 @@ class CacheTestCase(TestCase):
del self.cache['foo']
self.assertTrue('foo' not in self.cache.keys(), "Element 'foo' was not removed cache dictionnary")
self.assertTrue('foo' not in self.cache._usage, "Element 'foo' was not removed usage list")
- self.assertItemsEqual(self.cache._usage,
+ self.assertCountEqual(self.cache._usage,
self.cache.keys())# usage list and data keys are different
diff --git a/testlib.py b/testlib.py
index 0517032..27326b8 100644
--- a/testlib.py
+++ b/testlib.py
@@ -721,7 +721,7 @@ succeeded test into", osp.join(os.getcwd(), FILE_RESTART)
base = ''
self.fail(base + '\n'.join(msgs))
- @deprecated('Please use assertItemsEqual instead.')
+ @deprecated('Please use assertCountEqual instead.')
def assertUnorderedIterableEquals(self, got, expected, msg=None):
"""compares two iterable and shows difference between both
@@ -1183,10 +1183,13 @@ succeeded test into", osp.join(os.getcwd(), FILE_RESTART)
assertRaises = failUnlessRaises
- if not hasattr(unittest.TestCase, 'assertItemsEqual'):
- # python 3.2 has deprecated assertSameElements and is missing
- # assertItemsEqual
- assertItemsEqual = unittest.TestCase.assertSameElements
+ if sys.version_info >= (3,2):
+ assertItemsEqual = unittest.TestCase.assertCountEqual
+ else:
+ assertCountEqual = unittest.TestCase.assertItemsEqual
+
+TestCase.assertItemsEqual = deprecated('assertItemsEqual is deprecated, use assertCountEqual')(
+ TestCase.assertItemsEqual)
import doctest