summaryrefslogtreecommitdiff
path: root/nova/tests/unit/test_test.py
diff options
context:
space:
mode:
authorDavanum Srinivas <davanum@gmail.com>2015-03-13 10:59:51 -0400
committerTimofey Durakov <tdurakov@mirantis.com>2015-03-17 20:23:15 +0300
commit4e0d61feab9c1848f431cbd5f9806b3eee6b6126 (patch)
treeaf7b444cb905180a664f2b75ac9aacc269fff92c /nova/tests/unit/test_test.py
parentc4726e1960d8aec0c837142147d5b960d1114e72 (diff)
downloadnova-4e0d61feab9c1848f431cbd5f9806b3eee6b6126.tar.gz
Added assertJsonEqual method to TestCase class
new assertion method allows to compare 2 objects, ignoring order or nested collections element, 'expected' and 'observed' also could be json-strings Co-Authored-By: Timofey Durakov <tdurakov@mirantis.com> Change-Id: I9a16805b0c580caea200509564b7710116c4ac4e
Diffstat (limited to 'nova/tests/unit/test_test.py')
-rw-r--r--nova/tests/unit/test_test.py35
1 files changed, 35 insertions, 0 deletions
diff --git a/nova/tests/unit/test_test.py b/nova/tests/unit/test_test.py
index 1e7b8c8048..d7f3ff9968 100644
--- a/nova/tests/unit/test_test.py
+++ b/nova/tests/unit/test_test.py
@@ -53,6 +53,41 @@ class IsolationTestCase(test.TestCase):
server.start()
+class JsonTestCase(test.TestCase):
+ def test_json_equal(self):
+ expected = {
+ "employees": [
+ {"firstName": "Anna", "lastName": "Smith"},
+ {"firstName": "John", "lastName": "Doe"},
+ {"firstName": "Peter", "lastName": "Jones"}
+ ],
+ "locations": set(['Boston', 'Mumbai', 'Beijing', 'Perth'])
+ }
+ observed = """{
+ "employees": [
+ {
+ "lastName": "Doe",
+ "firstName": "John"
+ },
+ {
+ "lastName": "Smith",
+ "firstName": "Anna"
+ },
+ {
+ "lastName": "Jones",
+ "firstName": "Peter"
+ }
+ ],
+ "locations": [
+ "Perth",
+ "Boston",
+ "Mumbai",
+ "Beijing"
+ ]
+}"""
+ self.assertJsonEqual(expected, observed)
+
+
class BadLogTestCase(test.TestCase):
"""Make sure a mis-formatted debug log will get caught."""