Avoid import internal classes from SDK (3)
This is part of a series of changes related to the usage of SDK. In some test cases, we are importing the resource classes from SDK directly and even instantiate them. This is bad for unit tests. We should instead mock those resources for unit tests. When functional tests are added, the real resource list/dump will be tested instead. Change-Id: Ie79c742cdc0173ad66975adecf935fb9fec8d209
This commit is contained in:
@@ -13,7 +13,6 @@
|
||||
import copy
|
||||
|
||||
import mock
|
||||
from openstack.cluster.v1 import action as sdk_action
|
||||
from openstack import exceptions as sdk_exc
|
||||
from osc_lib import exceptions as exc
|
||||
|
||||
@@ -22,57 +21,16 @@ from senlinclient.v1 import action as osc_action
|
||||
|
||||
|
||||
class TestAction(fakes.TestClusteringv1):
|
||||
|
||||
def setUp(self):
|
||||
super(TestAction, self).setUp()
|
||||
self.mock_client = self.app.client_manager.clustering
|
||||
|
||||
|
||||
class TestActionList(TestAction):
|
||||
|
||||
columns = ['id', 'name', 'action', 'status', 'target_id', 'depends_on',
|
||||
'depended_by', 'created_at']
|
||||
response = {"actions": [
|
||||
{
|
||||
"action": "NODE_CREATE",
|
||||
"cause": "RPC Request",
|
||||
"created_at": "2015-12-04T04:54:41",
|
||||
"depended_by": [],
|
||||
"depends_on": [],
|
||||
"end_time": 1425550000.0,
|
||||
"id": "2366d440-c73e-4961-9254-6d1c3af7c167",
|
||||
"inputs": {},
|
||||
"interval": -1,
|
||||
"name": "node_create_0df0931b",
|
||||
"outputs": {},
|
||||
"owner": 'null',
|
||||
"start_time": 1425550000.0,
|
||||
"status": "SUCCEEDED",
|
||||
"status_reason": "Action completed successfully.",
|
||||
"target": "0df0931b-e251-4f2e-8719-4ebfda3627ba",
|
||||
"timeout": 3600,
|
||||
"updated_at": 'null'
|
||||
},
|
||||
{
|
||||
"action": "NODE_DELETE",
|
||||
"cause": "RPC Request",
|
||||
"created_at": "2015-11-04T05:21:41",
|
||||
"depended_by": [],
|
||||
"depends_on": [],
|
||||
"end_time": 1425550000.0,
|
||||
"id": "edce3528-864f-41fb-8759-f4707925cc09",
|
||||
"inputs": {},
|
||||
"interval": -1,
|
||||
"name": "node_delete_f0de9b9c",
|
||||
"outputs": {},
|
||||
"owner": 'null',
|
||||
"start_time": 1425550000.0,
|
||||
"status": "SUCCEEDED",
|
||||
"status_reason": "Action completed successfully.",
|
||||
"target": "f0de9b9c-6d48-4a46-af21-2ca8607777fe",
|
||||
"timeout": 3600,
|
||||
"updated_at": 'null'
|
||||
}
|
||||
]}
|
||||
|
||||
defaults = {
|
||||
'global_project': False,
|
||||
'marker': None,
|
||||
@@ -83,8 +41,28 @@ class TestActionList(TestAction):
|
||||
def setUp(self):
|
||||
super(TestActionList, self).setUp()
|
||||
self.cmd = osc_action.ListAction(self.app, None)
|
||||
self.mock_client.actions = mock.Mock(
|
||||
return_value=self.response)
|
||||
fake_action = mock.Mock(
|
||||
action="NODE_CREATE",
|
||||
cause="RPC Request",
|
||||
created_at="2015-12-04T04:54:41",
|
||||
depended_by=[],
|
||||
depends_on=[],
|
||||
end_time=1425550000.0,
|
||||
id="2366d440-c73e-4961-9254-6d1c3af7c167",
|
||||
inputs={},
|
||||
interval=-1,
|
||||
name="node_create_0df0931b",
|
||||
outputs={},
|
||||
owner=None,
|
||||
start_time=1425550000.0,
|
||||
status="SUCCEEDED",
|
||||
status_reason="Action completed successfully.",
|
||||
target_id="0df0931b-e251-4f2e-8719-4ebfda3627ba",
|
||||
timeout=3600,
|
||||
updated_at=None
|
||||
)
|
||||
fake_action.to_dict = mock.Mock(return_value={})
|
||||
self.mock_client.actions = mock.Mock(return_value=[fake_action])
|
||||
|
||||
def test_action_list_defaults(self):
|
||||
arglist = []
|
||||
@@ -119,8 +97,6 @@ class TestActionList(TestAction):
|
||||
self.assertEqual(self.columns, columns)
|
||||
|
||||
def test_action_list_sort_invalid_key(self):
|
||||
self.mock_client.actions = mock.Mock(
|
||||
return_value=self.response)
|
||||
kwargs = copy.deepcopy(self.defaults)
|
||||
kwargs['sort'] = 'bad_key'
|
||||
arglist = ['--sort', 'bad_key']
|
||||
@@ -130,8 +106,6 @@ class TestActionList(TestAction):
|
||||
self.cmd.take_action, parsed_args)
|
||||
|
||||
def test_action_list_sort_invalid_direction(self):
|
||||
self.mock_client.actions = mock.Mock(
|
||||
return_value=self.response)
|
||||
kwargs = copy.deepcopy(self.defaults)
|
||||
kwargs['sort'] = 'name:bad_direction'
|
||||
arglist = ['--sort', 'name:bad_direction']
|
||||
@@ -160,32 +134,32 @@ class TestActionList(TestAction):
|
||||
|
||||
|
||||
class TestActionShow(TestAction):
|
||||
response = {
|
||||
"action": "CLUSTER_DELETE",
|
||||
"cause": "RPC Request",
|
||||
"context": {},
|
||||
"created_at": "2015-06-27T05:09:43",
|
||||
"depended_by": [],
|
||||
"depends_on": [],
|
||||
"end_time": 1423570000.0,
|
||||
"id": "ffbb9175-d510-4bc1-b676-c6aba2a4ca81",
|
||||
"inputs": {},
|
||||
"interval": -1,
|
||||
"name": "cluster_delete_fcc9b635",
|
||||
"outputs": {},
|
||||
"owner": 'null',
|
||||
"start_time": 1423570000.0,
|
||||
"status": "FAILED",
|
||||
"status_reason": "Cluster action FAILED",
|
||||
"target": "fcc9b635-52e3-490b-99f2-87b1640e4e89",
|
||||
"timeout": 3600,
|
||||
"updated_at": 'null'}
|
||||
|
||||
def setUp(self):
|
||||
super(TestActionShow, self).setUp()
|
||||
self.cmd = osc_action.ShowAction(self.app, None)
|
||||
self.mock_client.get_action = mock.Mock(
|
||||
return_value=sdk_action.Action(**self.response))
|
||||
fake_action = mock.Mock(
|
||||
action="NODE_CREATE",
|
||||
cause="RPC Request",
|
||||
created_at="2015-12-04T04:54:41",
|
||||
depended_by=[],
|
||||
depends_on=[],
|
||||
end_time=1425550000.0,
|
||||
id="2366d440-c73e-4961-9254-6d1c3af7c167",
|
||||
inputs={},
|
||||
interval=-1,
|
||||
name="node_create_0df0931b",
|
||||
outputs={},
|
||||
owner=None,
|
||||
start_time=1425550000.0,
|
||||
status="SUCCEEDED",
|
||||
status_reason="Action completed successfully.",
|
||||
target_id="0df0931b-e251-4f2e-8719-4ebfda3627ba",
|
||||
timeout=3600,
|
||||
updated_at=None
|
||||
)
|
||||
fake_action.to_dict = mock.Mock(return_value={})
|
||||
self.mock_client.get_action = mock.Mock(return_value=fake_action)
|
||||
|
||||
def test_action_show(self):
|
||||
arglist = ['my_action']
|
||||
|
@@ -11,7 +11,6 @@
|
||||
# under the License.
|
||||
|
||||
import mock
|
||||
from openstack.cluster.v1 import build_info as sbi
|
||||
|
||||
from senlinclient.tests.unit.v1 import fakes
|
||||
from senlinclient.v1 import build_info as osc_build_info
|
||||
@@ -19,20 +18,17 @@ from senlinclient.v1 import build_info as osc_build_info
|
||||
|
||||
class TestBuildInfo(fakes.TestClusteringv1):
|
||||
response = {"build_info": {
|
||||
"api": {
|
||||
"revision": "1.0"
|
||||
},
|
||||
"engine": {
|
||||
"revision": "1.0"
|
||||
}
|
||||
}}
|
||||
|
||||
def setUp(self):
|
||||
super(TestBuildInfo, self).setUp()
|
||||
self.cmd = osc_build_info.BuildInfo(self.app, None)
|
||||
self.mock_client = self.app.client_manager.clustering
|
||||
self.mock_client.get_build_info = mock.Mock(
|
||||
return_value=sbi.BuildInfo(**self.response['build_info']))
|
||||
fake_bi = mock.Mock(
|
||||
api={"revision": "1.0"},
|
||||
engine={"revision": "1.0"}
|
||||
)
|
||||
self.mock_client.get_build_info = mock.Mock(return_value=fake_bi)
|
||||
|
||||
def test_build_info(self):
|
||||
arglist = []
|
||||
|
@@ -11,7 +11,6 @@
|
||||
# under the License.
|
||||
|
||||
import mock
|
||||
from openstack.cluster.v1 import cluster_policy as scp
|
||||
|
||||
from senlinclient.tests.unit.v1 import fakes
|
||||
from senlinclient.v1 import cluster_policy as osc_cluster_policy
|
||||
@@ -24,72 +23,57 @@ class TestClusterPolicy(fakes.TestClusteringv1):
|
||||
|
||||
|
||||
class TestClusterPolicyList(TestClusterPolicy):
|
||||
columns = ['policy_id', 'policy_name', 'policy_type', 'is_enabled']
|
||||
response = {"cluster_policies": [
|
||||
{
|
||||
"cluster_id": "7d85f602-a948-4a30-afd4-e84f47471c15",
|
||||
"cluster_name": "my_cluster",
|
||||
"enabled": True,
|
||||
"id": "06be3a1f-b238-4a96-a737-ceec5714087e",
|
||||
"policy_id": "714fe676-a08f-4196-b7af-61d52eeded15",
|
||||
"policy_name": "my_policy",
|
||||
"policy_type": "senlin.policy.deletion-1.0"
|
||||
},
|
||||
{
|
||||
"cluster_id": "7d85f602-a948-4a30-afd4-e84f47471c15",
|
||||
"cluster_name": "my_cluster",
|
||||
"enabled": True,
|
||||
"id": "abddc45e-ac31-4f90-93cc-db55a7d8dd6d",
|
||||
"policy_id": "e026e09f-a3e9-4dad-a1b9-d7ba316026a1",
|
||||
"policy_name": "my_policy",
|
||||
"policy_type": "senlin.policy.scaling-1.0"
|
||||
}
|
||||
]}
|
||||
|
||||
args = {
|
||||
'sort': 'name:asc',
|
||||
}
|
||||
|
||||
def setUp(self):
|
||||
super(TestClusterPolicyList, self).setUp()
|
||||
self.cmd = osc_cluster_policy.ClusterPolicyList(self.app, None)
|
||||
cluster = mock.Mock()
|
||||
cluster.id = 'C1'
|
||||
self.mock_client.get_cluster = mock.Mock(
|
||||
return_value=cluster
|
||||
fake_cluster = mock.Mock(id='C1')
|
||||
self.mock_client.get_cluster = mock.Mock(return_value=fake_cluster)
|
||||
fake_binding = mock.Mock(
|
||||
cluster_id="7d85f602-a948-4a30-afd4-e84f47471c15",
|
||||
cluster_name="my_cluster",
|
||||
is_enabled=True,
|
||||
id="06be3a1f-b238-4a96-a737-ceec5714087e",
|
||||
policy_id="714fe676-a08f-4196-b7af-61d52eeded15",
|
||||
policy_name="my_policy",
|
||||
policy_type="senlin.policy.deletion-1.0"
|
||||
)
|
||||
fake_binding.to_dict = mock.Mock(return_value={})
|
||||
self.mock_client.cluster_policies = mock.Mock(
|
||||
return_value=self.response)
|
||||
return_value=[fake_binding])
|
||||
|
||||
def test_cluster_policy_list(self):
|
||||
arglist = ['--sort', 'name:asc', '--filter', 'name=my_policy',
|
||||
'my_cluster', '--full-id']
|
||||
parsed_args = self.check_parser(self.cmd, arglist, [])
|
||||
expected_columns = ['policy_id', 'policy_name', 'policy_type',
|
||||
'is_enabled']
|
||||
|
||||
columns, data = self.cmd.take_action(parsed_args)
|
||||
|
||||
self.mock_client.get_cluster.assert_called_with('my_cluster')
|
||||
self.mock_client.cluster_policies.assert_called_with(
|
||||
'C1',
|
||||
name='my_policy',
|
||||
**self.args)
|
||||
self.assertEqual(self.columns, columns)
|
||||
'C1', name="my_policy", sort="name:asc")
|
||||
self.assertEqual(expected_columns, columns)
|
||||
|
||||
|
||||
class TestClusterPolicyShow(TestClusterPolicy):
|
||||
response = {"cluster_policy": {
|
||||
"cluster_id": "7d85f602-a948-4a30-afd4-e84f47471c15",
|
||||
"cluster_name": "my_cluster",
|
||||
"enabled": True,
|
||||
"id": "06be3a1f-b238-4a96-a737-ceec5714087e",
|
||||
"policy_id": "714fe676-a08f-4196-b7af-61d52eeded15",
|
||||
"policy_name": "my_policy",
|
||||
"policy_type": "senlin.policy.deletion-1.0"
|
||||
}}
|
||||
|
||||
def setUp(self):
|
||||
super(TestClusterPolicyShow, self).setUp()
|
||||
self.cmd = osc_cluster_policy.ClusterPolicyShow(self.app, None)
|
||||
fake_binding = mock.Mock(
|
||||
cluster_id="7d85f602-a948-4a30-afd4-e84f47471c15",
|
||||
cluster_name="my_cluster",
|
||||
is_enabled=True,
|
||||
id="06be3a1f-b238-4a96-a737-ceec5714087e",
|
||||
policy_id="714fe676-a08f-4196-b7af-61d52eeded15",
|
||||
policy_name="my_policy",
|
||||
policy_type="senlin.policy.deletion-1.0"
|
||||
)
|
||||
fake_binding.to_dict = mock.Mock(return_value={})
|
||||
self.mock_client.get_cluster_policy = mock.Mock(
|
||||
return_value=scp.ClusterPolicy(**self.response['cluster_policy']))
|
||||
return_value=fake_binding)
|
||||
|
||||
def test_cluster_policy_show(self):
|
||||
arglist = ['--policy', 'my_policy', 'my_cluster']
|
||||
@@ -100,19 +84,17 @@ class TestClusterPolicyShow(TestClusterPolicy):
|
||||
|
||||
|
||||
class TestClusterPolicyUpdate(TestClusterPolicy):
|
||||
response = {"action": "8bb476c3-0f4c-44ee-9f64-c7b0260814de"}
|
||||
|
||||
def setUp(self):
|
||||
super(TestClusterPolicyUpdate, self).setUp()
|
||||
self.cmd = osc_cluster_policy.ClusterPolicyUpdate(self.app, None)
|
||||
fake_resp = {"action": "8bb476c3-0f4c-44ee-9f64-c7b0260814de"}
|
||||
self.mock_client.cluster_update_policy = mock.Mock(
|
||||
return_value=self.response)
|
||||
return_value=fake_resp)
|
||||
|
||||
def test_cluster_policy_update(self):
|
||||
arglist = ['--policy', 'my_policy', '--enabled', 'true', 'my_cluster']
|
||||
parsed_args = self.check_parser(self.cmd, arglist, [])
|
||||
self.cmd.take_action(parsed_args)
|
||||
self.mock_client.cluster_update_policy.assert_called_with(
|
||||
'my_cluster',
|
||||
'my_policy',
|
||||
enabled=True)
|
||||
'my_cluster', 'my_policy', enabled=True)
|
||||
|
@@ -13,7 +13,6 @@
|
||||
import copy
|
||||
|
||||
import mock
|
||||
from openstack.cluster.v1 import event as sdk_event
|
||||
from openstack import exceptions as sdk_exc
|
||||
from osc_lib import exceptions as exc
|
||||
|
||||
@@ -31,24 +30,6 @@ class TestEventList(TestEvent):
|
||||
|
||||
columns = ['id', 'generated_at', 'obj_type', 'obj_id', 'obj_name',
|
||||
'action', 'status', 'level', 'cluster_id']
|
||||
|
||||
response = {"events": [
|
||||
{
|
||||
"action": "create",
|
||||
"cluster_id": 'null',
|
||||
"id": "2d255b9c-8f36-41a2-a137-c0175ccc29c3",
|
||||
"level": "20",
|
||||
"obj_id": "0df0931b-e251-4f2e-8719-4ebfda3627ba",
|
||||
"obj_name": "node009",
|
||||
"obj_type": "NODE",
|
||||
"project": "6e18cc2bdbeb48a5b3cad2dc499f6804",
|
||||
"status": "CREATING",
|
||||
"cluster_id": "f23ff00c-ec4f-412d-bd42-7f6e209819cb",
|
||||
"generated_at": "2015-03-05T08:53:15",
|
||||
"user": "a21ded6060534d99840658a777c2af5a"
|
||||
}
|
||||
]}
|
||||
|
||||
defaults = {
|
||||
'global_project': False,
|
||||
'marker': None,
|
||||
@@ -59,8 +40,21 @@ class TestEventList(TestEvent):
|
||||
def setUp(self):
|
||||
super(TestEventList, self).setUp()
|
||||
self.cmd = osc_event.ListEvent(self.app, None)
|
||||
self.mock_client.events = mock.Mock(
|
||||
return_value=[sdk_event.Event(**self.response['events'][0])])
|
||||
fake_event = mock.Mock(
|
||||
action="CREATE",
|
||||
cluster_id=None,
|
||||
id="2d255b9c-8f36-41a2-a137-c0175ccc29c3",
|
||||
level="20",
|
||||
obj_id="0df0931b-e251-4f2e-8719-4ebfda3627ba",
|
||||
obj_name="node009",
|
||||
obj_type="NODE",
|
||||
project_id="6e18cc2bdbeb48a5b3cad2dc499f6804",
|
||||
status="CREATING",
|
||||
generated_at="2015-03-05T08:53:15",
|
||||
user_id="a21ded6060534d99840658a777c2af5a"
|
||||
)
|
||||
fake_event.to_dict = mock.Mock(return_value={})
|
||||
self.mock_client.events = mock.Mock(return_value=[fake_event])
|
||||
|
||||
def test_event_list_defaults(self):
|
||||
arglist = []
|
||||
@@ -95,7 +89,6 @@ class TestEventList(TestEvent):
|
||||
self.assertEqual(self.columns, columns)
|
||||
|
||||
def test_event_list_sort_invalid_key(self):
|
||||
self.mock_client.events = mock.Mock(return_value=self.response)
|
||||
kwargs = copy.deepcopy(self.defaults)
|
||||
kwargs['sort'] = 'bad_key'
|
||||
arglist = ['--sort', 'bad_key']
|
||||
@@ -105,7 +98,6 @@ class TestEventList(TestEvent):
|
||||
self.cmd.take_action, parsed_args)
|
||||
|
||||
def test_event_list_sort_invalid_direction(self):
|
||||
self.mock_client.events = mock.Mock(return_value=self.response)
|
||||
kwargs = copy.deepcopy(self.defaults)
|
||||
kwargs['sort'] = 'name:bad_direction'
|
||||
arglist = ['--sort', 'name:bad_direction']
|
||||
@@ -134,37 +126,40 @@ class TestEventList(TestEvent):
|
||||
|
||||
|
||||
class TestEventShow(TestEvent):
|
||||
response = {"event": {
|
||||
"action": "create",
|
||||
"cluster_id": 'null',
|
||||
"id": "2d255b9c-8f36-41a2-a137-c0175ccc29c3",
|
||||
"level": "20",
|
||||
"obj_id": "0df0931b-e251-4f2e-8719-4ebfda3627ba",
|
||||
"obj_name": "node009",
|
||||
"obj_type": "NODE",
|
||||
"project": "6e18cc2bdbeb48a5b3cad2dc499f6804",
|
||||
"status": "CREATING",
|
||||
"cluster_id": "f23ff00c-ec4f-412d-bd42-7f6e209819cb",
|
||||
"generated_at": "2015-03-05T08:53:15",
|
||||
"user": "a21ded6060534d99840658a777c2af5a"
|
||||
}}
|
||||
|
||||
def setUp(self):
|
||||
super(TestEventShow, self).setUp()
|
||||
self.cmd = osc_event.ShowEvent(self.app, None)
|
||||
self.mock_client.get_event = mock.Mock(
|
||||
return_value=sdk_event.Event(**self.response['event']))
|
||||
fake_event = mock.Mock(
|
||||
action="CREATE",
|
||||
cluster_id=None,
|
||||
id="2d255b9c-8f36-41a2-a137-c0175ccc29c3",
|
||||
level="20",
|
||||
obj_id="0df0931b-e251-4f2e-8719-4ebfda3627ba",
|
||||
obj_name="node009",
|
||||
obj_type="NODE",
|
||||
project_id="6e18cc2bdbeb48a5b3cad2dc499f6804",
|
||||
status="CREATING",
|
||||
generated_at="2015-03-05T08:53:15",
|
||||
user_id="a21ded6060534d99840658a777c2af5a"
|
||||
)
|
||||
fake_event.to_dict = mock.Mock(return_value={})
|
||||
self.mock_client.get_event = mock.Mock(return_value=fake_event)
|
||||
|
||||
def test_event_show(self):
|
||||
arglist = ['my_event']
|
||||
parsed_args = self.check_parser(self.cmd, arglist, [])
|
||||
|
||||
self.cmd.take_action(parsed_args)
|
||||
|
||||
self.mock_client.get_event.assert_called_with('my_event')
|
||||
|
||||
def test_event_show_not_found(self):
|
||||
arglist = ['my_event']
|
||||
parsed_args = self.check_parser(self.cmd, arglist, [])
|
||||
self.mock_client.get_event.side_effect = sdk_exc.ResourceNotFound()
|
||||
|
||||
error = self.assertRaises(exc.CommandError, self.cmd.take_action,
|
||||
parsed_args)
|
||||
|
||||
self.assertEqual('Event not found: my_event', str(error))
|
||||
|
@@ -13,7 +13,6 @@
|
||||
import copy
|
||||
|
||||
import mock
|
||||
from openstack.cluster.v1 import receiver as sdk_receiver
|
||||
from openstack import exceptions as sdk_exc
|
||||
from osc_lib import exceptions as exc
|
||||
import six
|
||||
@@ -31,33 +30,6 @@ class TestReceiver(fakes.TestClusteringv1):
|
||||
|
||||
class TestReceiverList(TestReceiver):
|
||||
columns = ['id', 'name', 'type', 'cluster_id', 'action', 'created_at']
|
||||
response = {"receivers": [
|
||||
{
|
||||
"action": "CLUSTER_SCALE_OUT",
|
||||
"actor": {
|
||||
"trust_id": [
|
||||
"6dc6d336e3fc4c0a951b5698cd1236d9"
|
||||
]
|
||||
},
|
||||
"channel": {
|
||||
"alarm_url": "http://node1:8778/v1/webhooks/e03dd2e5-8f2e-4ec1"
|
||||
"-8c6a-74ba891e5422/trigger?V=1&count=1"
|
||||
},
|
||||
"cluster_id": "ae63a10b-4a90-452c-aef1-113a0b255ee3",
|
||||
"created_at": "2015-06-27T05:09:43",
|
||||
"domain": "Default",
|
||||
"id": "573aa1ba-bf45-49fd-907d-6b5d6e6adfd3",
|
||||
"name": "cluster_inflate",
|
||||
"params": {
|
||||
"count": "1"
|
||||
},
|
||||
"project": "6e18cc2bdbeb48a5b3cad2dc499f6804",
|
||||
"type": "webhook",
|
||||
"updated_at": 'null',
|
||||
"user": "b4ad2d6e18cc2b9c48049f6dbe8a5b3c"
|
||||
}
|
||||
]}
|
||||
|
||||
defaults = {
|
||||
'global_project': False,
|
||||
'marker': None,
|
||||
@@ -68,7 +40,26 @@ class TestReceiverList(TestReceiver):
|
||||
def setUp(self):
|
||||
super(TestReceiverList, self).setUp()
|
||||
self.cmd = osc_receiver.ListReceiver(self.app, None)
|
||||
self.mock_client.receivers = mock.Mock(return_value=self.response)
|
||||
fake_receiver = mock.Mock(
|
||||
action="CLUSTER_SCALE_OUT",
|
||||
actor={},
|
||||
channel={
|
||||
"alarm_url": "http://node1:8778/v1/webhooks/e03dd2e5-8f2e-4ec1"
|
||||
"-8c6a-74ba891e5422/trigger?V=1&count=1"
|
||||
},
|
||||
cluster_id="ae63a10b-4a90-452c-aef1-113a0b255ee3",
|
||||
created_at="2015-06-27T05:09:43",
|
||||
domain_id="Default",
|
||||
id="573aa1ba-bf45-49fd-907d-6b5d6e6adfd3",
|
||||
name="cluster_inflate",
|
||||
params={"count": "1"},
|
||||
project_id="6e18cc2bdbeb48a5b3cad2dc499f6804",
|
||||
type="webhook",
|
||||
updated_at=None,
|
||||
user_id="b4ad2d6e18cc2b9c48049f6dbe8a5b3c"
|
||||
)
|
||||
fake_receiver.to_dict = mock.Mock(return_value={})
|
||||
self.mock_client.receivers = mock.Mock(return_value=[fake_receiver])
|
||||
|
||||
def test_receiver_list_defaults(self):
|
||||
arglist = []
|
||||
@@ -103,8 +94,6 @@ class TestReceiverList(TestReceiver):
|
||||
self.assertEqual(self.columns, columns)
|
||||
|
||||
def test_receiver_list_sort_invalid_key(self):
|
||||
self.mock_client.receivers = mock.Mock(
|
||||
return_value=self.response)
|
||||
kwargs = copy.deepcopy(self.defaults)
|
||||
kwargs['sort'] = 'bad_key'
|
||||
arglist = ['--sort', 'bad_key']
|
||||
@@ -114,8 +103,6 @@ class TestReceiverList(TestReceiver):
|
||||
self.cmd.take_action, parsed_args)
|
||||
|
||||
def test_receiver_list_sort_invalid_direction(self):
|
||||
self.mock_client.receivers = mock.Mock(
|
||||
return_value=self.response)
|
||||
kwargs = copy.deepcopy(self.defaults)
|
||||
kwargs['sort'] = 'name:bad_direction'
|
||||
arglist = ['--sort', 'name:bad_direction']
|
||||
@@ -144,36 +131,30 @@ class TestReceiverList(TestReceiver):
|
||||
|
||||
|
||||
class TestReceiverShow(TestReceiver):
|
||||
get_response = {"receiver": {
|
||||
"action": "CLUSTER_SCALE_OUT",
|
||||
"actor": {
|
||||
"trust_id": [
|
||||
"6dc6d336e3fc4c0a951b5698cd1236d9"
|
||||
]
|
||||
},
|
||||
"channel": {
|
||||
"alarm_url": "http://node1:8778/v1/webhooks/e03dd2e5-8f2e-4ec1-"
|
||||
"8c6a-74ba891e5422/trigger?V=1&count=1"
|
||||
},
|
||||
"cluster_id": "ae63a10b-4a90-452c-aef1-113a0b255ee3",
|
||||
"created_at": "2015-06-27T05:09:43",
|
||||
"domain": "Default",
|
||||
"id": "573aa1ba-bf45-49fd-907d-6b5d6e6adfd3",
|
||||
"name": "cluster_inflate",
|
||||
"params": {
|
||||
"count": "1"
|
||||
},
|
||||
"project": "6e18cc2bdbeb48a5b3cad2dc499f6804",
|
||||
"type": "webhook",
|
||||
"updated_at": 'null',
|
||||
"user": "b4ad2d6e18cc2b9c48049f6dbe8a5b3c"
|
||||
}}
|
||||
|
||||
def setUp(self):
|
||||
super(TestReceiverShow, self).setUp()
|
||||
self.cmd = osc_receiver.ShowReceiver(self.app, None)
|
||||
x_receiver = sdk_receiver.Receiver(**self.get_response['receiver'])
|
||||
self.mock_client.get_receiver = mock.Mock(return_value=x_receiver)
|
||||
fake_receiver = mock.Mock(
|
||||
action="CLUSTER_SCALE_OUT",
|
||||
actor={},
|
||||
channel={
|
||||
"alarm_url": "http://node1:8778/v1/webhooks/e03dd2e5-8f2e-4ec1"
|
||||
"-8c6a-74ba891e5422/trigger?V=1&count=1"
|
||||
},
|
||||
cluster_id="ae63a10b-4a90-452c-aef1-113a0b255ee3",
|
||||
created_at="2015-06-27T05:09:43",
|
||||
domain_id="Default",
|
||||
id="573aa1ba-bf45-49fd-907d-6b5d6e6adfd3",
|
||||
name="cluster_inflate",
|
||||
params={"count": "1"},
|
||||
project_id="6e18cc2bdbeb48a5b3cad2dc499f6804",
|
||||
type="webhook",
|
||||
updated_at=None,
|
||||
user_id="b4ad2d6e18cc2b9c48049f6dbe8a5b3c"
|
||||
)
|
||||
fake_receiver.to_dict = mock.Mock(return_value={})
|
||||
self.mock_client.get_receiver = mock.Mock(return_value=fake_receiver)
|
||||
|
||||
def test_receiver_show(self):
|
||||
arglist = ['my_receiver']
|
||||
@@ -191,30 +172,6 @@ class TestReceiverShow(TestReceiver):
|
||||
|
||||
|
||||
class TestReceiverCreate(TestReceiver):
|
||||
response = {"receiver": {
|
||||
"action": "CLUSTER_SCALE_OUT",
|
||||
"actor": {
|
||||
"trust_id": [
|
||||
"6dc6d336e3fc4c0a951b5698cd1236d9"
|
||||
]
|
||||
},
|
||||
"channel": {
|
||||
"alarm_url": "http://node1:8778/v1/webhooks/e03dd2e5-8f2e-4ec"
|
||||
"1-8c6a-74ba891e5422/trigger?V=1&count=1"
|
||||
},
|
||||
"cluster_id": "ae63a10b-4a90-452c-aef1-113a0b255ee3",
|
||||
"created_at": "2015-06-27T05:09:43",
|
||||
"domain": "Default",
|
||||
"id": "573aa1ba-bf45-49fd-907d-6b5d6e6adfd3",
|
||||
"name": "cluster_inflate",
|
||||
"params": {
|
||||
"count": "1"
|
||||
},
|
||||
"project": "6e18cc2bdbeb48a5b3cad2dc499f6804",
|
||||
"type": "webhook",
|
||||
"updated_at": 'null',
|
||||
"user": "b4ad2d6e18cc2b9c48049f6dbe8a5b3c"
|
||||
}}
|
||||
|
||||
args = {
|
||||
"action": "CLUSTER_SCALE_OUT",
|
||||
@@ -229,10 +186,29 @@ class TestReceiverCreate(TestReceiver):
|
||||
def setUp(self):
|
||||
super(TestReceiverCreate, self).setUp()
|
||||
self.cmd = osc_receiver.CreateReceiver(self.app, None)
|
||||
fake_receiver = mock.Mock(
|
||||
action="CLUSTER_SCALE_OUT",
|
||||
actor={},
|
||||
channel={
|
||||
"alarm_url": "http://node1:8778/v1/webhooks/e03dd2e5-8f2e-4ec1"
|
||||
"-8c6a-74ba891e5422/trigger?V=1&count=1"
|
||||
},
|
||||
cluster_id="ae63a10b-4a90-452c-aef1-113a0b255ee3",
|
||||
created_at="2015-06-27T05:09:43",
|
||||
domain_id="Default",
|
||||
id="573aa1ba-bf45-49fd-907d-6b5d6e6adfd3",
|
||||
name="cluster_inflate",
|
||||
params={"count": "1"},
|
||||
project_id="6e18cc2bdbeb48a5b3cad2dc499f6804",
|
||||
type="webhook",
|
||||
updated_at=None,
|
||||
user_id="b4ad2d6e18cc2b9c48049f6dbe8a5b3c"
|
||||
)
|
||||
fake_receiver.to_dict = mock.Mock(return_value={})
|
||||
self.mock_client.create_receiver = mock.Mock(
|
||||
return_value=sdk_receiver.Receiver(**self.response['receiver']))
|
||||
return_value=fake_receiver)
|
||||
self.mock_client.get_receiver = mock.Mock(
|
||||
return_value=sdk_receiver.Receiver(**self.response['receiver']))
|
||||
return_value=fake_receiver)
|
||||
|
||||
def test_receiver_create_webhook(self):
|
||||
arglist = ['my_receiver', '--action', 'CLUSTER_SCALE_OUT',
|
||||
@@ -264,6 +240,7 @@ class TestReceiverCreate(TestReceiver):
|
||||
|
||||
|
||||
class TestReceiverDelete(TestReceiver):
|
||||
|
||||
def setUp(self):
|
||||
super(TestReceiverDelete, self).setUp()
|
||||
self.cmd = osc_receiver.DeleteReceiver(self.app, None)
|
||||
|
Reference in New Issue
Block a user