import copy
from tests import unittest
class BaseResponseTest(unittest.TestCase):
def assert_response_with_subset_metadata(self, actual_response,
expected_response):
actual = copy.copy(actual_response)
expected = copy.copy(expected_response)
actual_metadata = actual.pop('ResponseMetadata', {})
expected_metadata = expected.pop('ResponseMetadata', {})
self.assertEqual(actual, expected)
self.assert_dict_is_proper_subset(actual_metadata, expected_metadata)
def assert_dict_is_proper_subset(self, superset, subset):
self.assertTrue(all((k in superset and superset[k] == v)
for k, v in subset.items()))