diff options
author | Jenkins <jenkins@review.openstack.org> | 2016-08-11 03:55:38 +0000 |
---|---|---|
committer | Gerrit Code Review <review@openstack.org> | 2016-08-11 03:55:38 +0000 |
commit | 3761183d92468c64dab25c0551ffc6acc5c9b42f (patch) | |
tree | be9d81bbe620f5b5fb346c99819408139ced2344 | |
parent | c0aa46c600a809f84f5f74d002adca4a22a5d4c5 (diff) | |
parent | ef34175095d92a117fda149ad8a2e216e3a2b78c (diff) | |
download | python-keystoneclient-3761183d92468c64dab25c0551ffc6acc5c9b42f.tar.gz |
Merge "Add __ne__ built-in function"
-rw-r--r-- | keystoneclient/base.py | 4 | ||||
-rw-r--r-- | keystoneclient/tests/unit/test_base.py | 18 |
2 files changed, 19 insertions, 3 deletions
diff --git a/keystoneclient/base.py b/keystoneclient/base.py index d028d97..3f13a6c 100644 --- a/keystoneclient/base.py +++ b/keystoneclient/base.py @@ -523,6 +523,10 @@ class Resource(object): return False return self._info == other._info + def __ne__(self, other): + """Define inequality for resources.""" + return not self == other + def is_loaded(self): return self._loaded diff --git a/keystoneclient/tests/unit/test_base.py b/keystoneclient/tests/unit/test_base.py index 7a43619..9814d3d 100644 --- a/keystoneclient/tests/unit/test_base.py +++ b/keystoneclient/tests/unit/test_base.py @@ -58,25 +58,37 @@ class BaseTest(utils.TestCase): r1 = base.Resource(None, {'id': 1, 'name': 'hi'}) r2 = base.Resource(None, {'id': 1, 'name': 'hello'}) self.assertNotEqual(r1, r2) + self.assertTrue(r1 != r2) # Two resources with same ID: equal if their info is equal + # The truth of r1==r2 does not imply that r1!=r2 is false in PY2. + # Test that inequality operator is defined and that comparing equal + # items returns False r1 = base.Resource(None, {'id': 1, 'name': 'hello'}) r2 = base.Resource(None, {'id': 1, 'name': 'hello'}) - self.assertEqual(r1, r2) + self.assertTrue(r1 == r2) + self.assertFalse(r1 != r2) - # Two resoruces of different types: never equal + # Two resources of different types: never equal r1 = base.Resource(None, {'id': 1}) r2 = roles.Role(None, {'id': 1}) self.assertNotEqual(r1, r2) + self.assertTrue(r1 != r2) # Two resources with no ID: equal if their info is equal + # The truth of r1==r2 does not imply that r1!=r2 is false in PY2. + # Test that inequality operator is defined and that comparing equal + # items returns False. r1 = base.Resource(None, {'name': 'joe', 'age': 12}) r2 = base.Resource(None, {'name': 'joe', 'age': 12}) - self.assertEqual(r1, r2) + self.assertTrue(r1 == r2) + self.assertFalse(r1 != r2) r1 = base.Resource(None, {'id': 1}) self.assertNotEqual(r1, object()) + self.assertTrue(r1 != object()) self.assertNotEqual(r1, {'id': 1}) + self.assertTrue(r1 != {'id': 1}) def test_human_id(self): r = base.Resource(None, {"name": "1 of !"}) |