diff options
| author | Zuul <zuul@review.openstack.org> | 2018-01-11 21:03:18 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2018-01-11 21:03:18 +0000 |
| commit | 8abf6bf5ba389a0ebbd202d69d0dbf8b64bb30d6 (patch) | |
| tree | cf1de6ec8e717e30658c5ee3449c5170e3102d12 /openstackclient/tests | |
| parent | cc47c075a067e3f4f3bb80dd933cdd4d483b8105 (diff) | |
| parent | cf91d7a2f46b4a8546169a4836cc64476fce44d8 (diff) | |
| download | python-openstackclient-8abf6bf5ba389a0ebbd202d69d0dbf8b64bb30d6.tar.gz | |
Merge "Add floating IP qos_policy actions"
Diffstat (limited to 'openstackclient/tests')
| -rw-r--r-- | openstackclient/tests/unit/network/v2/fakes.py | 1 | ||||
| -rw-r--r-- | openstackclient/tests/unit/network/v2/test_floating_ip_network.py | 129 |
2 files changed, 130 insertions, 0 deletions
diff --git a/openstackclient/tests/unit/network/v2/fakes.py b/openstackclient/tests/unit/network/v2/fakes.py index bdc1c1fb..a77cab8b 100644 --- a/openstackclient/tests/unit/network/v2/fakes.py +++ b/openstackclient/tests/unit/network/v2/fakes.py @@ -1378,6 +1378,7 @@ class FakeFloatingIP(object): 'port_id': 'port-id-' + uuid.uuid4().hex, 'tenant_id': 'project-id-' + uuid.uuid4().hex, 'description': 'floating-ip-description-' + uuid.uuid4().hex, + 'qos_policy_id': 'qos-policy-id-' + uuid.uuid4().hex, } # Overwrite default attributes. diff --git a/openstackclient/tests/unit/network/v2/test_floating_ip_network.py b/openstackclient/tests/unit/network/v2/test_floating_ip_network.py index 4fbbc822..86f64ccd 100644 --- a/openstackclient/tests/unit/network/v2/test_floating_ip_network.py +++ b/openstackclient/tests/unit/network/v2/test_floating_ip_network.py @@ -62,6 +62,7 @@ class TestCreateFloatingIPNetwork(TestFloatingIPNetwork): 'id', 'port_id', 'project_id', + 'qos_policy_id', 'router_id', 'status', ) @@ -76,6 +77,7 @@ class TestCreateFloatingIPNetwork(TestFloatingIPNetwork): floating_ip.id, floating_ip.port_id, floating_ip.project_id, + floating_ip.qos_policy_id, floating_ip.router_id, floating_ip.status, ) @@ -197,6 +199,28 @@ class TestCreateFloatingIPNetwork(TestFloatingIPNetwork): self.assertEqual(self.columns, columns) self.assertEqual(self.data, data) + def test_create_floating_ip_with_qos(self): + qos_policy = network_fakes.FakeNetworkQosPolicy.create_one_qos_policy() + self.network.find_qos_policy = mock.Mock(return_value=qos_policy) + arglist = [ + '--qos-policy', qos_policy.id, + self.floating_ip.floating_network_id, + ] + verifylist = [ + ('network', self.floating_ip.floating_network_id), + ('qos_policy', qos_policy.id), + ] + parsed_args = self.check_parser(self.cmd, arglist, verifylist) + + columns, data = self.cmd.take_action(parsed_args) + + self.network.create_ip.assert_called_once_with(**{ + 'floating_network_id': self.floating_ip.floating_network_id, + 'qos_policy_id': qos_policy.id, + }) + self.assertEqual(self.columns, columns) + self.assertEqual(self.data, data) + class TestDeleteFloatingIPNetwork(TestFloatingIPNetwork): @@ -538,6 +562,7 @@ class TestShowFloatingIPNetwork(TestFloatingIPNetwork): 'id', 'port_id', 'project_id', + 'qos_policy_id', 'router_id', 'status', ) @@ -552,6 +577,7 @@ class TestShowFloatingIPNetwork(TestFloatingIPNetwork): floating_ip.id, floating_ip.port_id, floating_ip.project_id, + floating_ip.qos_policy_id, floating_ip.router_id, floating_ip.status, ) @@ -677,6 +703,76 @@ class TestSetFloatingIP(TestFloatingIPNetwork): self.network.update_ip.assert_called_once_with( self.floating_ip, **attrs) + @mock.patch( + "openstackclient.tests.unit.network.v2.test_floating_ip_network." + + "fip._find_floating_ip" + ) + def test_port_and_qos_policy_option(self, find_floating_ip_mock): + qos_policy = network_fakes.FakeNetworkQosPolicy.create_one_qos_policy() + self.network.find_qos_policy = mock.Mock(return_value=qos_policy) + find_floating_ip_mock.side_effect = [ + self.floating_ip, + ] + arglist = [ + "--qos-policy", qos_policy.id, + '--port', self.floating_ip.port_id, + self.floating_ip.id, + ] + verifylist = [ + ('qos_policy', qos_policy.id), + ('port', self.floating_ip.port_id), + ('floating_ip', self.floating_ip.id), + ] + parsed_args = self.check_parser(self.cmd, arglist, verifylist) + + self.cmd.take_action(parsed_args) + + attrs = { + 'qos_policy_id': qos_policy.id, + 'port_id': self.floating_ip.port_id, + } + find_floating_ip_mock.assert_called_once_with( + mock.ANY, + self.floating_ip.id, + ignore_missing=False, + ) + self.network.update_ip.assert_called_once_with( + self.floating_ip, **attrs) + + @mock.patch( + "openstackclient.tests.unit.network.v2.test_floating_ip_network." + + "fip._find_floating_ip" + ) + def test_port_and_no_qos_policy_option(self, find_floating_ip_mock): + find_floating_ip_mock.side_effect = [ + self.floating_ip, + ] + arglist = [ + "--no-qos-policy", + '--port', self.floating_ip.port_id, + self.floating_ip.id, + ] + verifylist = [ + ('no_qos_policy', True), + ('port', self.floating_ip.port_id), + ('floating_ip', self.floating_ip.id), + ] + parsed_args = self.check_parser(self.cmd, arglist, verifylist) + + self.cmd.take_action(parsed_args) + + attrs = { + 'qos_policy_id': None, + 'port_id': self.floating_ip.port_id, + } + find_floating_ip_mock.assert_called_once_with( + mock.ANY, + self.floating_ip.id, + ignore_missing=False, + ) + self.network.update_ip.assert_called_once_with( + self.floating_ip, **attrs) + class TestUnsetFloatingIP(TestFloatingIPNetwork): @@ -732,3 +828,36 @@ class TestUnsetFloatingIP(TestFloatingIPNetwork): self.floating_ip, **attrs) self.assertIsNone(result) + + @mock.patch( + "openstackclient.tests.unit.network.v2.test_floating_ip_network." + + "fip._find_floating_ip" + ) + def test_floating_ip_unset_qos_policy(self, find_floating_ip_mock): + find_floating_ip_mock.side_effect = [ + self.floating_ip, + ] + arglist = [ + self.floating_ip.id, + "--qos-policy", + ] + verifylist = [ + ('floating_ip', self.floating_ip.id), + ('qos_policy', True), + ] + parsed_args = self.check_parser(self.cmd, arglist, verifylist) + + result = self.cmd.take_action(parsed_args) + + attrs = { + 'qos_policy_id': None, + } + find_floating_ip_mock.assert_called_once_with( + mock.ANY, + self.floating_ip.id, + ignore_missing=False, + ) + self.network.update_ip.assert_called_once_with( + self.floating_ip, **attrs) + + self.assertIsNone(result) |
