Don't assert exact to_dict output
The context.to_dict in turn calls the oslo.context to_dict. By enforcing the exact dictionary output of the to_dict tests will fail any time that oslo.context changes the output of to_dict. This happened with the release of oslo.context 2.6.0. For nova testing purposes we should only assert properties of the dictionary output that were added by nova and rely on oslo.context doing the correct thing regarding deserializing its own options. Related-Bug: #1602081 Change-Id: Ib91a73a017e02b48ec01bbf8c28f946fb5120ba5
This commit is contained in:
parent
eec3a2b9e8
commit
9f99f6c212
|
@ -156,35 +156,35 @@ class ContextTestCase(test.NoDBTestCase):
|
|||
self.assertIs(o_context.get_current(), ctx1)
|
||||
|
||||
def test_convert_from_rc_to_dict(self):
|
||||
request_id = 'req-679033b7-1755-4929-bf85-eb3bfaef7e0b'
|
||||
ctx = context.RequestContext(
|
||||
111, 222, request_id='req-679033b7-1755-4929-bf85-eb3bfaef7e0b',
|
||||
111, 222, request_id=request_id,
|
||||
timestamp='2015-03-02T22:31:56.641629')
|
||||
values2 = ctx.to_dict()
|
||||
expected_values = {'auth_token': None,
|
||||
'domain': None,
|
||||
'instance_lock_checked': False,
|
||||
'is_admin': False,
|
||||
'project_id': 222,
|
||||
'project_domain': None,
|
||||
'project_name': None,
|
||||
'quota_class': None,
|
||||
'read_deleted': 'no',
|
||||
'read_only': False,
|
||||
'remote_address': None,
|
||||
'request_id':
|
||||
'req-679033b7-1755-4929-bf85-eb3bfaef7e0b',
|
||||
'resource_uuid': None,
|
||||
'roles': [],
|
||||
'service_catalog': [],
|
||||
'show_deleted': False,
|
||||
'tenant': 222,
|
||||
'timestamp': '2015-03-02T22:31:56.641629',
|
||||
'user': 111,
|
||||
'user_domain': None,
|
||||
'user_id': 111,
|
||||
'user_identity': '111 222 - - -',
|
||||
'user_name': None}
|
||||
self.assertEqual(expected_values, values2)
|
||||
|
||||
self.assertIsNone(values2['auth_token'])
|
||||
self.assertIsNone(values2['domain'])
|
||||
self.assertEqual(False, values2['instance_lock_checked'])
|
||||
self.assertEqual(False, values2['is_admin'])
|
||||
self.assertEqual(222, values2['project_id'])
|
||||
self.assertIsNone(values2['project_domain'])
|
||||
self.assertIsNone(values2['project_name'])
|
||||
self.assertIsNone(values2['quota_class'])
|
||||
self.assertEqual('no', values2['read_deleted'])
|
||||
self.assertEqual(False, values2['read_only'])
|
||||
self.assertIsNone(values2['remote_address'])
|
||||
self.assertEqual(request_id, values2['request_id'])
|
||||
self.assertIsNone(values2['resource_uuid'])
|
||||
self.assertEqual([], values2['roles'])
|
||||
self.assertEqual([], values2['service_catalog'])
|
||||
self.assertEqual(False, values2['show_deleted'])
|
||||
self.assertEqual(222, values2['tenant'])
|
||||
self.assertEqual('2015-03-02T22:31:56.641629', values2['timestamp'])
|
||||
self.assertEqual(111, values2['user'])
|
||||
self.assertIsNone(values2['user_domain'])
|
||||
self.assertEqual(111, values2['user_id'])
|
||||
self.assertEqual('111 222 - - -', values2['user_identity'])
|
||||
self.assertIsNone(values2['user_name'])
|
||||
|
||||
def test_convert_from_dict_then_to_dict(self):
|
||||
values = {'user': '111',
|
||||
|
@ -211,7 +211,8 @@ class ContextTestCase(test.NoDBTestCase):
|
|||
self.assertEqual('111', ctx.user_id)
|
||||
self.assertEqual('222', ctx.project_id)
|
||||
values2 = ctx.to_dict()
|
||||
self.assertEqual(values, values2)
|
||||
for k, v in values.items():
|
||||
self.assertEqual(v, values2[k])
|
||||
|
||||
@mock.patch.object(context.policy, 'authorize')
|
||||
def test_can(self, mock_authorize):
|
||||
|
|
Loading…
Reference in New Issue