summaryrefslogtreecommitdiff
path: root/neutronclient/tests/unit/lb
diff options
context:
space:
mode:
Diffstat (limited to 'neutronclient/tests/unit/lb')
-rw-r--r--neutronclient/tests/unit/lb/__init__.py0
-rw-r--r--neutronclient/tests/unit/lb/test_cli20_healthmonitor.py202
-rw-r--r--neutronclient/tests/unit/lb/test_cli20_member.py118
-rw-r--r--neutronclient/tests/unit/lb/test_cli20_pool.py166
-rw-r--r--neutronclient/tests/unit/lb/test_cli20_vip.py206
-rw-r--r--neutronclient/tests/unit/lb/v2/__init__.py0
-rw-r--r--neutronclient/tests/unit/lb/v2/test_cli20_healthmonitor.py175
-rw-r--r--neutronclient/tests/unit/lb/v2/test_cli20_l7policy.py260
-rw-r--r--neutronclient/tests/unit/lb/v2/test_cli20_l7rule.py210
-rw-r--r--neutronclient/tests/unit/lb/v2/test_cli20_listener.py194
-rw-r--r--neutronclient/tests/unit/lb/v2/test_cli20_loadbalancer.py213
-rw-r--r--neutronclient/tests/unit/lb/v2/test_cli20_member.py171
-rw-r--r--neutronclient/tests/unit/lb/v2/test_cli20_pool.py202
13 files changed, 0 insertions, 2117 deletions
diff --git a/neutronclient/tests/unit/lb/__init__.py b/neutronclient/tests/unit/lb/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/neutronclient/tests/unit/lb/__init__.py
+++ /dev/null
diff --git a/neutronclient/tests/unit/lb/test_cli20_healthmonitor.py b/neutronclient/tests/unit/lb/test_cli20_healthmonitor.py
deleted file mode 100644
index 61cb1b1..0000000
--- a/neutronclient/tests/unit/lb/test_cli20_healthmonitor.py
+++ /dev/null
@@ -1,202 +0,0 @@
-# Copyright 2013 Mirantis Inc.
-# All Rights Reserved
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-#
-
-import sys
-from unittest import mock
-
-
-from neutronclient.neutron.v2_0.lb import healthmonitor
-from neutronclient.tests.unit import test_cli20
-
-
-class CLITestV20LbHealthmonitorJSON(test_cli20.CLITestV20Base):
- def test_create_healthmonitor_with_mandatory_params(self):
- # lb-healthmonitor-create with mandatory params only.
- resource = 'health_monitor'
- cmd = healthmonitor.CreateHealthMonitor(test_cli20.MyApp(sys.stdout),
- None)
- admin_state_up = False
- delay = '60'
- max_retries = '2'
- timeout = '10'
- type = 'TCP'
- tenant_id = 'my-tenant'
- my_id = 'my-id'
- args = ['--admin-state-down',
- '--delay', delay,
- '--max-retries', max_retries,
- '--timeout', timeout,
- '--type', type,
- '--tenant-id', tenant_id]
- position_names = ['admin_state_up', 'delay', 'max_retries', 'timeout',
- 'type', 'tenant_id']
- position_values = [admin_state_up, delay, max_retries, timeout, type,
- tenant_id]
- self._test_create_resource(resource, cmd, '', my_id, args,
- position_names, position_values)
-
- def test_create_healthmonitor_with_all_params(self):
- # lb-healthmonitor-create with all params set.
- resource = 'health_monitor'
- cmd = healthmonitor.CreateHealthMonitor(test_cli20.MyApp(sys.stdout),
- None)
- admin_state_up = False
- delay = '60'
- expected_codes = '200-202,204'
- http_method = 'HEAD'
- max_retries = '2'
- timeout = '10'
- type = 'TCP'
- tenant_id = 'my-tenant'
- url_path = '/health'
- my_id = 'my-id'
- args = ['--admin-state-down',
- '--delay', delay,
- '--expected-codes', expected_codes,
- '--http-method', http_method,
- '--max-retries', max_retries,
- '--timeout', timeout,
- '--type', type,
- '--tenant-id', tenant_id,
- '--url-path', url_path]
- position_names = ['admin_state_up', 'delay',
- 'expected_codes', 'http_method',
- 'max_retries', 'timeout',
- 'type', 'tenant_id', 'url_path']
- position_values = [admin_state_up, delay,
- expected_codes, http_method,
- max_retries, timeout,
- type, tenant_id, url_path]
- self._test_create_resource(resource, cmd, '', my_id, args,
- position_names, position_values)
-
- def test_list_healthmonitors(self):
- # lb-healthmonitor-list.
- resources = "health_monitors"
- cmd = healthmonitor.ListHealthMonitor(test_cli20.MyApp(sys.stdout),
- None)
- self._test_list_resources(resources, cmd, True)
-
- def test_list_healthmonitors_pagination(self):
- # lb-healthmonitor-list.
- resources = "health_monitors"
- cmd = healthmonitor.ListHealthMonitor(test_cli20.MyApp(sys.stdout),
- None)
- self._test_list_resources_with_pagination(resources, cmd)
-
- def test_list_healthmonitors_sort(self):
- # lb-healthmonitor-list --sort-key name --sort-key id --sort-key asc
- # --sort-key desc
- resources = "health_monitors"
- cmd = healthmonitor.ListHealthMonitor(test_cli20.MyApp(sys.stdout),
- None)
- self._test_list_resources(resources, cmd,
- sort_key=["name", "id"],
- sort_dir=["asc", "desc"])
-
- def test_list_healthmonitors_limit(self):
- # lb-healthmonitor-list -P.
- resources = "health_monitors"
- cmd = healthmonitor.ListHealthMonitor(test_cli20.MyApp(sys.stdout),
- None)
- self._test_list_resources(resources, cmd, page_size=1000)
-
- def test_show_healthmonitor_id(self):
- # lb-healthmonitor-show test_id.
- resource = 'health_monitor'
- cmd = healthmonitor.ShowHealthMonitor(test_cli20.MyApp(sys.stdout),
- None)
- args = ['--fields', 'id', self.test_id]
- self._test_show_resource(resource, cmd, self.test_id, args, ['id'])
-
- def test_update_health_monitor(self):
- # lb-healthmonitor-update myid --name myname --tags a b.
- resource = 'health_monitor'
- cmd = healthmonitor.UpdateHealthMonitor(test_cli20.MyApp(sys.stdout),
- None)
- self._test_update_resource(resource, cmd, 'myid',
- ['myid', '--timeout', '5'],
- {'timeout': '5', })
-
- def test_delete_healthmonitor(self):
- # lb-healthmonitor-delete my-id."""
- resource = 'health_monitor'
- cmd = healthmonitor.DeleteHealthMonitor(test_cli20.MyApp(sys.stdout),
- None)
- my_id = 'my-id'
- args = [my_id]
- self._test_delete_resource(resource, cmd, my_id, args)
-
- def test_associate_healthmonitor(self):
- cmd = healthmonitor.AssociateHealthMonitor(
- test_cli20.MyApp(sys.stdout),
- None)
- resource = 'health_monitor'
- health_monitor_id = 'hm-id'
- pool_id = 'p_id'
- args = [health_monitor_id, pool_id]
-
- body = {resource: {'id': health_monitor_id}}
- result = {resource: {'id': health_monitor_id}, }
- result_str = self.client.serialize(result)
-
- path = getattr(self.client,
- "associate_pool_health_monitors_path") % pool_id
- return_tup = (test_cli20.MyResp(200), result_str)
- cmd_parser = cmd.get_parser('test_' + resource)
- parsed_args = cmd_parser.parse_args(args)
-
- with mock.patch.object(cmd, "get_client",
- return_value=self.client) as mock_get_client, \
- mock.patch.object(self.client.httpclient, "request",
- return_value=return_tup) as mock_request:
- cmd.run(parsed_args)
-
- mock_get_client.assert_called_once_with()
- mock_request.assert_called_once_with(
- test_cli20.end_url(path), 'POST',
- body=test_cli20.MyComparator(body, self.client),
- headers=test_cli20.ContainsKeyValue(
- {'X-Auth-Token': test_cli20.TOKEN}))
-
- def test_disassociate_healthmonitor(self):
- cmd = healthmonitor.DisassociateHealthMonitor(
- test_cli20.MyApp(sys.stdout),
- None)
- resource = 'health_monitor'
- health_monitor_id = 'hm-id'
- pool_id = 'p_id'
- args = [health_monitor_id, pool_id]
-
- path = (getattr(self.client,
- "disassociate_pool_health_monitors_path") %
- {'pool': pool_id, 'health_monitor': health_monitor_id})
- return_tup = (test_cli20.MyResp(204), None)
- cmd_parser = cmd.get_parser('test_' + resource)
- parsed_args = cmd_parser.parse_args(args)
-
- with mock.patch.object(cmd, "get_client",
- return_value=self.client) as mock_get_client, \
- mock.patch.object(self.client.httpclient, "request",
- return_value=return_tup) as mock_request:
- cmd.run(parsed_args)
-
- mock_get_client.assert_called_once_with()
- mock_request.assert_called_once_with(
- test_cli20.end_url(path), 'DELETE',
- body=None,
- headers=test_cli20.ContainsKeyValue(
- {'X-Auth-Token': test_cli20.TOKEN}))
diff --git a/neutronclient/tests/unit/lb/test_cli20_member.py b/neutronclient/tests/unit/lb/test_cli20_member.py
deleted file mode 100644
index 8ce2a0f..0000000
--- a/neutronclient/tests/unit/lb/test_cli20_member.py
+++ /dev/null
@@ -1,118 +0,0 @@
-# Copyright 2013 Mirantis Inc.
-# All Rights Reserved
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-#
-
-import sys
-
-from neutronclient.neutron.v2_0.lb import member
-from neutronclient.tests.unit import test_cli20
-
-
-class CLITestV20LbMemberJSON(test_cli20.CLITestV20Base):
- def setUp(self):
- super(CLITestV20LbMemberJSON, self).setUp(plurals={'tags': 'tag'})
-
- def test_create_member(self):
- # lb-member-create with mandatory params only.
- resource = 'member'
- cmd = member.CreateMember(test_cli20.MyApp(sys.stdout), None)
- address = '10.0.0.1'
- port = '8080'
- tenant_id = 'my-tenant'
- my_id = 'my-id'
- pool_id = 'pool-id'
- args = ['--address', address, '--protocol-port', port,
- '--tenant-id', tenant_id, pool_id]
- position_names = ['address', 'protocol_port', 'tenant_id', 'pool_id',
- 'admin_state_up']
- position_values = [address, port, tenant_id, pool_id, True]
- self._test_create_resource(resource, cmd, None, my_id, args,
- position_names, position_values,
- admin_state_up=None)
-
- def test_create_member_all_params(self):
- # lb-member-create with all available params.
- resource = 'member'
- cmd = member.CreateMember(test_cli20.MyApp(sys.stdout), None)
- address = '10.0.0.1'
- admin_state_up = False
- port = '8080'
- weight = '1'
- tenant_id = 'my-tenant'
- my_id = 'my-id'
- pool_id = 'pool-id'
- args = ['--address', address, '--admin-state-down',
- '--protocol-port', port, '--weight', weight,
- '--tenant-id', tenant_id, pool_id]
- position_names = [
- 'address', 'admin_state_up', 'protocol_port', 'weight',
- 'tenant_id', 'pool_id'
- ]
- position_values = [address, admin_state_up, port, weight,
- tenant_id, pool_id]
- self._test_create_resource(resource, cmd, None, my_id, args,
- position_names, position_values,
- admin_state_up=None)
-
- def test_list_members(self):
- # lb-member-list.
- resources = "members"
- cmd = member.ListMember(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources(resources, cmd, True)
-
- def test_list_members_pagination(self):
- # lb-member-list.
- resources = "members"
- cmd = member.ListMember(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources_with_pagination(resources, cmd)
-
- def test_list_members_sort(self):
- # lb-member-list --sort-key name --sort-key id --sort-key asc
- # --sort-key desc
- resources = "members"
- cmd = member.ListMember(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources(resources, cmd,
- sort_key=["name", "id"],
- sort_dir=["asc", "desc"])
-
- def test_list_members_limit(self):
- # lb-member-list -P.
- resources = "members"
- cmd = member.ListMember(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources(resources, cmd, page_size=1000)
-
- def test_show_member_id(self):
- # lb-member-show test_id.
- resource = 'member'
- cmd = member.ShowMember(test_cli20.MyApp(sys.stdout), None)
- args = ['--fields', 'id', self.test_id]
- self._test_show_resource(resource, cmd, self.test_id, args, ['id'])
-
- def test_update_member(self):
- # lb-member-update myid --name myname --tags a b.
- resource = 'member'
- cmd = member.UpdateMember(test_cli20.MyApp(sys.stdout), None)
- self._test_update_resource(resource, cmd, 'myid',
- ['myid', '--name', 'myname',
- '--tags', 'a', 'b'],
- {'name': 'myname', 'tags': ['a', 'b'], })
-
- def test_delete_member(self):
- # lb-member-delete my-id.
- resource = 'member'
- cmd = member.DeleteMember(test_cli20.MyApp(sys.stdout), None)
- my_id = 'my-id'
- args = [my_id]
- self._test_delete_resource(resource, cmd, my_id, args)
diff --git a/neutronclient/tests/unit/lb/test_cli20_pool.py b/neutronclient/tests/unit/lb/test_cli20_pool.py
deleted file mode 100644
index 79bf23d..0000000
--- a/neutronclient/tests/unit/lb/test_cli20_pool.py
+++ /dev/null
@@ -1,166 +0,0 @@
-# Copyright 2013 Mirantis Inc.
-# All Rights Reserved
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-#
-
-import sys
-from unittest import mock
-
-
-from neutronclient.neutron.v2_0.lb import pool
-from neutronclient.tests.unit import test_cli20
-
-
-class CLITestV20LbPoolJSON(test_cli20.CLITestV20Base):
-
- def test_create_pool_with_mandatory_params(self):
- # lb-pool-create with mandatory params only.
- resource = 'pool'
- cmd = pool.CreatePool(test_cli20.MyApp(sys.stdout), None)
- name = 'my-name'
- lb_method = 'ROUND_ROBIN'
- protocol = 'HTTP'
- subnet_id = 'subnet-id'
- tenant_id = 'my-tenant'
- my_id = 'my-id'
- args = ['--lb-method', lb_method,
- '--name', name,
- '--protocol', protocol,
- '--subnet-id', subnet_id,
- '--tenant-id', tenant_id]
- position_names = ['admin_state_up', 'lb_method', 'name',
- 'protocol', 'subnet_id', 'tenant_id']
- position_values = [True, lb_method, name,
- protocol, subnet_id, tenant_id]
- self._test_create_resource(resource, cmd, name, my_id, args,
- position_names, position_values)
-
- def test_create_pool_with_all_params(self):
- # lb-pool-create with all params set.
- resource = 'pool'
- cmd = pool.CreatePool(test_cli20.MyApp(sys.stdout), None)
- name = 'my-name'
- description = 'my-desc'
- lb_method = 'ROUND_ROBIN'
- protocol = 'HTTP'
- subnet_id = 'subnet-id'
- tenant_id = 'my-tenant'
- my_id = 'my-id'
- provider = 'lbaas'
- args = ['--admin-state-down',
- '--description', description,
- '--lb-method', lb_method,
- '--name', name,
- '--protocol', protocol,
- '--subnet-id', subnet_id,
- '--tenant-id', tenant_id,
- '--provider', provider]
- position_names = ['admin_state_up', 'description', 'lb_method', 'name',
- 'protocol', 'subnet_id', 'tenant_id', 'provider']
- position_values = [False, description, lb_method, name,
- protocol, subnet_id, tenant_id, provider]
- self._test_create_resource(resource, cmd, name, my_id, args,
- position_names, position_values)
-
- def test_list_pools(self):
- # lb-pool-list.
- resources = "pools"
- cmd = pool.ListPool(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources(resources, cmd, True)
-
- def test_list_pools_pagination(self):
- # lb-pool-list.
- resources = "pools"
- cmd = pool.ListPool(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources_with_pagination(resources, cmd)
-
- def test_list_pools_sort(self):
- # lb-pool-list --sort-key name --sort-key id --sort-key asc
- # --sort-key desc
- resources = "pools"
- cmd = pool.ListPool(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources(resources, cmd,
- sort_key=["name", "id"],
- sort_dir=["asc", "desc"])
-
- def test_list_pools_limit(self):
- # lb-pool-list -P.
- resources = "pools"
- cmd = pool.ListPool(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources(resources, cmd, page_size=1000)
-
- def test_show_pool_id(self):
- # lb-pool-show test_id.
- resource = 'pool'
- cmd = pool.ShowPool(test_cli20.MyApp(sys.stdout), None)
- args = ['--fields', 'id', self.test_id]
- self._test_show_resource(resource, cmd, self.test_id, args, ['id'])
-
- def test_show_pool_id_name(self):
- # lb-pool-show.
- resource = 'pool'
- cmd = pool.ShowPool(test_cli20.MyApp(sys.stdout), None)
- args = ['--fields', 'id', '--fields', 'name', self.test_id]
- self._test_show_resource(resource, cmd, self.test_id,
- args, ['id', 'name'])
-
- def test_update_pool(self):
- # lb-pool-update myid --name newname --tags a b.
- resource = 'pool'
- cmd = pool.UpdatePool(test_cli20.MyApp(sys.stdout), None)
- self._test_update_resource(resource, cmd, 'myid',
- ['myid', '--name', 'newname'],
- {'name': 'newname', })
-
- def test_delete_pool(self):
- # lb-pool-delete my-id.
- resource = 'pool'
- cmd = pool.DeletePool(test_cli20.MyApp(sys.stdout), None)
- my_id = 'my-id'
- args = [my_id]
- self._test_delete_resource(resource, cmd, my_id, args)
-
- def test_retrieve_pool_stats(self):
- # lb-pool-stats test_id.
- resource = 'pool'
- cmd = pool.RetrievePoolStats(test_cli20.MyApp(sys.stdout), None)
- my_id = self.test_id
- fields = ['bytes_in', 'bytes_out']
- args = ['--fields', 'bytes_in', '--fields', 'bytes_out', my_id]
-
- query = "&".join(["fields=%s" % field for field in fields])
- expected_res = {'stats': {'bytes_in': '1234', 'bytes_out': '4321'}}
- resstr = self.client.serialize(expected_res)
- path = getattr(self.client, "pool_path_stats")
- return_tup = (test_cli20.MyResp(200), resstr)
-
- cmd_parser = cmd.get_parser("test_" + resource)
- parsed_args = cmd_parser.parse_args(args)
-
- with mock.patch.object(cmd, "get_client",
- return_value=self.client) as mock_get_client, \
- mock.patch.object(self.client.httpclient, "request",
- return_value=return_tup) as mock_request:
- cmd.run(parsed_args)
-
- self.assert_mock_multiple_calls_with_same_arguments(
- mock_get_client, mock.call(), 2)
- mock_request.assert_called_once_with(
- test_cli20.end_url(path % my_id, query), 'GET',
- body=None,
- headers=test_cli20.ContainsKeyValue(
- {'X-Auth-Token': test_cli20.TOKEN}))
- _str = self.fake_stdout.make_string()
- self.assertIn('bytes_in', _str)
- self.assertIn('bytes_out', _str)
diff --git a/neutronclient/tests/unit/lb/test_cli20_vip.py b/neutronclient/tests/unit/lb/test_cli20_vip.py
deleted file mode 100644
index b08de44..0000000
--- a/neutronclient/tests/unit/lb/test_cli20_vip.py
+++ /dev/null
@@ -1,206 +0,0 @@
-# Copyright 2013 Mirantis Inc.
-# All Rights Reserved
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-#
-
-import sys
-
-from neutronclient.neutron.v2_0.lb import vip
-from neutronclient.tests.unit import test_cli20
-
-
-class CLITestV20LbVipJSON(test_cli20.CLITestV20Base):
- def setUp(self):
- super(CLITestV20LbVipJSON, self).setUp(plurals={'tags': 'tag'})
-
- def test_create_vip_with_mandatory_params(self):
- # lb-vip-create with all mandatory params.
- resource = 'vip'
- cmd = vip.CreateVip(test_cli20.MyApp(sys.stdout), None)
- pool_id = 'my-pool-id'
- name = 'my-name'
- subnet_id = 'subnet-id'
- protocol_port = '1000'
- protocol = 'TCP'
- tenant_id = 'my-tenant'
- my_id = 'my-id'
- args = ['--name', name,
- '--protocol-port', protocol_port,
- '--protocol', protocol,
- '--subnet-id', subnet_id,
- '--tenant-id', tenant_id,
- pool_id]
- position_names = ['pool_id', 'name', 'protocol_port', 'protocol',
- 'subnet_id', 'tenant_id']
- position_values = [pool_id, name, protocol_port, protocol,
- subnet_id, tenant_id]
- self._test_create_resource(resource, cmd, name, my_id, args,
- position_names, position_values,
- admin_state_up=True)
-
- def test_create_vip_with_all_params(self):
- # lb-vip-create with all params.
- resource = 'vip'
- cmd = vip.CreateVip(test_cli20.MyApp(sys.stdout), None)
- pool_id = 'my-pool-id'
- name = 'my-name'
- description = 'my-desc'
- address = '10.0.0.2'
- admin_state = False
- connection_limit = '1000'
- subnet_id = 'subnet-id'
- protocol_port = '80'
- protocol = 'TCP'
- tenant_id = 'my-tenant'
- my_id = 'my-id'
- args = ['--name', name,
- '--description', description,
- '--address', address,
- '--admin-state-down',
- '--connection-limit', connection_limit,
- '--protocol-port', protocol_port,
- '--protocol', protocol,
- '--subnet-id', subnet_id,
- '--tenant-id', tenant_id,
- pool_id]
- position_names = ['pool_id', 'name', 'description', 'address',
- 'admin_state_up', 'connection_limit',
- 'protocol_port', 'protocol', 'subnet_id',
- 'tenant_id']
- position_values = [pool_id, name, description, address,
- admin_state, connection_limit, protocol_port,
- protocol, subnet_id,
- tenant_id]
- self._test_create_resource(resource, cmd, name, my_id, args,
- position_names, position_values)
-
- def test_create_vip_with_session_persistence_params(self):
- # lb-vip-create with mandatory and session-persistence params.
- resource = 'vip'
- cmd = vip.CreateVip(test_cli20.MyApp(sys.stdout), None)
- pool_id = 'my-pool-id'
- name = 'my-name'
- subnet_id = 'subnet-id'
- protocol_port = '1000'
- protocol = 'TCP'
- tenant_id = 'my-tenant'
- my_id = 'my-id'
- args = ['--name', name,
- '--protocol-port', protocol_port,
- '--protocol', protocol,
- '--subnet-id', subnet_id,
- '--tenant-id', tenant_id,
- pool_id,
- '--session-persistence', 'type=dict',
- 'type=cookie,cookie_name=pie',
- '--optional-param', 'any']
- position_names = ['pool_id', 'name', 'protocol_port', 'protocol',
- 'subnet_id', 'tenant_id', 'optional_param']
- position_values = [pool_id, name, protocol_port, protocol,
- subnet_id, tenant_id, 'any']
- extra_body = {
- 'session_persistence': {
- 'type': 'cookie',
- 'cookie_name': 'pie',
- },
- }
- self._test_create_resource(resource, cmd, name, my_id, args,
- position_names, position_values,
- admin_state_up=True, extra_body=extra_body)
-
- def test_list_vips(self):
- # lb-vip-list.
- resources = "vips"
- cmd = vip.ListVip(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources(resources, cmd, True)
-
- def test_list_vips_pagination(self):
- # lb-vip-list.
- resources = "vips"
- cmd = vip.ListVip(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources_with_pagination(resources, cmd)
-
- def test_list_vips_sort(self):
- # lb-vip-list --sort-key name --sort-key id --sort-key asc
- # --sort-key desc
- resources = "vips"
- cmd = vip.ListVip(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources(resources, cmd,
- sort_key=["name", "id"],
- sort_dir=["asc", "desc"])
-
- def test_list_vips_limit(self):
- # lb-vip-list -P.
- resources = "vips"
- cmd = vip.ListVip(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources(resources, cmd, page_size=1000)
-
- def test_show_vip_id(self):
- # lb-vip-show test_id.
- resource = 'vip'
- cmd = vip.ShowVip(test_cli20.MyApp(sys.stdout), None)
- args = ['--fields', 'id', self.test_id]
- self._test_show_resource(resource, cmd, self.test_id, args, ['id'])
-
- def test_show_vip_id_name(self):
- # lb-vip-show.
- resource = 'vip'
- cmd = vip.ShowVip(test_cli20.MyApp(sys.stdout), None)
- args = ['--fields', 'id', '--fields', 'name', self.test_id]
- self._test_show_resource(resource, cmd, self.test_id,
- args, ['id', 'name'])
-
- def test_update_vip(self):
- # lb-vip-update myid --name myname --tags a b.
- resource = 'vip'
- cmd = vip.UpdateVip(test_cli20.MyApp(sys.stdout), None)
- self._test_update_resource(resource, cmd, 'myid',
- ['myid', '--name', 'myname',
- '--tags', 'a', 'b'],
- {'name': 'myname', 'tags': ['a', 'b'], })
-
- def test_update_vip_with_session_persistence(self):
- resource = 'vip'
- cmd = vip.UpdateVip(test_cli20.MyApp(sys.stdout), None)
- body = {
- 'session_persistence': {
- 'type': 'source',
- },
- }
- args = ['myid', '--session-persistence', 'type=dict',
- 'type=source']
- self._test_update_resource(resource, cmd, 'myid', args, body)
-
- def test_update_vip_with_session_persistence_and_name(self):
- resource = 'vip'
- cmd = vip.UpdateVip(test_cli20.MyApp(sys.stdout), None)
- body = {
- 'name': 'newname',
- 'session_persistence': {
- 'type': 'cookie',
- 'cookie_name': 'pie',
- },
- }
- args = ['myid', '--name', 'newname',
- '--session-persistence', 'type=dict',
- 'type=cookie,cookie_name=pie']
- self._test_update_resource(resource, cmd, 'myid', args, body)
-
- def test_delete_vip(self):
- # lb-vip-delete my-id.
- resource = 'vip'
- cmd = vip.DeleteVip(test_cli20.MyApp(sys.stdout), None)
- my_id = 'my-id'
- args = [my_id]
- self._test_delete_resource(resource, cmd, my_id, args)
diff --git a/neutronclient/tests/unit/lb/v2/__init__.py b/neutronclient/tests/unit/lb/v2/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/neutronclient/tests/unit/lb/v2/__init__.py
+++ /dev/null
diff --git a/neutronclient/tests/unit/lb/v2/test_cli20_healthmonitor.py b/neutronclient/tests/unit/lb/v2/test_cli20_healthmonitor.py
deleted file mode 100644
index 945ac18..0000000
--- a/neutronclient/tests/unit/lb/v2/test_cli20_healthmonitor.py
+++ /dev/null
@@ -1,175 +0,0 @@
-# Copyright 2014 Blue Box Group, Inc.
-# All Rights Reserved
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-#
-
-import sys
-
-from neutronclient.neutron.v2_0.lb.v2 import healthmonitor
-from neutronclient.tests.unit import test_cli20
-
-
-class CLITestV20LbHealthMonitorJSON(test_cli20.CLITestV20Base):
-
- def test_create_healthmonitor_with_mandatory_params(self):
- # lbaas-healthmonitor-create with mandatory params only.
- resource = 'healthmonitor'
- cmd_resource = 'lbaas_healthmonitor'
- cmd = healthmonitor.CreateHealthMonitor(test_cli20.MyApp(sys.stdout),
- None)
- my_id = 'my-id'
- type = 'PING'
- max_retries = '3'
- delay = '10'
- timeout = '60'
- pool = 'pool1'
- args = ['--type', type, '--max-retries', max_retries,
- '--delay', delay, '--timeout', timeout, '--pool', pool]
- position_names = ['type', 'max_retries', 'delay', 'timeout', 'pool_id']
- position_values = [type, max_retries, delay, timeout, pool]
- self._test_create_resource(resource, cmd, '', my_id, args,
- position_names, position_values,
- cmd_resource=cmd_resource)
-
- def test_create_healthmonitor_with_all_params(self):
- # lbaas-healthmonitor-create with all params set.
- resource = 'healthmonitor'
- cmd_resource = 'lbaas_healthmonitor'
- cmd = healthmonitor.CreateHealthMonitor(test_cli20.MyApp(sys.stdout),
- None)
- my_id = 'my-id'
- type = 'PING'
- max_retries = '3'
- delay = '10'
- timeout = '60'
- http_method = 'GET'
- expected_codes = '201'
- url_path = '/somepath'
- pool = 'pool1'
- name = 'healthmonitor1'
- args = ['--admin-state-down', '--http-method', http_method,
- '--expected-codes', expected_codes, '--url-path', url_path,
- '--type', type, '--max-retries', max_retries,
- '--delay', delay, '--timeout', timeout, '--pool', pool,
- '--name', name]
- position_names = ['admin_state_up', 'http_method', 'expected_codes',
- 'url_path', 'type', 'max_retries', 'delay',
- 'timeout', 'pool_id', 'name']
- position_values = [False, http_method, expected_codes, url_path,
- type, max_retries, delay, timeout, pool, name]
- self._test_create_resource(resource, cmd, '', my_id, args,
- position_names, position_values,
- cmd_resource=cmd_resource)
-
- def test_list_healthmonitors(self):
- # lbaas-healthmonitor-list.
- resources = 'healthmonitors'
- cmd_resources = 'lbaas_healthmonitors'
- cmd = healthmonitor.ListHealthMonitor(test_cli20.MyApp(sys.stdout),
- None)
- self._test_list_resources(resources, cmd, True,
- cmd_resources=cmd_resources)
-
- def test_list_healthmonitors_pagination(self):
- # lbaas-healthmonitor-list with pagination.
- resources = 'healthmonitors'
- cmd_resources = 'lbaas_healthmonitors'
- cmd = healthmonitor.ListHealthMonitor(test_cli20.MyApp(sys.stdout),
- None)
- self._test_list_resources_with_pagination(resources, cmd,
- cmd_resources=cmd_resources)
-
- def test_list_healthmonitors_sort(self):
- # lbaas-healthmonitor-list --sort-key id --sort-key asc.
- resources = 'healthmonitors'
- cmd_resources = 'lbaas_healthmonitors'
- cmd = healthmonitor.ListHealthMonitor(test_cli20.MyApp(sys.stdout),
- None)
- self._test_list_resources(resources, cmd, True,
- cmd_resources=cmd_resources)
-
- def test_list_healthmonitors_limit(self):
- # lbaas-healthmonitor-list -P.
- resources = 'healthmonitors'
- cmd_resources = 'lbaas_healthmonitors'
- cmd = healthmonitor.ListHealthMonitor(test_cli20.MyApp(sys.stdout),
- None)
- self._test_list_resources(resources, cmd, page_size=1000,
- cmd_resources=cmd_resources)
-
- def test_show_healthmonitor_id(self):
- # lbaas-healthmonitor-show test_id.
- resource = 'healthmonitor'
- cmd_resource = 'lbaas_healthmonitor'
- cmd = healthmonitor.ShowHealthMonitor(test_cli20.MyApp(sys.stdout),
- None)
- args = ['--fields', 'id', self.test_id]
- self._test_show_resource(resource, cmd, self.test_id, args, ['id'],
- cmd_resource=cmd_resource)
-
- def test_show_healthmonitor_id_name(self):
- # lbaas-healthmonitor-show.
- resource = 'healthmonitor'
- cmd_resource = 'lbaas_healthmonitor'
- cmd = healthmonitor.ShowHealthMonitor(test_cli20.MyApp(sys.stdout),
- None)
- args = ['--fields', 'id', '--fields', 'name', self.test_id]
- self._test_show_resource(resource, cmd, self.test_id,
- args, ['id', 'name'],
- cmd_resource=cmd_resource)
-
- def _test_update_hm(self, args, expected_values):
- resource = 'healthmonitor'
- cmd_resource = 'lbaas_healthmonitor'
- my_id = 'myid'
- cmd = healthmonitor.UpdateHealthMonitor(test_cli20.MyApp(sys.stdout),
- None)
- args.insert(0, my_id)
- self._test_update_resource(resource, cmd, my_id,
- args,
- expected_values,
- cmd_resource=cmd_resource)
-
- def test_update_healthmonitor(self):
- # lbaas-healthmonitor-update myid --name newname.
- self._test_update_hm(['--name', 'newname'], {'name': 'newname', })
- # lbaas-healthmonitor-update myid --delay 10.
- self._test_update_hm(['--delay', '10'], {'delay': '10'})
- # lbaas-healthmonitor-update myid --timeout 5.
- self._test_update_hm(['--timeout', '5'], {'timeout': '5', })
- # lbaas-healthmonitor-update myid --delay 10.
- self._test_update_hm(['--http-method', 'OPTIONS'],
- {'http_method': 'OPTIONS'})
- # lbaas-healthmonitor-update myid --url-path /test/string .
- self._test_update_hm(['--url-path', '/test/string'],
- {'url_path': '/test/string', })
- # lbaas-healthmonitor-update myid --max-retries 5
- self._test_update_hm(['--max-retries', '5'], {'max_retries': '5'})
- # lbaas-healthmonitor-update myid --expected-codes 201
- self._test_update_hm(['--expected-codes', '201'],
- {'expected_codes': '201'})
- # lbaas-healthmonitor-update myid --admin-state-up False
- self._test_update_hm(['--admin-state-up', 'False'],
- {'admin_state_up': 'False'})
-
- def test_delete_healthmonitor(self):
- # lbaas-healthmonitor-delete my-id.
- resource = 'healthmonitor'
- cmd_resource = 'lbaas_healthmonitor'
- cmd = healthmonitor.DeleteHealthMonitor(test_cli20.MyApp(sys.stdout),
- None)
- my_id = 'my-id'
- args = [my_id]
- self._test_delete_resource(resource, cmd, my_id, args,
- cmd_resource=cmd_resource)
diff --git a/neutronclient/tests/unit/lb/v2/test_cli20_l7policy.py b/neutronclient/tests/unit/lb/v2/test_cli20_l7policy.py
deleted file mode 100644
index 7186931..0000000
--- a/neutronclient/tests/unit/lb/v2/test_cli20_l7policy.py
+++ /dev/null
@@ -1,260 +0,0 @@
-# Copyright 2016 Radware LTD.
-# All Rights Reserved
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-#
-
-import sys
-
-from neutronclient.common import exceptions
-from neutronclient.neutron.v2_0.lb.v2 import l7policy
-from neutronclient.tests.unit import test_cli20
-
-"""Structure for mapping cli and api arguments
-
-The structure maps cli arguments and a list of its
-api argument name, default cli value and default api value.
-It helps to make tests more general for different argument types.
-"""
-args_conf = {
- 'name': ['name', 'test_policy', 'test_policy'],
- 'description': ['description', 'test policy', 'test policy'],
- 'listener': ['listener_id', 'test_listener', 'test_listener'],
- 'admin-state-up': ['admin_state_up', True, True],
- 'admin-state-down': ['admin_state_up', None, False],
- 'action': ['action', 'REJECT', 'REJECT'],
- 'redirect-url': ['redirect_url', 'http://url', 'http://url'],
- 'redirect-pool': ['redirect_pool_id', 'test_pool', 'test_pool'],
- 'position': ['position', '1', 1]}
-
-
-class CLITestV20LbL7PolicyJSON(test_cli20.CLITestV20Base):
-
- def _get_test_args(self, *args, **kwargs):
- """Function for generically building testing arguments"""
- cli_args = []
- api_args = {}
- for arg in args:
- cli_args.append('--' + arg)
- if not args_conf[arg][1]:
- pass
- elif arg in kwargs:
- cli_args.append(str(kwargs[arg]))
- else:
- cli_args.append(args_conf[arg][1])
-
- if arg in kwargs:
- api_args[args_conf[arg][0]] = kwargs[arg]
- else:
- api_args[args_conf[arg][0]] = args_conf[arg][2]
-
- return cli_args, api_args
-
- def _test_create_policy(self, *args, **kwargs):
- resource = 'l7policy'
- cmd_resource = 'lbaas_l7policy'
- cmd = l7policy.CreateL7Policy(test_cli20.MyApp(sys.stdout), None)
- cli_args, api_args = self._get_test_args(*args, **kwargs)
- position_names = list(api_args.keys())
- position_values = list(api_args.values())
- self._test_create_resource(resource, cmd, None, 'test_id',
- cli_args, position_names, position_values,
- cmd_resource=cmd_resource)
-
- def _test_update_policy(self, *args, **kwargs):
- resource = 'l7policy'
- cmd_resource = 'lbaas_l7policy'
- cmd = l7policy.UpdateL7Policy(test_cli20.MyApp(sys.stdout), None)
- cli_args, api_args = self._get_test_args(*args, **kwargs)
- cli_args.append('test_id')
- self._test_update_resource(resource, cmd, 'test_id',
- cli_args, api_args,
- cmd_resource=cmd_resource)
-
- def test_create_policy_with_mandatory_params(self):
- # lbaas-l7policy-create with mandatory params only.
- self._test_create_policy('action', 'listener')
-
- def test_create_policy_with_all_params(self):
- # lbaas-l7policy-create REJECT policy.
- self._test_create_policy('name', 'description',
- 'action', 'listener',
- 'position')
-
- def test_create_disabled_policy(self):
- # lbaas-l7policy-create disabled REJECT policy.
- self._test_create_policy('action', 'listener', 'admin-state-down')
-
- def test_create_url_redirect_policy(self):
- # lbaas-l7policy-create REDIRECT_TO_URL policy.
- self._test_create_policy('name', 'description',
- 'action', 'listener',
- 'redirect-url',
- action='REDIRECT_TO_URL')
-
- def test_create_url_redirect_policy_no_url(self):
- # lbaas-l7policy-create REDIRECT_TO_URL policy without url argument.
- self.assertRaises(exceptions.CommandError,
- self._test_create_policy,
- 'name', 'description',
- 'action', 'listener',
- action='REDIRECT_TO_URL')
-
- def test_create_pool_redirect_policy(self):
- # lbaas-l7policy-create REDIRECT_TO_POOL policy.
- self._test_create_policy('name', 'description',
- 'action', 'listener',
- 'redirect-pool',
- action='REDIRECT_TO_POOL')
-
- def test_create_pool_redirect_policy_no_pool(self):
- # lbaas-l7policy-create REDIRECT_TO_POOL policy without pool argument.
- self.assertRaises(exceptions.CommandError,
- self._test_create_policy,
- 'name', 'description',
- 'action', 'listener',
- action='REDIRECT_TO_POOL')
-
- def test_create_reject_policy_with_url(self):
- # lbaas-l7policy-create REJECT policy while specifying url argument.
- self.assertRaises(exceptions.CommandError,
- self._test_create_policy,
- 'action', 'listener',
- 'redirect-url')
-
- def test_create_reject_policy_with_pool(self):
- # lbaas-l7policy-create REJECT policy while specifying pool argument.
- self.assertRaises(exceptions.CommandError,
- self._test_create_policy,
- 'action', 'listener',
- 'redirect-pool')
-
- def test_create_pool_redirect_policy_with_url(self):
- # lbaas-l7policy-create REDIRECT_TO_POOL policy with url argument.
- self.assertRaises(exceptions.CommandError,
- self._test_create_policy,
- 'action', 'listener',
- 'redirect-pool', 'redirect-url',
- action='REDIRECT_TO_POOL')
-
- def test_create_url_redirect_policy_with_pool(self):
- # lbaas-l7policy-create REDIRECT_TO_URL policy with pool argument.
- self.assertRaises(exceptions.CommandError,
- self._test_create_policy,
- 'action', 'listener',
- 'redirect-pool', 'redirect-url',
- action='REDIRECT_TO_URL')
-
- def test_list_policies(self):
- # lbaas-l7policy-list.
-
- resources = 'l7policies'
- cmd_resources = 'lbaas_l7policies'
- cmd = l7policy.ListL7Policy(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources(resources, cmd, True,
- cmd_resources=cmd_resources)
-
- def test_list_policies_pagination(self):
- # lbaas-l7policy-list with pagination.
-
- resources = 'l7policies'
- cmd_resources = 'lbaas_l7policies'
- cmd = l7policy.ListL7Policy(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources_with_pagination(
- resources, cmd, cmd_resources=cmd_resources)
-
- def test_list_policies_sort(self):
- # lbaas-l7policy-list --sort-key id --sort-key asc.
-
- resources = 'l7policies'
- cmd_resources = 'lbaas_l7policies'
- cmd = l7policy.ListL7Policy(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources(
- resources, cmd, True, cmd_resources=cmd_resources)
-
- def test_list_policies_limit(self):
- # lbaas-l7policy-list -P.
-
- resources = 'l7policies'
- cmd_resources = 'lbaas_l7policies'
- cmd = l7policy.ListL7Policy(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources(
- resources, cmd, page_size=1000, cmd_resources=cmd_resources)
-
- def test_show_policy_id(self):
- # lbaas-l7policy-show test_id.
-
- resource = 'l7policy'
- cmd_resource = 'lbaas_l7policy'
- cmd = l7policy.ShowL7Policy(test_cli20.MyApp(sys.stdout), None)
- args = ['--fields', 'test_id', self.test_id]
- self._test_show_resource(
- resource, cmd, self.test_id, args,
- ['test_id'], cmd_resource=cmd_resource)
-
- def test_show_policy_id_name(self):
- # lbaas-l7policy-show.
-
- resource = 'l7policy'
- cmd_resource = 'lbaas_l7policy'
- cmd = l7policy.ShowL7Policy(test_cli20.MyApp(sys.stdout), None)
- args = ['--fields', 'test_id', '--fields', 'name', self.test_id]
- self._test_show_resource(
- resource, cmd, self.test_id, args,
- ['test_id', 'name'], cmd_resource=cmd_resource)
-
- def test_disable_policy(self):
- # lbaas-l7policy-update test_id --admin-state-up False.
-
- self._test_update_policy('admin-state-up',
- **{'admin-state-up': 'False'})
-
- def test_update_policy_name_and_description(self):
- # lbaas-l7policy-update test_id --name other --description other_desc.
-
- self._test_update_policy('name', 'description',
- name='name',
- description='other desc')
-
- def test_update_pool_redirect_policy(self):
- # lbaas-l7policy-update test_id --action REDIRECT_TO_POOL
- # --redirect-pool id.
-
- self._test_update_policy('action', 'redirect-pool',
- **{'action': 'REDIRECT_TO_POOL',
- 'redirect-pool': 'id'})
-
- def test_update_url_redirect_policy(self):
- # lbaas-l7policy-update test_id --action REDIRECT_TO_URL
- # --redirect-url http://other_url.
-
- self._test_update_policy('action', 'redirect-url',
- **{'action': 'REDIRECT_TO_URL',
- 'redirect-url': 'http://other_url'})
-
- def test_update_policy_position(self):
- # lbaas-l7policy-update test_id --position 2.
-
- self._test_update_policy('position',
- position=2)
-
- def test_delete_policy(self):
- # lbaas-l7policy-delete test_id.
-
- resource = 'l7policy'
- cmd_resource = 'lbaas_l7policy'
- cmd = l7policy.DeleteL7Policy(test_cli20.MyApp(sys.stdout), None)
- test_id = 'test_id'
- args = [test_id]
- self._test_delete_resource(resource, cmd, test_id, args,
- cmd_resource=cmd_resource)
diff --git a/neutronclient/tests/unit/lb/v2/test_cli20_l7rule.py b/neutronclient/tests/unit/lb/v2/test_cli20_l7rule.py
deleted file mode 100644
index 5483054..0000000
--- a/neutronclient/tests/unit/lb/v2/test_cli20_l7rule.py
+++ /dev/null
@@ -1,210 +0,0 @@
-# Copyright 2016 Radware LTD.
-# All Rights Reserved
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-#
-
-import sys
-
-from neutronclient.neutron.v2_0.lb.v2 import l7rule
-from neutronclient.tests.unit import test_cli20
-
-
-"""Structure for mapping cli and api arguments
-
-The structure maps cli arguments and a list of its
-api argument name, default cli value and default api value.
-It helps to make tests more general for different argument types.
-"""
-args_conf = {
- 'admin-state-up': ['admin_state_up', True, True],
- 'admin-state-down': ['admin_state_up', None, False],
- 'type': ['type', 'HOST_NAME', 'HOST_NAME'],
- 'compare-type': ['compare_type', 'EQUAL_TO', 'EQUAL_TO'],
- 'invert-compare': ['invert', None, True],
- 'key': ['key', 'key', 'key'],
- 'value': ['value', 'value', 'value']}
-
-
-class CLITestV20LbL7RuleJSON(test_cli20.CLITestV20Base):
-
- def _get_test_args(self, *args, **kwargs):
- """Function for generically building testing arguments"""
- cli_args = []
- api_args = {}
- for arg in args:
- cli_args.append('--' + arg)
- if not args_conf[arg][1]:
- pass
- elif arg in kwargs:
- cli_args.append(str(kwargs[arg]))
- else:
- cli_args.append(args_conf[arg][1])
-
- if arg in kwargs:
- api_args[args_conf[arg][0]] = kwargs[arg]
- else:
- api_args[args_conf[arg][0]] = args_conf[arg][2]
-
- if 'invert' not in api_args:
- api_args['invert'] = False
- return cli_args, api_args
-
- def _test_create_rule(self, *args, **kwargs):
- resource = 'rule'
- cmd_resource = 'lbaas_l7rule'
- cmd = l7rule.CreateL7Rule(test_cli20.MyApp(sys.stdout), None)
- cli_args, api_args = self._get_test_args(*args, **kwargs)
- position_names = list(api_args.keys())
- position_values = list(api_args.values())
- cli_args.append('test_policy')
- self._test_create_resource(resource, cmd, None, 'test_id',
- cli_args, position_names, position_values,
- cmd_resource=cmd_resource,
- parent_id='test_policy')
-
- def _test_update_rule(self, *args, **kwargs):
- resource = 'rule'
- cmd_resource = 'lbaas_l7rule'
- cmd = l7rule.UpdateL7Rule(test_cli20.MyApp(sys.stdout), None)
- cli_args, api_args = self._get_test_args(*args, **kwargs)
- cli_args.append('test_id')
- cli_args.append('test_policy')
- self._test_update_resource(resource, cmd, 'test_id',
- cli_args, api_args,
- cmd_resource=cmd_resource,
- parent_id='test_policy')
-
- def test_create_rule_with_mandatory_params(self):
- # lbaas-l7rule-create with mandatory params only.
-
- self._test_create_rule('type', 'compare-type',
- 'value')
-
- def test_create_disabled_rule(self):
- # lbaas-l7rule-create disabled rule.
-
- self._test_create_rule('type', 'compare-type',
- 'value', 'admin-state-down')
-
- def test_create_rule_with_all_params(self):
- # lbaas-l7rule-create with all params set.
-
- self._test_create_rule('type', 'compare-type',
- 'invert-compare', 'key', 'value',
- type='HEADER', compare_type='CONTAINS',
- key='other_key', value='other_value')
-
- def test_create_rule_with_inverted_compare(self):
- # lbaas-l7rule-create with invertted compare type.
-
- self._test_create_rule('type', 'compare-type',
- 'invert-compare', 'value')
-
- def test_list_rules(self):
- # lbaas-l7rule-list.
-
- resources = 'rules'
- cmd_resources = 'lbaas_l7rules'
- cmd = l7rule.ListL7Rule(test_cli20.MyApp(sys.stdout), None)
-
- policy_id = 'policy_id'
- self._test_list_resources(resources, cmd, True,
- base_args=[policy_id],
- cmd_resources=cmd_resources,
- parent_id=policy_id,
- query="l7policy_id=%s" % policy_id)
-
- def test_list_rules_pagination(self):
- # lbaas-l7rule-list with pagination.
-
- resources = 'rules'
- cmd_resources = 'lbaas_l7rules'
- cmd = l7rule.ListL7Rule(test_cli20.MyApp(sys.stdout), None)
- policy_id = 'policy_id'
- self._test_list_resources_with_pagination(
- resources, cmd, base_args=[policy_id],
- cmd_resources=cmd_resources, parent_id=policy_id,
- query="l7policy_id=%s" % policy_id)
-
- def test_list_rules_sort(self):
- # lbaas-l7rule-list --sort-key id --sort-key asc.
-
- resources = 'rules'
- cmd_resources = 'lbaas_l7rules'
- cmd = l7rule.ListL7Rule(test_cli20.MyApp(sys.stdout), None)
- policy_id = 'policy_id'
- self._test_list_resources(
- resources, cmd, True, base_args=[policy_id],
- cmd_resources=cmd_resources, parent_id=policy_id,
- query="l7policy_id=%s" % policy_id)
-
- def test_list_rules_limit(self):
- # lbaas-l7rule-list -P.
-
- resources = 'rules'
- cmd_resources = 'lbaas_l7rules'
- cmd = l7rule.ListL7Rule(test_cli20.MyApp(sys.stdout), None)
- policy_id = 'policy_id'
- self._test_list_resources(resources, cmd, page_size=1000,
- base_args=[policy_id],
- cmd_resources=cmd_resources,
- parent_id=policy_id,
- query="l7policy_id=%s" % policy_id)
-
- def test_show_rule_id(self):
- # lbaas-l7rule-show test_id.
-
- resource = 'rule'
- cmd_resource = 'lbaas_l7rule'
- policy_id = 'policy_id'
- cmd = l7rule.ShowL7Rule(test_cli20.MyApp(sys.stdout), None)
- args = ['--fields', 'id', self.test_id, policy_id]
- self._test_show_resource(resource, cmd, self.test_id, args, ['id'],
- cmd_resource=cmd_resource,
- parent_id=policy_id)
-
- def test_update_rule_type(self):
- # lbaas-l7rule-update test_id --type HEADER test_policy
-
- self._test_update_rule('type', type='HEADER')
-
- def test_update_rule_compare_type(self):
- # lbaas-l7rule-update test_id --compare-type CONTAINS test_policy.
-
- self._test_update_rule('compare-type',
- **{'compare-type': 'CONTAINS'})
-
- def test_update_rule_inverted_compare_type(self):
- # lbaas-l7rule-update test_id --invert-compare test_policy.
-
- self._test_update_rule('invert-compare')
-
- def test_update_rule_key_value(self):
- # lbaas-l7rule-update test_id --key other --value other test_policy.
-
- self._test_update_rule('key', 'value',
- key='other', value='other')
-
- def test_delete_rule(self):
- # lbaas-l7rule-delete test_id policy_id.
-
- resource = 'rule'
- cmd_resource = 'lbaas_l7rule'
- policy_id = 'policy_id'
- test_id = 'test_id'
- cmd = l7rule.DeleteL7Rule(test_cli20.MyApp(sys.stdout), None)
- args = [test_id, policy_id]
- self._test_delete_resource(resource, cmd, test_id, args,
- cmd_resource=cmd_resource,
- parent_id=policy_id)
diff --git a/neutronclient/tests/unit/lb/v2/test_cli20_listener.py b/neutronclient/tests/unit/lb/v2/test_cli20_listener.py
deleted file mode 100644
index 3993ea7..0000000
--- a/neutronclient/tests/unit/lb/v2/test_cli20_listener.py
+++ /dev/null
@@ -1,194 +0,0 @@
-# Copyright 2014 Blue Box Group, Inc.
-# All Rights Reserved
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-#
-
-import sys
-
-from neutronclient.common import exceptions
-from neutronclient.neutron.v2_0.lb.v2 import listener
-from neutronclient.tests.unit import test_cli20
-
-
-class CLITestV20LbListenerJSON(test_cli20.CLITestV20Base):
-
- def test_create_listener_with_loadbalancer(self):
- # lbaas-listener-create with --loadbalancer
- resource = 'listener'
- cmd_resource = 'lbaas_listener'
- cmd = listener.CreateListener(test_cli20.MyApp(sys.stdout), None)
- my_id = 'my-id'
- loadbalancer_id = 'loadbalancer'
- protocol = 'TCP'
- protocol_port = '80'
- args = ['--protocol', protocol, '--protocol-port', protocol_port,
- '--loadbalancer', loadbalancer_id]
- position_names = ['protocol', 'protocol_port', 'loadbalancer_id']
- position_values = [protocol, protocol_port, loadbalancer_id,
- True]
- self._test_create_resource(resource, cmd, '', my_id, args,
- position_names, position_values,
- cmd_resource=cmd_resource)
-
- def test_create_listener_with_default_pool(self):
- # lbaas-listener-create with --default-pool and no --loadbalancer.
- resource = 'listener'
- cmd_resource = 'lbaas_listener'
- cmd = listener.CreateListener(test_cli20.MyApp(sys.stdout), None)
- my_id = 'my-id'
- default_pool_id = 'default-pool'
- protocol = 'TCP'
- protocol_port = '80'
- args = ['--protocol', protocol, '--protocol-port', protocol_port,
- '--default-pool', default_pool_id]
- position_names = ['protocol', 'protocol_port', 'default_pool_id']
- position_values = [protocol, protocol_port, default_pool_id,
- True]
- self._test_create_resource(resource, cmd, '', my_id, args,
- position_names, position_values,
- cmd_resource=cmd_resource)
-
- def test_create_listener_with_no_loadbalancer_or_default_pool(self):
- # lbaas-listener-create without --default-pool or --loadbalancer.
- resource = 'listener'
- cmd_resource = 'lbaas_listener'
- cmd = listener.CreateListener(test_cli20.MyApp(sys.stdout), None)
- my_id = 'my-id'
- protocol = 'TCP'
- protocol_port = '80'
- args = ['--protocol', protocol, '--protocol-port', protocol_port]
- position_names = ['protocol', 'protocol_port']
- position_values = [protocol, protocol_port, True]
- self._test_create_resource(resource, cmd, '', my_id, args,
- position_names, position_values,
- cmd_resource=cmd_resource,
- no_api_call=True,
- expected_exception=exceptions.CommandError)
-
- def test_create_listener_with_all_params(self):
- # lbaas-listener-create with all params set.
- resource = 'listener'
- cmd_resource = 'lbaas_listener'
- cmd = listener.CreateListener(test_cli20.MyApp(sys.stdout), None)
- my_id = 'my-id'
- loadbalancer = 'loadbalancer'
- default_pool_id = 'default-pool'
- protocol = 'TCP'
- protocol_port = '80'
- connection_limit = 10
- def_tls_cont_ref = '11111'
- args = ['--admin-state-down',
- '--protocol', protocol, '--protocol-port', protocol_port,
- '--loadbalancer', loadbalancer,
- '--default-pool', default_pool_id,
- '--default-tls-container-ref', def_tls_cont_ref,
- '--sni-container-refs', '1111', '2222', '3333',
- '--connection-limit', '10']
- position_names = ['admin_state_up',
- 'protocol', 'protocol_port', 'loadbalancer_id',
- 'default_pool_id',
- 'default_tls_container_ref', 'sni_container_refs',
- 'connection_limit']
- position_values = [False, protocol, protocol_port, loadbalancer,
- default_pool_id,
- def_tls_cont_ref, ['1111', '2222', '3333'],
- connection_limit]
- self._test_create_resource(resource, cmd, '', my_id, args,
- position_names, position_values,
- cmd_resource=cmd_resource)
-
- def test_list_listeners(self):
- # lbaas-listener-list.
- resources = 'listeners'
- cmd_resources = 'lbaas_listeners'
- cmd = listener.ListListener(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources(resources, cmd, True,
- cmd_resources=cmd_resources)
-
- def test_list_listeners_pagination(self):
- # lbaas-listener-list with pagination.
- resources = 'listeners'
- cmd_resources = 'lbaas_listeners'
- cmd = listener.ListListener(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources_with_pagination(resources, cmd,
- cmd_resources=cmd_resources)
-
- def test_list_listeners_sort(self):
- # lbaas-listener-list --sort-key id --sort-key asc.
- resources = 'listeners'
- cmd_resources = 'lbaas_listeners'
- cmd = listener.ListListener(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources(resources, cmd, True,
- cmd_resources=cmd_resources)
-
- def test_list_listeners_limit(self):
- # lbaas-listener-list -P.
- resources = 'listeners'
- cmd_resources = 'lbaas_listeners'
- cmd = listener.ListListener(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources(resources, cmd, page_size=1000,
- cmd_resources=cmd_resources)
-
- def test_show_listener_id(self):
- # lbaas-listener-show test_id.
- resource = 'listener'
- cmd_resource = 'lbaas_listener'
- cmd = listener.ShowListener(test_cli20.MyApp(sys.stdout), None)
- args = ['--fields', 'id', self.test_id]
- self._test_show_resource(resource, cmd, self.test_id, args, ['id'],
- cmd_resource=cmd_resource)
-
- def test_show_listener_id_name(self):
- # lbaas-listener-show.
- resource = 'listener'
- cmd_resource = 'lbaas_listener'
- cmd = listener.ShowListener(test_cli20.MyApp(sys.stdout), None)
- args = ['--fields', 'id', '--fields', 'name', self.test_id]
- self._test_show_resource(resource, cmd, self.test_id,
- args, ['id', 'name'],
- cmd_resource=cmd_resource)
-
- def _test_update_listener(self, args, expected_values):
- resource = 'listener'
- cmd_resource = 'lbaas_listener'
- my_id = 'myid'
- args.insert(0, my_id)
- cmd = listener.UpdateListener(test_cli20.MyApp(sys.stdout), None)
- self._test_update_resource(resource, cmd, my_id,
- args, expected_values,
- cmd_resource=cmd_resource)
-
- def test_update_listener(self):
- # lbaas-listener-update myid --name newname.
- self._test_update_listener(['--name', 'newname'],
- {'name': 'newname', })
- # lbaas-listener-update myid --description check.
- self._test_update_listener(['--description', 'check'],
- {'description': 'check', })
- # lbaas-listener-update myid --connection-limit -1
- self._test_update_listener(['--connection-limit', '-1'],
- {'connection_limit': -1, })
- # lbaas-listener-update myid --admin-state-up False.
- self._test_update_listener(['--admin-state-up', 'False'],
- {'admin_state_up': 'False', })
-
- def test_delete_listener(self):
- # lbaas-listener-delete my-id.
- resource = 'listener'
- cmd_resource = 'lbaas_listener'
- cmd = listener.DeleteListener(test_cli20.MyApp(sys.stdout), None)
- my_id = 'my-id'
- args = [my_id]
- self._test_delete_resource(resource, cmd, my_id, args,
- cmd_resource=cmd_resource)
diff --git a/neutronclient/tests/unit/lb/v2/test_cli20_loadbalancer.py b/neutronclient/tests/unit/lb/v2/test_cli20_loadbalancer.py
deleted file mode 100644
index 3a6010c..0000000
--- a/neutronclient/tests/unit/lb/v2/test_cli20_loadbalancer.py
+++ /dev/null
@@ -1,213 +0,0 @@
-# Copyright 2014 Blue Box Group, Inc.
-# All Rights Reserved
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-#
-
-import sys
-from unittest import mock
-
-
-from neutronclient.neutron.v2_0.lb.v2 import loadbalancer as lb
-from neutronclient.tests.unit import test_cli20
-
-
-class CLITestV20LbLoadBalancerJSON(test_cli20.CLITestV20Base):
-
- def test_create_loadbalancer_with_mandatory_params(self):
- # lbaas-loadbalancer-create with mandatory params only.
- resource = 'loadbalancer'
- cmd_resource = 'lbaas_loadbalancer'
- cmd = lb.CreateLoadBalancer(test_cli20.MyApp(sys.stdout), None)
- name = 'lbaas-loadbalancer-name'
- vip_subnet_id = 'vip-subnet'
- my_id = 'my-id'
- args = [vip_subnet_id]
- position_names = ['vip_subnet_id']
- position_values = [vip_subnet_id]
- self._test_create_resource(resource, cmd, name, my_id, args,
- position_names, position_values,
- cmd_resource=cmd_resource)
-
- def test_create_loadbalancer_with_all_params(self):
- # lbaas-loadbalancer-create with all params set.
- resource = 'loadbalancer'
- cmd_resource = 'lbaas_loadbalancer'
- cmd = lb.CreateLoadBalancer(test_cli20.MyApp(sys.stdout), None)
- name = 'lbaas-loadbalancer-name'
- description = 'lbaas-loadbalancer-desc'
- flavor_id = 'lbaas-loadbalancer-flavor'
- vip_subnet_id = 'vip-subnet'
- my_id = 'my-id'
- args = ['--admin-state-down', '--description', description,
- '--name', name, '--flavor', flavor_id, vip_subnet_id]
- position_names = ['admin_state_up', 'description', 'name',
- 'flavor_id', 'vip_subnet_id']
- position_values = [False, description, name, flavor_id, vip_subnet_id]
- self._test_create_resource(resource, cmd, name, my_id, args,
- position_names, position_values,
- cmd_resource=cmd_resource)
-
- def test_list_loadbalancers(self):
- # lbaas-loadbalancer-list.
- resources = 'loadbalancers'
- cmd_resources = 'lbaas_loadbalancers'
- cmd = lb.ListLoadBalancer(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources(resources, cmd, True,
- cmd_resources=cmd_resources)
-
- def test_list_loadbalancers_pagination(self):
- # lbaas-loadbalancer-list with pagination.
- resources = 'loadbalancers'
- cmd_resources = 'lbaas_loadbalancers'
- cmd = lb.ListLoadBalancer(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources_with_pagination(resources, cmd,
- cmd_resources=cmd_resources)
-
- def test_list_loadbalancers_sort(self):
- # lbaas-loadbalancer-list --sort-key name --sort-key id --sort-key asc
- # --sort-key desc
- resources = 'loadbalancers'
- cmd_resources = 'lbaas_loadbalancers'
- cmd = lb.ListLoadBalancer(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources(resources, cmd,
- sort_key=["name", "id"],
- sort_dir=["asc", "desc"],
- cmd_resources=cmd_resources)
-
- def test_list_loadbalancers_limit(self):
- # lbaas-loadbalancer-list -P.
- resources = 'loadbalancers'
- cmd_resources = 'lbaas_loadbalancers'
- cmd = lb.ListLoadBalancer(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources(resources, cmd, page_size=1000,
- cmd_resources=cmd_resources)
-
- def test_show_loadbalancer_id(self):
- # lbaas-loadbalancer-loadbalancer-show test_id.
- resource = 'loadbalancer'
- cmd_resource = 'lbaas_loadbalancer'
- cmd = lb.ShowLoadBalancer(test_cli20.MyApp(sys.stdout), None)
- args = ['--fields', 'id', self.test_id]
- self._test_show_resource(resource, cmd, self.test_id, args, ['id'],
- cmd_resource=cmd_resource)
-
- def test_show_loadbalancer_id_name(self):
- # lbaas-loadbalancer-loadbalancer-show.
- resource = 'loadbalancer'
- cmd_resource = 'lbaas_loadbalancer'
- cmd = lb.ShowLoadBalancer(test_cli20.MyApp(sys.stdout), None)
- args = ['--fields', 'id', '--fields', 'name', self.test_id]
- self._test_show_resource(resource, cmd, self.test_id,
- args, ['id', 'name'],
- cmd_resource=cmd_resource)
-
- def _test_update_lb(self, args, expected_values):
- resource = 'loadbalancer'
- cmd_resource = 'lbaas_loadbalancer'
- my_id = 'myid'
- args.insert(0, my_id)
- cmd = lb.UpdateLoadBalancer(test_cli20.MyApp(sys.stdout), None)
- self._test_update_resource(resource, cmd, my_id,
- args, expected_values,
- cmd_resource=cmd_resource)
-
- def test_update_loadbalancer(self):
- # lbaas-loadbalancer-update myid --name newname.
- self._test_update_lb(['--name', 'newname'], {'name': 'newname', })
- # lbaas-loadbalancer-update myid --description check.
- self._test_update_lb(['--description', 'check'],
- {'description': 'check', })
- # lbaas-loadbalancer-update myid --admin-state-up False.
- self._test_update_lb(['--admin-state-up', 'False'],
- {'admin_state_up': 'False', })
-
- def test_delete_loadbalancer(self):
- # lbaas-loadbalancer-loadbalancer-delete my-id.
- resource = 'loadbalancer'
- cmd_resource = 'lbaas_loadbalancer'
- cmd = lb.DeleteLoadBalancer(test_cli20.MyApp(sys.stdout), None)
- my_id = 'my-id'
- args = [my_id]
- self._test_delete_resource(resource, cmd, my_id, args,
- cmd_resource=cmd_resource)
-
- def test_retrieve_loadbalancer_stats(self):
- # lbaas-loadbalancer-stats test_id.
- resource = 'loadbalancer'
- cmd = lb.RetrieveLoadBalancerStats(test_cli20.MyApp(sys.stdout), None)
- my_id = self.test_id
- fields = ['bytes_in', 'bytes_out']
- args = ['--fields', 'bytes_in', '--fields', 'bytes_out', my_id]
-
- query = "&".join(["fields=%s" % field for field in fields])
- expected_res = {'stats': {'bytes_in': '1234', 'bytes_out': '4321'}}
- resstr = self.client.serialize(expected_res)
- path = getattr(self.client, "lbaas_loadbalancer_path_stats")
- return_tup = (test_cli20.MyResp(200), resstr)
-
- cmd_parser = cmd.get_parser("test_" + resource)
- parsed_args = cmd_parser.parse_args(args)
- with mock.patch.object(cmd, "get_client",
- return_value=self.client) as mock_get_client, \
- mock.patch.object(self.client.httpclient, "request",
- return_value=return_tup) as mock_request:
- cmd.run(parsed_args)
-
- self.assert_mock_multiple_calls_with_same_arguments(
- mock_get_client, mock.call(), 2)
- mock_request.assert_called_once_with(
- test_cli20.end_url(path % my_id, query), 'GET',
- body=None,
- headers=test_cli20.ContainsKeyValue(
- {'X-Auth-Token': test_cli20.TOKEN}))
- _str = self.fake_stdout.make_string()
- self.assertIn('bytes_in', _str)
- self.assertIn('1234', _str)
- self.assertIn('bytes_out', _str)
- self.assertIn('4321', _str)
-
- def test_get_loadbalancer_statuses(self):
- # lbaas-loadbalancer-status test_id.
- resource = 'loadbalancer'
- cmd = lb.RetrieveLoadBalancerStatus(test_cli20.MyApp(sys.stdout), None)
- my_id = self.test_id
- args = [my_id]
-
- expected_res = {'statuses': {'operating_status': 'ONLINE',
- 'provisioning_status': 'ACTIVE'}}
-
- resstr = self.client.serialize(expected_res)
-
- path = getattr(self.client, "lbaas_loadbalancer_path_status")
- return_tup = (test_cli20.MyResp(200), resstr)
-
- cmd_parser = cmd.get_parser("test_" + resource)
- parsed_args = cmd_parser.parse_args(args)
- with mock.patch.object(cmd, "get_client",
- return_value=self.client) as mock_get_client, \
- mock.patch.object(self.client.httpclient, "request",
- return_value=return_tup) as mock_request:
- cmd.run(parsed_args)
-
- mock_get_client.assert_called_once_with()
- mock_request.assert_called_once_with(
- test_cli20.end_url(path % my_id), 'GET',
- body=None,
- headers=test_cli20.ContainsKeyValue(
- {'X-Auth-Token': test_cli20.TOKEN}))
- _str = self.fake_stdout.make_string()
- self.assertIn('operating_status', _str)
- self.assertIn('ONLINE', _str)
- self.assertIn('provisioning_status', _str)
- self.assertIn('ACTIVE', _str)
diff --git a/neutronclient/tests/unit/lb/v2/test_cli20_member.py b/neutronclient/tests/unit/lb/v2/test_cli20_member.py
deleted file mode 100644
index 057da42..0000000
--- a/neutronclient/tests/unit/lb/v2/test_cli20_member.py
+++ /dev/null
@@ -1,171 +0,0 @@
-# Copyright 2014 Blue Box Group, Inc.
-# All Rights Reserved
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-#
-
-import sys
-
-from neutronclient.neutron.v2_0.lb.v2 import member
-from neutronclient.tests.unit import test_cli20
-
-
-class CLITestV20LbMemberJSON(test_cli20.CLITestV20Base):
-
- def test_create_member_with_mandatory_params(self):
- # lbaas-member-create with mandatory params only.
- resource = 'member'
- cmd_resource = 'lbaas_member'
- cmd = member.CreateMember(test_cli20.MyApp(sys.stdout), None)
- my_id = 'my-id'
- address = '10.1.1.1'
- protocol_port = '80'
- pool_id = 'pool-id'
- subnet_id = 'subnet-id'
- args = ['--address', address, '--protocol-port', protocol_port,
- '--subnet', subnet_id, pool_id]
- position_names = ['admin_state_up', 'address',
- 'protocol_port', 'subnet_id']
- position_values = [True, address, protocol_port, subnet_id]
- self._test_create_resource(resource, cmd, '', my_id, args,
- position_names, position_values,
- cmd_resource=cmd_resource,
- parent_id=pool_id)
-
- def test_create_member_with_all_params(self):
- # lbaas-member-create with all params set.
- resource = 'member'
- cmd_resource = 'lbaas_member'
- cmd = member.CreateMember(test_cli20.MyApp(sys.stdout), None)
- my_id = 'my-id'
- address = '10.1.1.1'
- protocol_port = '80'
- pool_id = 'pool-id'
- subnet_id = 'subnet-id'
- weight = '100'
- name = 'member1'
- args = ['--address', address, '--protocol-port', protocol_port,
- '--subnet', subnet_id, pool_id, '--weight', weight,
- '--admin-state-down', '--name', name]
- position_names = ['admin_state_up', 'address', 'protocol_port',
- 'subnet_id', 'weight', 'name']
- position_values = [False, address, protocol_port,
- subnet_id, weight, name]
- self._test_create_resource(resource, cmd, name, my_id, args,
- position_names, position_values,
- cmd_resource=cmd_resource,
- parent_id=pool_id)
-
- def test_list_members(self):
- # lbaas-member-list.
- resources = 'members'
- cmd_resources = 'lbaas_members'
- pool_id = 'pool-id'
- cmd = member.ListMember(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources(resources, cmd, True, base_args=[pool_id],
- cmd_resources=cmd_resources,
- parent_id=pool_id,
- query="pool_id=%s" % pool_id)
-
- def test_list_members_pagination(self):
- # lbaas-member-list with pagination.
- resources = 'members'
- cmd_resources = 'lbaas_members'
- pool_id = 'pool-id'
- cmd = member.ListMember(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources_with_pagination(resources, cmd,
- base_args=[pool_id],
- cmd_resources=cmd_resources,
- parent_id=pool_id,
- query="pool_id=%s" % pool_id)
-
- def test_list_members_sort(self):
- # lbaas-member-list --sort-key id --sort-key asc.
- resources = 'members'
- cmd_resources = 'lbaas_members'
- pool_id = 'pool-id'
- cmd = member.ListMember(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources(resources, cmd, True, base_args=[pool_id],
- cmd_resources=cmd_resources,
- parent_id=pool_id,
- query="pool_id=%s" % pool_id)
-
- def test_list_members_limit(self):
- # lbaas-member-list -P.
- resources = 'members'
- cmd_resources = 'lbaas_members'
- pool_id = 'pool-id'
- cmd = member.ListMember(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources(resources, cmd, page_size=1000,
- base_args=[pool_id],
- cmd_resources=cmd_resources,
- parent_id=pool_id,
- query="pool_id=%s" % pool_id)
-
- def test_show_member_id(self):
- # lbaas-member-show test_id.
- resource = 'member'
- cmd_resource = 'lbaas_member'
- pool_id = 'pool-id'
- cmd = member.ShowMember(test_cli20.MyApp(sys.stdout), None)
- args = ['--fields', 'id', self.test_id, pool_id]
- self._test_show_resource(resource, cmd, self.test_id, args, ['id'],
- cmd_resource=cmd_resource, parent_id=pool_id)
-
- def test_show_member_id_name(self):
- # lbaas-member-show.
- resource = 'member'
- cmd_resource = 'lbaas_member'
- pool_id = 'pool-id'
- cmd = member.ShowMember(test_cli20.MyApp(sys.stdout), None)
- args = ['--fields', 'id', '--fields', 'name', self.test_id, pool_id]
- self._test_show_resource(resource, cmd, self.test_id,
- args, ['id', 'name'],
- cmd_resource=cmd_resource, parent_id=pool_id)
-
- def test_update_member(self):
- # lbaas-member-update myid --name newname.
- resource = 'member'
- cmd_resource = 'lbaas_member'
- my_id = 'my-id'
- pool_id = 'pool-id'
- args = [my_id, pool_id, '--name', 'newname']
- cmd = member.UpdateMember(test_cli20.MyApp(sys.stdout), None)
- self._test_update_resource(resource, cmd, my_id, args,
- {'name': 'newname', },
- cmd_resource=cmd_resource,
- parent_id=pool_id)
- # lbaas-member-update myid --weight 100.
- args = [my_id, pool_id, '--weight', '100']
- self._test_update_resource(resource, cmd, my_id, args,
- {'weight': '100', },
- cmd_resource=cmd_resource,
- parent_id=pool_id)
- # lbaas-member-update myid --admin-state-up False
- args = [my_id, pool_id, '--admin-state-up', 'False']
- self._test_update_resource(resource, cmd, my_id, args,
- {'admin_state_up': 'False', },
- cmd_resource=cmd_resource,
- parent_id=pool_id)
-
- def test_delete_member(self):
- # lbaas-member-delete my-id.
- resource = 'member'
- cmd_resource = 'lbaas_member'
- cmd = member.DeleteMember(test_cli20.MyApp(sys.stdout), None)
- my_id = 'my-id'
- pool_id = 'pool-id'
- args = [my_id, pool_id]
- self._test_delete_resource(resource, cmd, my_id, args,
- cmd_resource=cmd_resource,
- parent_id=pool_id)
diff --git a/neutronclient/tests/unit/lb/v2/test_cli20_pool.py b/neutronclient/tests/unit/lb/v2/test_cli20_pool.py
deleted file mode 100644
index 8c1f428..0000000
--- a/neutronclient/tests/unit/lb/v2/test_cli20_pool.py
+++ /dev/null
@@ -1,202 +0,0 @@
-# Copyright 2014 Blue Box Group, Inc.
-# All Rights Reserved
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-#
-
-import sys
-
-from neutronclient.common import exceptions
-from neutronclient.neutron.v2_0.lb.v2 import pool
-from neutronclient.tests.unit import test_cli20
-
-
-class CLITestV20LbPoolJSON(test_cli20.CLITestV20Base):
-
- def test_create_pool_with_listener(self):
- # lbaas-pool-create with listener
- resource = 'pool'
- cmd_resource = 'lbaas_pool'
- cmd = pool.CreatePool(test_cli20.MyApp(sys.stdout), None)
- my_id = 'my-id'
- lb_algorithm = 'ROUND_ROBIN'
- listener = 'listener'
- protocol = 'TCP'
- args = ['--lb-algorithm', lb_algorithm, '--protocol', protocol,
- '--listener', listener]
- position_names = ['admin_state_up', 'lb_algorithm', 'protocol',
- 'listener_id']
- position_values = [True, lb_algorithm, protocol, listener]
- self._test_create_resource(resource, cmd, '', my_id, args,
- position_names, position_values,
- cmd_resource=cmd_resource)
-
- def test_create_pool_with_loadbalancer_no_listener(self):
- """lbaas-pool-create with loadbalancer, no listener."""
- resource = 'pool'
- cmd_resource = 'lbaas_pool'
- cmd = pool.CreatePool(test_cli20.MyApp(sys.stdout), None)
- my_id = 'my-id'
- lb_algorithm = 'ROUND_ROBIN'
- loadbalancer = 'loadbalancer'
- protocol = 'TCP'
- args = ['--lb-algorithm', lb_algorithm, '--protocol', protocol,
- '--loadbalancer', loadbalancer]
- position_names = ['admin_state_up', 'lb_algorithm', 'protocol',
- 'loadbalancer_id']
- position_values = [True, lb_algorithm, protocol, loadbalancer]
- self._test_create_resource(resource, cmd, '', my_id, args,
- position_names, position_values,
- cmd_resource=cmd_resource)
-
- def test_create_pool_with_no_listener_or_loadbalancer(self):
- """lbaas-pool-create with no listener or loadbalancer."""
- resource = 'pool'
- cmd_resource = 'lbaas_pool'
- cmd = pool.CreatePool(test_cli20.MyApp(sys.stdout), None)
- my_id = 'my-id'
- lb_algorithm = 'ROUND_ROBIN'
- protocol = 'TCP'
- args = ['--lb-algorithm', lb_algorithm, '--protocol', protocol]
- position_names = ['admin_state_up', 'lb_algorithm', 'protocol']
- position_values = [True, lb_algorithm, protocol]
- self._test_create_resource(resource, cmd, '', my_id, args,
- position_names, position_values,
- cmd_resource=cmd_resource,
- no_api_call=True,
- expected_exception=exceptions.CommandError)
-
- def test_create_pool_with_all_params(self):
- # lbaas-pool-create with all params set.
- resource = 'pool'
- cmd_resource = 'lbaas_pool'
- cmd = pool.CreatePool(test_cli20.MyApp(sys.stdout), None)
- my_id = 'my-id'
- lb_algorithm = 'ROUND_ROBIN'
- listener = 'listener'
- loadbalancer = 'loadbalancer'
- protocol = 'TCP'
- description = 'description'
- session_persistence_str = 'type=APP_COOKIE,cookie_name=1234'
- session_persistence = {'type': 'APP_COOKIE',
- 'cookie_name': '1234'}
- name = 'my-pool'
- args = ['--lb-algorithm', lb_algorithm, '--protocol', protocol,
- '--description', description, '--session-persistence',
- session_persistence_str, '--admin-state-down', '--name', name,
- '--listener', listener, '--loadbalancer', loadbalancer]
- position_names = ['lb_algorithm', 'protocol', 'description',
- 'session_persistence', 'admin_state_up', 'name',
- 'listener_id', 'loadbalancer_id']
- position_values = [lb_algorithm, protocol, description,
- session_persistence, False, name, listener,
- loadbalancer]
- self._test_create_resource(resource, cmd, '', my_id, args,
- position_names, position_values,
- cmd_resource=cmd_resource)
-
- def test_list_pools(self):
- # lbaas-pool-list.
- resources = 'pools'
- cmd_resources = 'lbaas_pools'
- cmd = pool.ListPool(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources(resources, cmd, True,
- cmd_resources=cmd_resources)
-
- def test_list_pools_pagination(self):
- # lbaas-pool-list with pagination.
- resources = 'pools'
- cmd_resources = 'lbaas_pools'
- cmd = pool.ListPool(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources_with_pagination(resources, cmd,
- cmd_resources=cmd_resources)
-
- def test_list_pools_sort(self):
- # lbaas-pool-list --sort-key id --sort-key asc.
- resources = 'pools'
- cmd_resources = 'lbaas_pools'
- cmd = pool.ListPool(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources(resources, cmd, True,
- cmd_resources=cmd_resources)
-
- def test_list_pools_limit(self):
- # lbaas-pool-list -P.
- resources = 'pools'
- cmd_resources = 'lbaas_pools'
- cmd = pool.ListPool(test_cli20.MyApp(sys.stdout), None)
- self._test_list_resources(resources, cmd, page_size=1000,
- cmd_resources=cmd_resources)
-
- def test_show_pool_id(self):
- # lbaas-pool-show test_id.
- resource = 'pool'
- cmd_resource = 'lbaas_pool'
- cmd = pool.ShowPool(test_cli20.MyApp(sys.stdout), None)
- args = ['--fields', 'id', self.test_id]
- self._test_show_resource(resource, cmd, self.test_id, args, ['id'],
- cmd_resource=cmd_resource)
-
- def test_show_pool_id_name(self):
- # lbaas-pool-show.
- resource = 'pool'
- cmd_resource = 'lbaas_pool'
- cmd = pool.ShowPool(test_cli20.MyApp(sys.stdout), None)
- args = ['--fields', 'id', '--fields', 'name', self.test_id]
- self._test_show_resource(resource, cmd, self.test_id,
- args, ['id', 'name'],
- cmd_resource=cmd_resource)
-
- def test_update_pool(self):
- # lbaas-pool-update myid --name newname --description SuperPool
- # --lb-algorithm SOURCE_IP --admin-state-up
- # --session-persistence type=dict,type=HTTP_COOKIE,cookie_name=pie
-
- resource = 'pool'
- cmd_resource = 'lbaas_pool'
- cmd = pool.UpdatePool(test_cli20.MyApp(sys.stdout), None)
- args = ['myid', '--name', 'newname',
- '--description', 'SuperPool', '--lb-algorithm', "SOURCE_IP",
- '--admin-state-up', 'True',
- '--session-persistence', 'type=dict,'
- 'type=HTTP_COOKIE,cookie_name=pie']
- body = {'name': 'newname',
- "description": "SuperPool",
- "lb_algorithm": "SOURCE_IP",
- "admin_state_up": 'True',
- 'session_persistence': {
- 'type': 'HTTP_COOKIE',
- 'cookie_name': 'pie',
- }, }
- self._test_update_resource(resource, cmd, 'myid', args, body,
- cmd_resource=cmd_resource)
- # lbaas-pool-update myid --name Name
- # --no-session-persistence
-
- resource = 'pool'
- cmd_resource = 'lbaas_pool'
- cmd = pool.UpdatePool(test_cli20.MyApp(sys.stdout), None)
- args = ['myid', '--name', 'Name', '--no-session-persistence']
- body = {'name': "Name",
- "session_persistence": None, }
- self._test_update_resource(resource, cmd, 'myid', args, body,
- cmd_resource=cmd_resource)
-
- def test_delete_pool(self):
- # lbaas-pool-delete my-id.
- resource = 'pool'
- cmd_resource = 'lbaas_pool'
- cmd = pool.DeletePool(test_cli20.MyApp(sys.stdout), None)
- my_id = 'my-id'
- args = [my_id]
- self._test_delete_resource(resource, cmd, my_id, args,
- cmd_resource=cmd_resource)