Fix node update receive a assertion error
Fix node update receive a assertion error, and fix unittests for osc. Change-Id: Ief41f3c7e11b06355cea9702ab56d0221f37aedc Closes-Bug: #1547821
This commit is contained in:
parent
e624d03452
commit
fd0baf1f2e
senlinclient
@ -255,7 +255,10 @@ class UpdateCluster(show.ShowOne):
|
||||
def take_action(self, parsed_args):
|
||||
self.log.debug("take_action(%s)", parsed_args)
|
||||
senlin_client = self.app.client_manager.clustering
|
||||
cluster = senlin_client.get_cluster(parsed_args.cluster)
|
||||
cluster = senlin_client.find_cluster(parsed_args.cluster)
|
||||
if cluster is None:
|
||||
raise exc.CommandError(_('Cluster not found: %s') %
|
||||
parsed_args.cluster)
|
||||
attrs = {
|
||||
'name': parsed_args.name,
|
||||
'profile_id': parsed_args.profile,
|
||||
|
@ -264,9 +264,8 @@ class UpdateNode(show.ShowOne):
|
||||
senlin_client = self.app.client_manager.clustering
|
||||
|
||||
# Find the node first, we need its UUID
|
||||
try:
|
||||
node = senlin_client.get_node(parsed_args.node)
|
||||
except sdk_exc.ResourceNotFound:
|
||||
node = senlin_client.find_node(parsed_args.node)
|
||||
if node is None:
|
||||
raise exc.CommandError(_('Node not found: %s') % parsed_args.node)
|
||||
|
||||
attrs = {
|
||||
@ -276,7 +275,7 @@ class UpdateNode(show.ShowOne):
|
||||
'metadata': senlin_utils.format_parameters(parsed_args.metadata),
|
||||
}
|
||||
|
||||
senlin_client.update_node(parsed_args.node, **attrs)
|
||||
senlin_client.update_node(node.id, **attrs)
|
||||
return _show_node(senlin_client, node.id)
|
||||
|
||||
|
||||
|
@ -211,11 +211,12 @@ class UpdatePolicy(show.ShowOne):
|
||||
params = {
|
||||
'name': parsed_args.name,
|
||||
}
|
||||
|
||||
policy = senlin_client.get_policy(parsed_args.policy)
|
||||
if policy is not None:
|
||||
senlin_client.update_policy(policy.id, **params)
|
||||
return _show_policy(senlin_client, policy_id=policy.id)
|
||||
policy = senlin_client.find_policy(parsed_args.policy)
|
||||
if policy is None:
|
||||
raise exc.CommandError(_('Policy not found: %s') %
|
||||
parsed_args.policy)
|
||||
senlin_client.update_policy(policy.id, **params)
|
||||
return _show_policy(senlin_client, policy_id=policy.id)
|
||||
|
||||
|
||||
class DeletePolicy(command.Command):
|
||||
|
@ -303,9 +303,8 @@ class UpdateProfile(show.ShowOne):
|
||||
parsed_args.metadata)
|
||||
|
||||
# Find the profile first, we need its id
|
||||
try:
|
||||
profile = senlin_client.get_profile(parsed_args.profile)
|
||||
except sdk_exc.ResourceNotFound:
|
||||
profile = senlin_client.find_profile(parsed_args.profile)
|
||||
if profile is None:
|
||||
raise exc.CommandError(_('Profile not found: %s') %
|
||||
parsed_args.profile)
|
||||
senlin_client.update_profile(profile.id, **params)
|
||||
|
@ -83,7 +83,7 @@ class TestActionList(TestAction):
|
||||
super(TestActionList, self).setUp()
|
||||
self.cmd = osc_action.ListAction(self.app, None)
|
||||
self.mock_client.actions = mock.Mock(
|
||||
return_value=sdk_action.Action(None, {}))
|
||||
return_value=self.response)
|
||||
|
||||
def test_action_list_defaults(self):
|
||||
arglist = []
|
||||
@ -184,7 +184,7 @@ class TestActionShow(TestAction):
|
||||
super(TestActionShow, self).setUp()
|
||||
self.cmd = osc_action.ShowAction(self.app, None)
|
||||
self.mock_client.get_action = mock.Mock(
|
||||
return_value=sdk_action.Action(None, self.get_response))
|
||||
return_value=sdk_action.Action(attrs=self.get_response))
|
||||
|
||||
def test_action_show(self):
|
||||
arglist = ['my_action']
|
||||
|
@ -71,7 +71,7 @@ class TestClusterList(TestCluster):
|
||||
super(TestClusterList, self).setUp()
|
||||
self.cmd = osc_cluster.ListCluster(self.app, None)
|
||||
self.mock_client.clusters = mock.Mock(
|
||||
return_value=sdk_cluster.Cluster(None, {}))
|
||||
return_value=self.response)
|
||||
|
||||
def test_cluster_list_defaults(self):
|
||||
arglist = []
|
||||
@ -174,7 +174,8 @@ class TestClusterShow(TestCluster):
|
||||
super(TestClusterShow, self).setUp()
|
||||
self.cmd = osc_cluster.ShowCluster(self.app, None)
|
||||
self.mock_client.get_cluster = mock.Mock(
|
||||
return_value=sdk_cluster.Cluster(None, self.get_response))
|
||||
return_value=sdk_cluster.Cluster(
|
||||
attrs=self.get_response['cluster']))
|
||||
|
||||
def test_cluster_show(self):
|
||||
arglist = ['my_cluster']
|
||||
@ -230,9 +231,9 @@ class TestClusterCreate(TestCluster):
|
||||
super(TestClusterCreate, self).setUp()
|
||||
self.cmd = osc_cluster.CreateCluster(self.app, None)
|
||||
self.mock_client.create_cluster = mock.Mock(
|
||||
return_value=sdk_cluster.Cluster(None, self.response))
|
||||
return_value=sdk_cluster.Cluster(attrs=self.response['cluster']))
|
||||
self.mock_client.get_cluster = mock.Mock(
|
||||
return_value=sdk_cluster.Cluster(None, self.response))
|
||||
return_value=sdk_cluster.Cluster(attrs=self.response['cluster']))
|
||||
|
||||
def test_cluster_create_defaults(self):
|
||||
arglist = ['test_cluster', '--profile', 'mystack']
|
||||
@ -300,27 +301,29 @@ class TestClusterUpdate(TestCluster):
|
||||
super(TestClusterUpdate, self).setUp()
|
||||
self.cmd = osc_cluster.UpdateCluster(self.app, None)
|
||||
self.mock_client.update_cluster = mock.Mock(
|
||||
return_value=sdk_cluster.Cluster(None, self.response))
|
||||
return_value=sdk_cluster.Cluster(attrs=self.response['cluster']))
|
||||
self.mock_client.get_cluster = mock.Mock(
|
||||
return_value=sdk_cluster.Cluster(None, self.response))
|
||||
return_value=sdk_cluster.Cluster(attrs=self.response['cluster']))
|
||||
self.mock_client.find_cluster = mock.Mock(
|
||||
return_value=sdk_cluster.Cluster(attrs=self.response['cluster']))
|
||||
|
||||
def test_cluster_update_defaults(self):
|
||||
arglist = ['--name', 'new_cluster', '--metadata', 'nk1=nv1;nk2=nv2',
|
||||
'--profile', 'new_profile', '--timeout', '30', 'c6b8b252']
|
||||
'--profile', 'new_profile', '--timeout', '30', '45edadcb']
|
||||
parsed_args = self.check_parser(self.cmd, arglist, [])
|
||||
self.cmd.take_action(parsed_args)
|
||||
self.mock_client.update_cluster.assert_called_with(None,
|
||||
**self.defaults)
|
||||
self.mock_client.update_cluster.assert_called_with(
|
||||
'45edadcb-c73b-4920-87e1-518b2f29f54b', **self.defaults)
|
||||
|
||||
def test_cluster_update_not_found(self):
|
||||
arglist = ['--name', 'new_cluster', '--metadata', 'nk1=nv1;nk2=nv2',
|
||||
'--profile', 'new_profile', 'c6b8b252']
|
||||
parsed_args = self.check_parser(self.cmd, arglist, [])
|
||||
self.mock_client.get_cluster.side_effect = sdk_exc.ResourceNotFound()
|
||||
error = self.assertRaises(sdk_exc.ResourceNotFound,
|
||||
self.mock_client.find_cluster.return_value = None
|
||||
error = self.assertRaises(exc.CommandError,
|
||||
self.cmd.take_action,
|
||||
parsed_args)
|
||||
self.assertIn('ResourceNotFound: ResourceNotFound', str(error))
|
||||
self.assertIn('Cluster not found: c6b8b252', str(error))
|
||||
|
||||
|
||||
class TestClusterDelete(TestCluster):
|
||||
|
@ -68,8 +68,7 @@ class TestNodeList(TestNode):
|
||||
def setUp(self):
|
||||
super(TestNodeList, self).setUp()
|
||||
self.cmd = osc_node.ListNode(self.app, None)
|
||||
self.mock_client.nodes = mock.Mock(
|
||||
return_value=sdk_node.Node(None, {}))
|
||||
self.mock_client.nodes = mock.Mock(return_value=self.response)
|
||||
|
||||
def test_node_list_defaults(self):
|
||||
arglist = []
|
||||
@ -172,7 +171,7 @@ class TestNodeShow(TestNode):
|
||||
super(TestNodeShow, self).setUp()
|
||||
self.cmd = osc_node.ShowNode(self.app, None)
|
||||
self.mock_client.get_node = mock.Mock(
|
||||
return_value=sdk_node.Node(None, self.get_response))
|
||||
return_value=sdk_node.Node(attrs=self.get_response['node']))
|
||||
|
||||
def test_node_show(self):
|
||||
arglist = ['my_node']
|
||||
@ -231,9 +230,9 @@ class TestNodeCreate(TestNode):
|
||||
super(TestNodeCreate, self).setUp()
|
||||
self.cmd = osc_node.CreateNode(self.app, None)
|
||||
self.mock_client.create_node = mock.Mock(
|
||||
return_value=sdk_node.Node(None, self.response))
|
||||
return_value=sdk_node.Node(attrs=self.response['node']))
|
||||
self.mock_client.get_node = mock.Mock(
|
||||
return_value=sdk_node.Node(None, self.response))
|
||||
return_value=sdk_node.Node(attrs=self.response['node']))
|
||||
|
||||
def test_node_create_defaults(self):
|
||||
arglist = ['my_node', '--profile', 'mystack']
|
||||
@ -306,25 +305,27 @@ class TestNodeUpdate(TestNode):
|
||||
super(TestNodeUpdate, self).setUp()
|
||||
self.cmd = osc_node.UpdateNode(self.app, None)
|
||||
self.mock_client.update_node = mock.Mock(
|
||||
return_value=sdk_node.Node(None, self.response))
|
||||
return_value=sdk_node.Node(attrs=self.response['node']))
|
||||
self.mock_client.get_node = mock.Mock(
|
||||
return_value=sdk_node.Node(None, self.response))
|
||||
return_value=sdk_node.Node(attrs=self.response['node']))
|
||||
self.mock_client.find_node = mock.Mock(
|
||||
return_value=sdk_node.Node(attrs=self.response['node']))
|
||||
|
||||
def test_node_update_defaults(self):
|
||||
arglist = ['--name', 'new_node', '--metadata', 'nk1=nv1;nk2=nv2',
|
||||
'--profile', 'new_profile', '--role', 'new_role',
|
||||
'c6b8b252']
|
||||
'0df0931b']
|
||||
parsed_args = self.check_parser(self.cmd, arglist, [])
|
||||
self.cmd.take_action(parsed_args)
|
||||
self.mock_client.update_node.assert_called_with('c6b8b252',
|
||||
**self.defaults)
|
||||
self.mock_client.update_node.assert_called_with(
|
||||
'0df0931b-e251-4f2e-8719-4ebfda3627ba', **self.defaults)
|
||||
|
||||
def test_node_update_not_found(self):
|
||||
arglist = ['--name', 'new_node', '--metadata', 'nk1=nv1;nk2=nv2',
|
||||
'--profile', 'new_profile', '--role', 'new_role',
|
||||
'c6b8b252']
|
||||
parsed_args = self.check_parser(self.cmd, arglist, [])
|
||||
self.mock_client.get_node.side_effect = sdk_exc.ResourceNotFound()
|
||||
self.mock_client.find_node.return_value = None
|
||||
error = self.assertRaises(exc.CommandError, self.cmd.take_action,
|
||||
parsed_args)
|
||||
self.assertIn('Node not found: c6b8b252', str(error))
|
||||
|
@ -65,7 +65,7 @@ class TestPolicyList(TestPolicy):
|
||||
super(TestPolicyList, self).setUp()
|
||||
self.cmd = osc_policy.ListPolicy(self.app, None)
|
||||
self.mock_client.policies = mock.Mock(
|
||||
return_value=sdk_policy.Policy(None, {}))
|
||||
return_value=self.response)
|
||||
|
||||
def test_policy_list_defaults(self):
|
||||
arglist = []
|
||||
@ -170,7 +170,7 @@ class TestPolicyShow(TestPolicy):
|
||||
super(TestPolicyShow, self).setUp()
|
||||
self.cmd = osc_policy.ShowPolicy(self.app, None)
|
||||
self.mock_client.get_policy = mock.Mock(
|
||||
return_value=sdk_policy.Policy(None, self.get_response))
|
||||
return_value=sdk_policy.Policy(attrs=self.get_response['policy']))
|
||||
|
||||
def test_policy_show(self):
|
||||
arglist = ['sp001']
|
||||
@ -230,9 +230,9 @@ class TestPolicyCreate(TestPolicy):
|
||||
super(TestPolicyCreate, self).setUp()
|
||||
self.cmd = osc_policy.CreatePolicy(self.app, None)
|
||||
self.mock_client.create_policy = mock.Mock(
|
||||
return_value=sdk_policy.Policy(None, self.response))
|
||||
return_value=sdk_policy.Policy(attrs=self.response['policy']))
|
||||
self.mock_client.get_policy = mock.Mock(
|
||||
return_value=sdk_policy.Policy(None, self.response))
|
||||
return_value=sdk_policy.Policy(attrs=self.response['policy']))
|
||||
|
||||
def test_policy_create_defaults(self):
|
||||
arglist = ['my_policy', '--spec-file', self.spec_path]
|
||||
@ -274,25 +274,27 @@ class TestPolicyUpdate(TestPolicy):
|
||||
super(TestPolicyUpdate, self).setUp()
|
||||
self.cmd = osc_policy.UpdatePolicy(self.app, None)
|
||||
self.mock_client.update_policy = mock.Mock(
|
||||
return_value=sdk_policy.Policy(None, self.response))
|
||||
return_value=sdk_policy.Policy(attrs=self.response['policy']))
|
||||
self.mock_client.get_policy = mock.Mock(
|
||||
return_value=sdk_policy.Policy(None, self.response))
|
||||
return_value=sdk_policy.Policy(attrs=self.response['policy']))
|
||||
self.mock_client.find_policy = mock.Mock(
|
||||
return_value=sdk_policy.Policy(attrs=self.response['policy']))
|
||||
|
||||
def test_policy_update_defaults(self):
|
||||
arglist = ['--name', 'new_policy', 'c6b8b252']
|
||||
arglist = ['--name', 'new_policy', '9f779ddf']
|
||||
parsed_args = self.check_parser(self.cmd, arglist, [])
|
||||
self.cmd.take_action(parsed_args)
|
||||
self.mock_client.update_policy.assert_called_with(None,
|
||||
**self.defaults)
|
||||
self.mock_client.update_policy.assert_called_with(
|
||||
'9f779ddf-744e-48bd-954c-acef7e11116c', **self.defaults)
|
||||
|
||||
def test_policy_update_not_found(self):
|
||||
arglist = ['--name', 'new_policy', 'c6b8b252']
|
||||
parsed_args = self.check_parser(self.cmd, arglist, [])
|
||||
self.mock_client.get_policy.side_effect = sdk_exc.ResourceNotFound()
|
||||
error = self.assertRaises(sdk_exc.ResourceNotFound,
|
||||
self.mock_client.find_policy.return_value = None
|
||||
error = self.assertRaises(exc.CommandError,
|
||||
self.cmd.take_action,
|
||||
parsed_args)
|
||||
self.assertIn('ResourceNotFound: ResourceNotFound', str(error))
|
||||
self.assertIn('Policy not found: c6b8b252', str(error))
|
||||
|
||||
|
||||
class TestPolicyDelete(TestPolicy):
|
||||
|
@ -92,7 +92,8 @@ class TestProfileShow(TestProfile):
|
||||
super(TestProfileShow, self).setUp()
|
||||
self.cmd = osc_profile.ShowProfile(self.app, None)
|
||||
self.mock_client.get_profile = mock.Mock(
|
||||
return_value=sdk_profile.Profile(None, self.get_response))
|
||||
return_value=sdk_profile.Profile(
|
||||
attrs=self.get_response['profile']))
|
||||
utils.get_dict_properties = mock.Mock(return_value='')
|
||||
|
||||
def test_profile_show(self):
|
||||
@ -145,7 +146,7 @@ class TestProfileList(TestProfile):
|
||||
super(TestProfileList, self).setUp()
|
||||
self.cmd = osc_profile.ListProfile(self.app, None)
|
||||
self.mock_client.profiles = mock.Mock(
|
||||
return_value=sdk_profile.Profile(None, {}))
|
||||
return_value=self.data)
|
||||
|
||||
def test_profile_list_defaults(self):
|
||||
arglist = []
|
||||
@ -320,9 +321,9 @@ class TestProfileCreate(TestProfile):
|
||||
super(TestProfileCreate, self).setUp()
|
||||
self.cmd = osc_profile.CreateProfile(self.app, None)
|
||||
self.mock_client.create_profile = mock.Mock(
|
||||
return_value=sdk_profile.Profile(None, self.response))
|
||||
return_value=sdk_profile.Profile(attrs=self.response['profile']))
|
||||
self.mock_client.get_profile = mock.Mock(
|
||||
return_value=sdk_profile.Profile(None, self.response))
|
||||
return_value=sdk_profile.Profile(attrs=self.response['profile']))
|
||||
utils.get_dict_properties = mock.Mock(return_value='')
|
||||
|
||||
def test_profile_create_defaults(self):
|
||||
@ -375,24 +376,26 @@ class TestProfileUpdate(TestProfile):
|
||||
super(TestProfileUpdate, self).setUp()
|
||||
self.cmd = osc_profile.UpdateProfile(self.app, None)
|
||||
self.mock_client.update_profile = mock.Mock(
|
||||
return_value=sdk_profile.Profile(None, self.response))
|
||||
return_value=sdk_profile.Profile(attrs=self.response['profile']))
|
||||
self.mock_client.get_profile = mock.Mock(
|
||||
return_value=sdk_profile.Profile(None, self.response))
|
||||
return_value=sdk_profile.Profile(attrs=self.response['profile']))
|
||||
self.mock_client.find_profile = mock.Mock(
|
||||
return_value=sdk_profile.Profile(attrs=self.response['profile']))
|
||||
utils.get_dict_properties = mock.Mock(return_value='')
|
||||
|
||||
def test_profile_update_defaults(self):
|
||||
arglist = ['--name', 'new_profile', '--metadata', 'nk1=nv1;nk2=nv2',
|
||||
'c6b8b252']
|
||||
'e3057c77']
|
||||
parsed_args = self.check_parser(self.cmd, arglist, [])
|
||||
self.cmd.take_action(parsed_args)
|
||||
self.mock_client.update_profile.assert_called_with(None,
|
||||
**self.defaults)
|
||||
self.mock_client.update_profile.assert_called_with(
|
||||
'e3057c77-a178-4265-bafd-16b2fae50eea', **self.defaults)
|
||||
|
||||
def test_profile_update_not_found(self):
|
||||
arglist = ['--name', 'new_profile', '--metadata', 'nk1=nv1;nk2=nv2',
|
||||
'c6b8b252']
|
||||
parsed_args = self.check_parser(self.cmd, arglist, [])
|
||||
self.mock_client.get_profile.side_effect = sdk_exc.ResourceNotFound()
|
||||
self.mock_client.find_profile.return_value = None
|
||||
error = self.assertRaises(
|
||||
exc.CommandError,
|
||||
self.cmd.take_action,
|
||||
|
@ -68,7 +68,7 @@ class TestReceiverList(TestReceiver):
|
||||
super(TestReceiverList, self).setUp()
|
||||
self.cmd = osc_receiver.ListReceiver(self.app, None)
|
||||
self.mock_client.receivers = mock.Mock(
|
||||
return_value=sdk_receiver.Receiver(None, {}))
|
||||
return_value=self.response)
|
||||
|
||||
def test_receiver_list_defaults(self):
|
||||
arglist = []
|
||||
@ -173,7 +173,8 @@ class TestReceiverShow(TestReceiver):
|
||||
super(TestReceiverShow, self).setUp()
|
||||
self.cmd = osc_receiver.ShowReceiver(self.app, None)
|
||||
self.mock_client.get_receiver = mock.Mock(
|
||||
return_value=sdk_receiver.Receiver(None, self.get_response))
|
||||
return_value=sdk_receiver.Receiver(
|
||||
attrs=self.get_response['receiver']))
|
||||
|
||||
def test_receiver_show(self):
|
||||
arglist = ['my_receiver']
|
||||
@ -230,9 +231,11 @@ class TestReceiverCreate(TestReceiver):
|
||||
super(TestReceiverCreate, self).setUp()
|
||||
self.cmd = osc_receiver.CreateReceiver(self.app, None)
|
||||
self.mock_client.create_receiver = mock.Mock(
|
||||
return_value=sdk_receiver.Receiver(None, self.response))
|
||||
return_value=sdk_receiver.Receiver(
|
||||
attrs=self.response['receiver']))
|
||||
self.mock_client.get_receiver = mock.Mock(
|
||||
return_value=sdk_receiver.Receiver(None, self.response))
|
||||
return_value=sdk_receiver.Receiver(
|
||||
attrs=self.response['receiver']))
|
||||
|
||||
def test_receiver_create(self):
|
||||
arglist = ['my_receiver', '--action', 'CLUSTER_SCALE_OUT',
|
||||
|
Loading…
x
Reference in New Issue
Block a user