Add assertJSONEqual method to TestCase

This commit is contained in:
Ian Clelland 2012-09-27 16:52:24 -07:00 committed by Luke Plant
parent dc704516c2
commit 089d9ca1df
1 changed files with 12 additions and 0 deletions

View File

@ -407,6 +407,18 @@ class SimpleTestCase(ut2.TestCase):
self.assertTrue(real_count != 0, self.assertTrue(real_count != 0,
msg_prefix + "Couldn't find '%s' in response" % needle) msg_prefix + "Couldn't find '%s' in response" % needle)
def assertJSONEqual(self, raw, expected_data, msg=None):
try:
data = json.loads(raw)
except ValueError:
self.fail("First argument is not valid JSON: %r" % raw)
if isinstance(expected_data, six.string_types):
try:
expected_data = json.loads(expected_data)
except ValueError:
self.fail("Second argument is not valid JSON: %r" % expected_data)
self.assertEqual(data, expected_data, msg=msg)
def assertXMLEqual(self, xml1, xml2, msg=None): def assertXMLEqual(self, xml1, xml2, msg=None):
""" """
Asserts that two XML snippets are semantically the same. Asserts that two XML snippets are semantically the same.