python-openstackclient 8.2.0__py3-none-any.whl → 8.3.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- openstackclient/api/object_store_v1.py +4 -1
- openstackclient/command.py +27 -0
- openstackclient/common/availability_zone.py +1 -1
- openstackclient/common/clientmanager.py +59 -21
- openstackclient/common/configuration.py +1 -1
- openstackclient/common/extension.py +1 -1
- openstackclient/common/limits.py +1 -1
- openstackclient/common/module.py +4 -2
- openstackclient/common/project_cleanup.py +10 -8
- openstackclient/common/quota.py +23 -6
- openstackclient/common/versions.py +1 -2
- openstackclient/compute/v2/agent.py +1 -1
- openstackclient/compute/v2/aggregate.py +6 -5
- openstackclient/compute/v2/console.py +5 -3
- openstackclient/compute/v2/console_connection.py +1 -1
- openstackclient/compute/v2/flavor.py +1 -1
- openstackclient/compute/v2/host.py +1 -1
- openstackclient/compute/v2/hypervisor.py +1 -1
- openstackclient/compute/v2/hypervisor_stats.py +1 -1
- openstackclient/compute/v2/keypair.py +1 -1
- openstackclient/compute/v2/server.py +76 -27
- openstackclient/compute/v2/server_backup.py +1 -1
- openstackclient/compute/v2/server_event.py +1 -1
- openstackclient/compute/v2/server_group.py +4 -2
- openstackclient/compute/v2/server_image.py +1 -1
- openstackclient/compute/v2/server_migration.py +1 -1
- openstackclient/compute/v2/server_volume.py +1 -1
- openstackclient/compute/v2/service.py +1 -1
- openstackclient/compute/v2/usage.py +6 -4
- openstackclient/identity/common.py +2 -1
- openstackclient/identity/v2_0/catalog.py +3 -2
- openstackclient/identity/v2_0/ec2creds.py +1 -1
- openstackclient/identity/v2_0/endpoint.py +1 -1
- openstackclient/identity/v2_0/project.py +17 -7
- openstackclient/identity/v2_0/role.py +1 -1
- openstackclient/identity/v2_0/role_assignment.py +3 -3
- openstackclient/identity/v2_0/service.py +1 -1
- openstackclient/identity/v2_0/token.py +1 -1
- openstackclient/identity/v2_0/user.py +2 -2
- openstackclient/identity/v3/access_rule.py +16 -4
- openstackclient/identity/v3/application_credential.py +30 -10
- openstackclient/identity/v3/catalog.py +3 -3
- openstackclient/identity/v3/consumer.py +1 -1
- openstackclient/identity/v3/credential.py +1 -1
- openstackclient/identity/v3/domain.py +10 -4
- openstackclient/identity/v3/ec2creds.py +1 -1
- openstackclient/identity/v3/endpoint.py +33 -12
- openstackclient/identity/v3/endpoint_group.py +1 -1
- openstackclient/identity/v3/federation_protocol.py +1 -1
- openstackclient/identity/v3/group.py +11 -5
- openstackclient/identity/v3/identity_provider.py +12 -10
- openstackclient/identity/v3/implied_role.py +1 -1
- openstackclient/identity/v3/limit.py +1 -1
- openstackclient/identity/v3/mapping.py +1 -1
- openstackclient/identity/v3/policy.py +1 -1
- openstackclient/identity/v3/project.py +10 -3
- openstackclient/identity/v3/region.py +1 -1
- openstackclient/identity/v3/registered_limit.py +16 -11
- openstackclient/identity/v3/role.py +20 -39
- openstackclient/identity/v3/role_assignment.py +12 -23
- openstackclient/identity/v3/service.py +1 -1
- openstackclient/identity/v3/service_provider.py +1 -1
- openstackclient/identity/v3/tag.py +3 -2
- openstackclient/identity/v3/token.py +3 -2
- openstackclient/identity/v3/trust.py +4 -2
- openstackclient/identity/v3/unscoped_saml.py +1 -1
- openstackclient/identity/v3/user.py +22 -13
- openstackclient/image/v1/image.py +19 -16
- openstackclient/image/v2/cache.py +1 -1
- openstackclient/image/v2/image.py +14 -11
- openstackclient/image/v2/info.py +1 -1
- openstackclient/image/v2/metadef_namespaces.py +1 -1
- openstackclient/image/v2/metadef_objects.py +1 -1
- openstackclient/image/v2/metadef_properties.py +3 -2
- openstackclient/image/v2/metadef_resource_type_association.py +1 -1
- openstackclient/image/v2/metadef_resource_types.py +1 -1
- openstackclient/image/v2/task.py +1 -1
- openstackclient/network/common.py +10 -9
- openstackclient/network/v2/address_group.py +4 -3
- openstackclient/network/v2/address_scope.py +8 -6
- openstackclient/network/v2/default_security_group_rule.py +9 -8
- openstackclient/network/v2/floating_ip.py +16 -9
- openstackclient/network/v2/floating_ip_port_forwarding.py +9 -6
- openstackclient/network/v2/ip_availability.py +7 -4
- openstackclient/network/v2/l3_conntrack_helper.py +11 -4
- openstackclient/network/v2/local_ip.py +13 -7
- openstackclient/network/v2/local_ip_association.py +7 -4
- openstackclient/network/v2/ndp_proxy.py +13 -6
- openstackclient/network/v2/network.py +33 -16
- openstackclient/network/v2/network_agent.py +5 -5
- openstackclient/network/v2/network_auto_allocated_topology.py +1 -1
- openstackclient/network/v2/network_flavor.py +1 -1
- openstackclient/network/v2/network_flavor_profile.py +1 -1
- openstackclient/network/v2/network_meter.py +1 -1
- openstackclient/network/v2/network_meter_rule.py +1 -1
- openstackclient/network/v2/network_qos_policy.py +7 -5
- openstackclient/network/v2/network_qos_rule.py +1 -1
- openstackclient/network/v2/network_qos_rule_type.py +1 -1
- openstackclient/network/v2/network_rbac.py +8 -5
- openstackclient/network/v2/network_segment.py +2 -2
- openstackclient/network/v2/network_segment_range.py +13 -6
- openstackclient/network/v2/network_service_provider.py +1 -1
- openstackclient/network/v2/network_trunk.py +65 -42
- openstackclient/network/v2/port.py +22 -20
- openstackclient/network/v2/router.py +19 -8
- openstackclient/network/v2/security_group.py +10 -6
- openstackclient/network/v2/security_group_rule.py +11 -5
- openstackclient/network/v2/subnet.py +17 -18
- openstackclient/network/v2/subnet_pool.py +11 -9
- openstackclient/network/v2/taas/__init__.py +0 -0
- openstackclient/network/v2/taas/tap_flow.py +245 -0
- openstackclient/network/v2/taas/tap_mirror.py +237 -0
- openstackclient/network/v2/taas/tap_service.py +211 -0
- openstackclient/object/v1/account.py +1 -1
- openstackclient/object/v1/container.py +1 -1
- openstackclient/object/v1/object.py +1 -1
- openstackclient/shell.py +18 -8
- openstackclient/tests/functional/identity/v3/test_catalog.py +42 -23
- openstackclient/tests/functional/identity/v3/test_role_assignment.py +174 -0
- openstackclient/tests/functional/image/v2/test_cache.py +54 -0
- openstackclient/tests/functional/image/v2/test_metadef_resource_type.py +55 -0
- openstackclient/tests/unit/common/test_command.py +1 -1
- openstackclient/tests/unit/common/test_extension.py +2 -3
- openstackclient/tests/unit/common/test_module.py +14 -7
- openstackclient/tests/unit/common/test_quota.py +20 -0
- openstackclient/tests/unit/compute/v2/test_aggregate.py +5 -3
- openstackclient/tests/unit/compute/v2/test_console.py +1 -4
- openstackclient/tests/unit/compute/v2/test_flavor.py +1 -3
- openstackclient/tests/unit/compute/v2/test_hypervisor_stats.py +1 -9
- openstackclient/tests/unit/compute/v2/test_server.py +364 -30
- openstackclient/tests/unit/compute/v2/test_server_backup.py +1 -3
- openstackclient/tests/unit/compute/v2/test_service.py +1 -3
- openstackclient/tests/unit/fakes.py +35 -134
- openstackclient/tests/unit/identity/test_common.py +100 -0
- openstackclient/tests/unit/identity/v2_0/test_project.py +4 -4
- openstackclient/tests/unit/identity/v3/fakes.py +10 -2
- openstackclient/tests/unit/identity/v3/test_application_credential.py +3 -3
- openstackclient/tests/unit/identity/v3/test_domain.py +1 -1
- openstackclient/tests/unit/identity/v3/test_endpoint.py +1 -1
- openstackclient/tests/unit/identity/v3/test_group.py +4 -2
- openstackclient/tests/unit/identity/v3/test_identity_provider.py +10 -10
- openstackclient/tests/unit/identity/v3/test_oauth.py +1 -1
- openstackclient/tests/unit/identity/v3/test_project.py +1 -1
- openstackclient/tests/unit/identity/v3/test_registered_limit.py +2 -2
- openstackclient/tests/unit/identity/v3/test_role.py +1 -82
- openstackclient/tests/unit/identity/v3/test_user.py +7 -51
- openstackclient/tests/unit/image/v2/test_image.py +111 -0
- openstackclient/tests/unit/network/test_common.py +9 -13
- openstackclient/tests/unit/network/v2/taas/__init__.py +0 -0
- openstackclient/tests/unit/network/v2/taas/test_osc_tap_flow.py +276 -0
- openstackclient/tests/unit/network/v2/taas/test_osc_tap_mirror.py +288 -0
- openstackclient/tests/unit/network/v2/taas/test_osc_tap_service.py +271 -0
- openstackclient/tests/unit/network/v2/test_address_group.py +19 -22
- openstackclient/tests/unit/network/v2/test_address_scope.py +10 -15
- openstackclient/tests/unit/network/v2/test_default_security_group_rule.py +38 -49
- openstackclient/tests/unit/network/v2/test_floating_ip_network.py +21 -27
- openstackclient/tests/unit/network/v2/test_floating_ip_port_forwarding.py +21 -18
- openstackclient/tests/unit/network/v2/test_ip_availability.py +6 -8
- openstackclient/tests/unit/network/v2/test_l3_conntrack_helper.py +6 -15
- openstackclient/tests/unit/network/v2/test_local_ip.py +12 -23
- openstackclient/tests/unit/network/v2/test_local_ip_association.py +13 -18
- openstackclient/tests/unit/network/v2/test_ndp_proxy.py +11 -21
- openstackclient/tests/unit/network/v2/test_network.py +41 -37
- openstackclient/tests/unit/network/v2/test_network_agent.py +13 -20
- openstackclient/tests/unit/network/v2/test_network_auto_allocated_topology.py +5 -8
- openstackclient/tests/unit/network/v2/test_network_flavor.py +14 -26
- openstackclient/tests/unit/network/v2/test_network_flavor_profile.py +14 -17
- openstackclient/tests/unit/network/v2/test_network_meter.py +7 -17
- openstackclient/tests/unit/network/v2/test_network_meter_rule.py +10 -20
- openstackclient/tests/unit/network/v2/test_network_qos_policy.py +7 -13
- openstackclient/tests/unit/network/v2/test_network_qos_rule.py +44 -54
- openstackclient/tests/unit/network/v2/test_network_qos_rule_type.py +2 -7
- openstackclient/tests/unit/network/v2/test_network_rbac.py +21 -36
- openstackclient/tests/unit/network/v2/test_network_segment.py +13 -29
- openstackclient/tests/unit/network/v2/test_network_segment_range.py +20 -19
- openstackclient/tests/unit/network/v2/test_network_service_provider.py +1 -4
- openstackclient/tests/unit/network/v2/test_network_trunk.py +52 -47
- openstackclient/tests/unit/network/v2/test_port.py +75 -86
- openstackclient/tests/unit/network/v2/test_router.py +104 -126
- openstackclient/tests/unit/network/v2/test_security_group_network.py +19 -26
- openstackclient/tests/unit/network/v2/test_security_group_rule_network.py +17 -18
- openstackclient/tests/unit/network/v2/test_subnet.py +35 -46
- openstackclient/tests/unit/network/v2/test_subnet_pool.py +21 -33
- openstackclient/tests/unit/volume/test_find_resource.py +4 -13
- openstackclient/tests/unit/volume/v2/test_volume_backup.py +3 -1
- openstackclient/tests/unit/volume/v3/test_volume.py +4 -0
- openstackclient/tests/unit/volume/v3/test_volume_backup.py +9 -0
- openstackclient/volume/client.py +7 -17
- openstackclient/volume/v2/backup_record.py +1 -1
- openstackclient/volume/v2/consistency_group.py +1 -1
- openstackclient/volume/v2/consistency_group_snapshot.py +1 -1
- openstackclient/volume/v2/qos_specs.py +1 -1
- openstackclient/volume/v2/service.py +1 -1
- openstackclient/volume/v2/volume.py +2 -2
- openstackclient/volume/v2/volume_backend.py +1 -1
- openstackclient/volume/v2/volume_backup.py +5 -3
- openstackclient/volume/v2/volume_host.py +1 -2
- openstackclient/volume/v2/volume_snapshot.py +2 -2
- openstackclient/volume/v2/volume_transfer_request.py +1 -1
- openstackclient/volume/v2/volume_type.py +11 -6
- openstackclient/volume/v3/block_storage_cleanup.py +1 -1
- openstackclient/volume/v3/block_storage_cluster.py +1 -1
- openstackclient/volume/v3/block_storage_log_level.py +1 -1
- openstackclient/volume/v3/block_storage_manage.py +1 -1
- openstackclient/volume/v3/block_storage_resource_filter.py +1 -1
- openstackclient/volume/v3/service.py +1 -1
- openstackclient/volume/v3/volume.py +2 -2
- openstackclient/volume/v3/volume_attachment.py +6 -5
- openstackclient/volume/v3/volume_backup.py +18 -3
- openstackclient/volume/v3/volume_group.py +1 -1
- openstackclient/volume/v3/volume_group_snapshot.py +1 -1
- openstackclient/volume/v3/volume_group_type.py +1 -1
- openstackclient/volume/v3/volume_message.py +1 -1
- openstackclient/volume/v3/volume_snapshot.py +2 -2
- openstackclient/volume/v3/volume_transfer_request.py +1 -1
- openstackclient/volume/v3/volume_type.py +15 -9
- {python_openstackclient-8.2.0.dist-info → python_openstackclient-8.3.0.dist-info}/METADATA +15 -13
- {python_openstackclient-8.2.0.dist-info → python_openstackclient-8.3.0.dist-info}/RECORD +224 -213
- {python_openstackclient-8.2.0.dist-info → python_openstackclient-8.3.0.dist-info}/WHEEL +1 -1
- {python_openstackclient-8.2.0.dist-info → python_openstackclient-8.3.0.dist-info}/entry_points.txt +15 -0
- {python_openstackclient-8.2.0.dist-info → python_openstackclient-8.3.0.dist-info/licenses}/AUTHORS +10 -0
- python_openstackclient-8.3.0.dist-info/pbr.json +1 -0
- openstackclient/tests/unit/common/test_logs.py +0 -221
- python_openstackclient-8.2.0.dist-info/pbr.json +0 -1
- {python_openstackclient-8.2.0.dist-info → python_openstackclient-8.3.0.dist-info/licenses}/LICENSE +0 -0
- {python_openstackclient-8.2.0.dist-info → python_openstackclient-8.3.0.dist-info}/top_level.txt +0 -0
|
@@ -13,7 +13,6 @@
|
|
|
13
13
|
# under the License.
|
|
14
14
|
#
|
|
15
15
|
|
|
16
|
-
from unittest import mock
|
|
17
16
|
from unittest.mock import call
|
|
18
17
|
|
|
19
18
|
from osc_lib import exceptions
|
|
@@ -77,13 +76,11 @@ class TestCreateLocalIP(TestLocalIP):
|
|
|
77
76
|
|
|
78
77
|
def setUp(self):
|
|
79
78
|
super().setUp()
|
|
80
|
-
self.network_client.create_local_ip =
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
)
|
|
86
|
-
self.network_client.find_port = mock.Mock(return_value=self.port)
|
|
79
|
+
self.network_client.create_local_ip.return_value = self.new_local_ip
|
|
80
|
+
|
|
81
|
+
self.network_client.find_network.return_value = self.local_ip_network
|
|
82
|
+
|
|
83
|
+
self.network_client.find_port.return_value = self.port
|
|
87
84
|
|
|
88
85
|
# Get the command object to test
|
|
89
86
|
self.cmd = local_ip.CreateLocalIP(self.app, None)
|
|
@@ -149,7 +146,7 @@ class TestDeleteLocalIP(TestLocalIP):
|
|
|
149
146
|
|
|
150
147
|
def setUp(self):
|
|
151
148
|
super().setUp()
|
|
152
|
-
self.network_client.delete_local_ip =
|
|
149
|
+
self.network_client.delete_local_ip.return_value = None
|
|
153
150
|
self.network_client.find_local_ip = network_fakes.get_local_ips(
|
|
154
151
|
local_ips=self._local_ips
|
|
155
152
|
)
|
|
@@ -205,9 +202,7 @@ class TestDeleteLocalIP(TestLocalIP):
|
|
|
205
202
|
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
|
|
206
203
|
|
|
207
204
|
find_mock_result = [self._local_ips[0], exceptions.CommandError]
|
|
208
|
-
self.network_client.find_local_ip =
|
|
209
|
-
side_effect=find_mock_result
|
|
210
|
-
)
|
|
205
|
+
self.network_client.find_local_ip.side_effect = find_mock_result
|
|
211
206
|
|
|
212
207
|
try:
|
|
213
208
|
self.cmd.take_action(parsed_args)
|
|
@@ -258,10 +253,8 @@ class TestListLocalIP(TestLocalIP):
|
|
|
258
253
|
|
|
259
254
|
def setUp(self):
|
|
260
255
|
super().setUp()
|
|
261
|
-
self.network_client.local_ips =
|
|
262
|
-
self.network_client.find_network =
|
|
263
|
-
return_value=self.fake_network
|
|
264
|
-
)
|
|
256
|
+
self.network_client.local_ips.return_value = self.local_ips
|
|
257
|
+
self.network_client.find_network.return_value = self.fake_network
|
|
265
258
|
|
|
266
259
|
# Get the command object to test
|
|
267
260
|
self.cmd = local_ip.ListLocalIP(self.app, None)
|
|
@@ -402,10 +395,8 @@ class TestSetLocalIP(TestLocalIP):
|
|
|
402
395
|
|
|
403
396
|
def setUp(self):
|
|
404
397
|
super().setUp()
|
|
405
|
-
self.network_client.update_local_ip =
|
|
406
|
-
self.network_client.find_local_ip =
|
|
407
|
-
return_value=self._local_ip
|
|
408
|
-
)
|
|
398
|
+
self.network_client.update_local_ip.return_value = None
|
|
399
|
+
self.network_client.find_local_ip.return_value = self._local_ip
|
|
409
400
|
|
|
410
401
|
# Get the command object to test
|
|
411
402
|
self.cmd = local_ip.SetLocalIP(self.app, None)
|
|
@@ -482,9 +473,7 @@ class TestShowLocalIP(TestLocalIP):
|
|
|
482
473
|
|
|
483
474
|
def setUp(self):
|
|
484
475
|
super().setUp()
|
|
485
|
-
self.network_client.find_local_ip =
|
|
486
|
-
return_value=self._local_ip
|
|
487
|
-
)
|
|
476
|
+
self.network_client.find_local_ip.return_value = self._local_ip
|
|
488
477
|
|
|
489
478
|
# Get the command object to test
|
|
490
479
|
self.cmd = local_ip.ShowLocalIP(self.app, None)
|
|
@@ -29,7 +29,7 @@ class TestLocalIPAssociation(network_fakes.TestNetworkV2):
|
|
|
29
29
|
self.local_ip = network_fakes.create_one_local_ip()
|
|
30
30
|
self.fixed_port = network_fakes.create_one_port()
|
|
31
31
|
self.project = identity_fakes_v2.FakeProject.create_one_project()
|
|
32
|
-
self.network_client.find_port =
|
|
32
|
+
self.network_client.find_port.return_value = self.fixed_port
|
|
33
33
|
|
|
34
34
|
|
|
35
35
|
class TestCreateLocalIPAssociation(TestLocalIPAssociation):
|
|
@@ -43,13 +43,11 @@ class TestCreateLocalIPAssociation(TestLocalIPAssociation):
|
|
|
43
43
|
}
|
|
44
44
|
)
|
|
45
45
|
)
|
|
46
|
-
self.network_client.create_local_ip_association =
|
|
47
|
-
|
|
46
|
+
self.network_client.create_local_ip_association.return_value = (
|
|
47
|
+
self.new_local_ip_association
|
|
48
48
|
)
|
|
49
49
|
|
|
50
|
-
self.network_client.find_local_ip =
|
|
51
|
-
return_value=self.local_ip
|
|
52
|
-
)
|
|
50
|
+
self.network_client.find_local_ip.return_value = self.local_ip
|
|
53
51
|
|
|
54
52
|
# Get the command object to test
|
|
55
53
|
self.cmd = local_ip_association.CreateLocalIPAssociation(
|
|
@@ -128,13 +126,10 @@ class TestDeleteLocalIPAssociation(TestLocalIPAssociation):
|
|
|
128
126
|
},
|
|
129
127
|
)
|
|
130
128
|
)
|
|
131
|
-
self.network_client.delete_local_ip_association =
|
|
132
|
-
|
|
133
|
-
|
|
129
|
+
self.network_client.delete_local_ip_association.return_value = None
|
|
130
|
+
|
|
131
|
+
self.network_client.find_local_ip.return_value = self.local_ip
|
|
134
132
|
|
|
135
|
-
self.network_client.find_local_ip = mock.Mock(
|
|
136
|
-
return_value=self.local_ip
|
|
137
|
-
)
|
|
138
133
|
# Get the command object to test
|
|
139
134
|
self.cmd = local_ip_association.DeleteLocalIPAssociation(
|
|
140
135
|
self.app, None
|
|
@@ -262,13 +257,13 @@ class TestListLocalIPAssociation(TestLocalIPAssociation):
|
|
|
262
257
|
lip_assoc.host,
|
|
263
258
|
)
|
|
264
259
|
)
|
|
265
|
-
self.network_client.local_ip_associations =
|
|
266
|
-
|
|
260
|
+
self.network_client.local_ip_associations.return_value = (
|
|
261
|
+
self.local_ip_associations
|
|
267
262
|
)
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
self.network_client.find_port =
|
|
263
|
+
|
|
264
|
+
self.network_client.find_local_ip.return_value = self.local_ip
|
|
265
|
+
|
|
266
|
+
self.network_client.find_port.return_value = self.fixed_port
|
|
272
267
|
# Get the command object to test
|
|
273
268
|
self.cmd = local_ip_association.ListLocalIPAssociation(self.app, None)
|
|
274
269
|
|
|
@@ -11,7 +11,6 @@
|
|
|
11
11
|
# under the License.
|
|
12
12
|
#
|
|
13
13
|
|
|
14
|
-
from unittest import mock
|
|
15
14
|
from unittest.mock import call
|
|
16
15
|
|
|
17
16
|
from osc_lib import exceptions
|
|
@@ -31,9 +30,9 @@ class TestNDPProxy(network_fakes.TestNetworkV2):
|
|
|
31
30
|
self.domains_mock = self.identity_client.domains
|
|
32
31
|
|
|
33
32
|
self.router = network_fakes.create_one_router({'id': 'fake-router-id'})
|
|
34
|
-
self.network_client.find_router =
|
|
33
|
+
self.network_client.find_router.return_value = self.router
|
|
35
34
|
self.port = network_fakes.create_one_port()
|
|
36
|
-
self.network_client.find_port =
|
|
35
|
+
self.network_client.find_port.return_value = self.port
|
|
37
36
|
|
|
38
37
|
|
|
39
38
|
class TestCreateNDPProxy(TestNDPProxy):
|
|
@@ -66,9 +65,7 @@ class TestCreateNDPProxy(TestNDPProxy):
|
|
|
66
65
|
self.ndp_proxy.router_id,
|
|
67
66
|
self.ndp_proxy.updated_at,
|
|
68
67
|
)
|
|
69
|
-
self.network_client.create_ndp_proxy =
|
|
70
|
-
return_value=self.ndp_proxy
|
|
71
|
-
)
|
|
68
|
+
self.network_client.create_ndp_proxy.return_value = self.ndp_proxy
|
|
72
69
|
|
|
73
70
|
# Get the command object to test
|
|
74
71
|
self.cmd = ndp_proxy.CreateNDPProxy(self.app, None)
|
|
@@ -127,10 +124,8 @@ class TestDeleteNDPProxy(TestNDPProxy):
|
|
|
127
124
|
attrs = {'router_id': self.router.id, 'port_id': self.port.id}
|
|
128
125
|
self.ndp_proxies = network_fakes.create_ndp_proxies(attrs)
|
|
129
126
|
self.ndp_proxy = self.ndp_proxies[0]
|
|
130
|
-
self.network_client.delete_ndp_proxy =
|
|
131
|
-
self.network_client.find_ndp_proxy =
|
|
132
|
-
return_value=self.ndp_proxy
|
|
133
|
-
)
|
|
127
|
+
self.network_client.delete_ndp_proxy.return_value = None
|
|
128
|
+
self.network_client.find_ndp_proxy.return_value = self.ndp_proxy
|
|
134
129
|
|
|
135
130
|
# Get the command object to test
|
|
136
131
|
self.cmd = ndp_proxy.DeleteNDPProxy(self.app, None)
|
|
@@ -203,7 +198,7 @@ class TestListNDPProxy(TestNDPProxy):
|
|
|
203
198
|
)
|
|
204
199
|
)
|
|
205
200
|
|
|
206
|
-
self.network_client.ndp_proxies =
|
|
201
|
+
self.network_client.ndp_proxies.return_value = ndp_proxies
|
|
207
202
|
|
|
208
203
|
# Get the command object to test
|
|
209
204
|
self.cmd = ndp_proxy.ListNDPProxy(self.app, None)
|
|
@@ -340,10 +335,8 @@ class TestSetNDPProxy(TestNDPProxy):
|
|
|
340
335
|
super().setUp()
|
|
341
336
|
attrs = {'router_id': self.router.id, 'port_id': self.port.id}
|
|
342
337
|
self.ndp_proxy = network_fakes.create_one_ndp_proxy(attrs)
|
|
343
|
-
self.network_client.update_ndp_proxy =
|
|
344
|
-
self.network_client.find_ndp_proxy =
|
|
345
|
-
return_value=self.ndp_proxy
|
|
346
|
-
)
|
|
338
|
+
self.network_client.update_ndp_proxy.return_value = None
|
|
339
|
+
self.network_client.find_ndp_proxy.return_value = self.ndp_proxy
|
|
347
340
|
|
|
348
341
|
# Get the command object to test
|
|
349
342
|
self.cmd = ndp_proxy.SetNDPProxy(self.app, None)
|
|
@@ -434,12 +427,9 @@ class TestShowNDPProxy(TestNDPProxy):
|
|
|
434
427
|
self.ndp_proxy.router_id,
|
|
435
428
|
self.ndp_proxy.updated_at,
|
|
436
429
|
)
|
|
437
|
-
self.network_client.get_ndp_proxy =
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
self.network_client.find_ndp_proxy = mock.Mock(
|
|
441
|
-
return_value=self.ndp_proxy
|
|
442
|
-
)
|
|
430
|
+
self.network_client.get_ndp_proxy.return_value = self.ndp_proxy
|
|
431
|
+
|
|
432
|
+
self.network_client.find_ndp_proxy.return_value = self.ndp_proxy
|
|
443
433
|
|
|
444
434
|
# Get the command object to test
|
|
445
435
|
self.cmd = ndp_proxy.ShowNDPProxy(self.app, None)
|
|
@@ -12,7 +12,6 @@
|
|
|
12
12
|
#
|
|
13
13
|
|
|
14
14
|
import random
|
|
15
|
-
from unittest import mock
|
|
16
15
|
from unittest.mock import call
|
|
17
16
|
|
|
18
17
|
from osc_lib.cli import format_columns
|
|
@@ -116,19 +115,16 @@ class TestCreateNetworkIdentityV3(TestNetwork):
|
|
|
116
115
|
def setUp(self):
|
|
117
116
|
super().setUp()
|
|
118
117
|
|
|
119
|
-
self.network_client.create_network =
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
self.network_client.set_tags = mock.Mock(return_value=None)
|
|
118
|
+
self.network_client.create_network.return_value = self._network
|
|
119
|
+
|
|
120
|
+
self.network_client.set_tags.return_value = None
|
|
123
121
|
|
|
124
122
|
# Get the command object to test
|
|
125
123
|
self.cmd = network.CreateNetwork(self.app, None)
|
|
126
124
|
|
|
127
125
|
self.projects_mock.get.return_value = self.project
|
|
128
126
|
self.domains_mock.get.return_value = self.domain
|
|
129
|
-
self.network_client.find_qos_policy =
|
|
130
|
-
return_value=self.qos_policy
|
|
131
|
-
)
|
|
127
|
+
self.network_client.find_qos_policy.return_value = self.qos_policy
|
|
132
128
|
|
|
133
129
|
def test_create_no_options(self):
|
|
134
130
|
arglist = []
|
|
@@ -330,6 +326,23 @@ class TestCreateNetworkIdentityV3(TestNetwork):
|
|
|
330
326
|
exceptions.CommandError, self.cmd.take_action, parsed_args
|
|
331
327
|
)
|
|
332
328
|
|
|
329
|
+
def test_create_with_provider_segment_without_provider_type(self):
|
|
330
|
+
arglist = [
|
|
331
|
+
"--provider-segment",
|
|
332
|
+
"123",
|
|
333
|
+
self._network.name,
|
|
334
|
+
]
|
|
335
|
+
verifylist = [
|
|
336
|
+
('provider_network_type', None),
|
|
337
|
+
('segmentation_id', "123"),
|
|
338
|
+
('name', self._network.name),
|
|
339
|
+
]
|
|
340
|
+
|
|
341
|
+
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
|
|
342
|
+
self.assertRaises(
|
|
343
|
+
exceptions.CommandError, self.cmd.take_action, parsed_args
|
|
344
|
+
)
|
|
345
|
+
|
|
333
346
|
|
|
334
347
|
class TestCreateNetworkIdentityV2(
|
|
335
348
|
identity_fakes_v2.FakeClientMixin,
|
|
@@ -406,10 +419,9 @@ class TestCreateNetworkIdentityV2(
|
|
|
406
419
|
def setUp(self):
|
|
407
420
|
super().setUp()
|
|
408
421
|
|
|
409
|
-
self.network_client.create_network =
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
self.network_client.set_tags = mock.Mock(return_value=None)
|
|
422
|
+
self.network_client.create_network.return_value = self._network
|
|
423
|
+
|
|
424
|
+
self.network_client.set_tags.return_value = None
|
|
413
425
|
|
|
414
426
|
# Get the command object to test
|
|
415
427
|
self.cmd = network.CreateNetwork(self.app, None)
|
|
@@ -481,7 +493,7 @@ class TestDeleteNetwork(TestNetwork):
|
|
|
481
493
|
# The networks to delete
|
|
482
494
|
self._networks = network_fakes.create_networks(count=3)
|
|
483
495
|
|
|
484
|
-
self.network_client.delete_network =
|
|
496
|
+
self.network_client.delete_network.return_value = None
|
|
485
497
|
|
|
486
498
|
self.network_client.find_network = network_fakes.get_networks(
|
|
487
499
|
networks=self._networks
|
|
@@ -540,14 +552,14 @@ class TestDeleteNetwork(TestNetwork):
|
|
|
540
552
|
exceptions.NotFound('404'),
|
|
541
553
|
self._networks[1],
|
|
542
554
|
]
|
|
543
|
-
self.network_client.find_network =
|
|
555
|
+
self.network_client.find_network.side_effect = ret_find
|
|
544
556
|
|
|
545
557
|
# Fake exception in delete_network()
|
|
546
558
|
ret_delete = [
|
|
547
559
|
None,
|
|
548
560
|
exceptions.NotFound('404'),
|
|
549
561
|
]
|
|
550
|
-
self.network_client.delete_network =
|
|
562
|
+
self.network_client.delete_network.side_effect = ret_delete
|
|
551
563
|
|
|
552
564
|
self.assertRaises(
|
|
553
565
|
exceptions.CommandError, self.cmd.take_action, parsed_args
|
|
@@ -619,13 +631,13 @@ class TestListNetwork(TestNetwork):
|
|
|
619
631
|
# Get the command object to test
|
|
620
632
|
self.cmd = network.ListNetwork(self.app, None)
|
|
621
633
|
|
|
622
|
-
self.network_client.networks =
|
|
634
|
+
self.network_client.networks.return_value = self._network
|
|
623
635
|
|
|
624
636
|
self._agent = network_fakes.create_one_network_agent()
|
|
625
637
|
self.network_client.get_agent.return_value = self._agent
|
|
626
638
|
|
|
627
|
-
self.network_client.dhcp_agent_hosting_networks =
|
|
628
|
-
|
|
639
|
+
self.network_client.dhcp_agent_hosting_networks.return_value = (
|
|
640
|
+
self._network
|
|
629
641
|
)
|
|
630
642
|
|
|
631
643
|
# TestListTagMixin
|
|
@@ -974,15 +986,12 @@ class TestSetNetwork(TestNetwork):
|
|
|
974
986
|
def setUp(self):
|
|
975
987
|
super().setUp()
|
|
976
988
|
|
|
977
|
-
self.network_client.update_network =
|
|
978
|
-
self.network_client.set_tags =
|
|
989
|
+
self.network_client.update_network.return_value = None
|
|
990
|
+
self.network_client.set_tags.return_value = None
|
|
979
991
|
|
|
980
|
-
self.network_client.find_network =
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
self.network_client.find_qos_policy = mock.Mock(
|
|
984
|
-
return_value=self.qos_policy
|
|
985
|
-
)
|
|
992
|
+
self.network_client.find_network.return_value = self._network
|
|
993
|
+
|
|
994
|
+
self.network_client.find_qos_policy.return_value = self.qos_policy
|
|
986
995
|
|
|
987
996
|
# Get the command object to test
|
|
988
997
|
self.cmd = network.SetNetwork(self.app, None)
|
|
@@ -1225,9 +1234,7 @@ class TestShowNetwork(TestNetwork):
|
|
|
1225
1234
|
def setUp(self):
|
|
1226
1235
|
super().setUp()
|
|
1227
1236
|
|
|
1228
|
-
self.network_client.find_network =
|
|
1229
|
-
return_value=self._network
|
|
1230
|
-
)
|
|
1237
|
+
self.network_client.find_network.return_value = self._network
|
|
1231
1238
|
|
|
1232
1239
|
# Get the command object to test
|
|
1233
1240
|
self.cmd = network.ShowNetwork(self.app, None)
|
|
@@ -1273,15 +1280,12 @@ class TestUnsetNetwork(TestNetwork):
|
|
|
1273
1280
|
def setUp(self):
|
|
1274
1281
|
super().setUp()
|
|
1275
1282
|
|
|
1276
|
-
self.network_client.update_network =
|
|
1277
|
-
self.network_client.set_tags =
|
|
1283
|
+
self.network_client.update_network.return_value = None
|
|
1284
|
+
self.network_client.set_tags.return_value = None
|
|
1278
1285
|
|
|
1279
|
-
self.network_client.find_network =
|
|
1280
|
-
|
|
1281
|
-
|
|
1282
|
-
self.network_client.find_qos_policy = mock.Mock(
|
|
1283
|
-
return_value=self.qos_policy
|
|
1284
|
-
)
|
|
1286
|
+
self.network_client.find_network.return_value = self._network
|
|
1287
|
+
|
|
1288
|
+
self.network_client.find_qos_policy.return_value = self.qos_policy
|
|
1285
1289
|
|
|
1286
1290
|
# Get the command object to test
|
|
1287
1291
|
self.cmd = network.UnsetNetwork(self.app, None)
|
|
@@ -11,7 +11,6 @@
|
|
|
11
11
|
# under the License.
|
|
12
12
|
#
|
|
13
13
|
|
|
14
|
-
from unittest import mock
|
|
15
14
|
from unittest.mock import call
|
|
16
15
|
|
|
17
16
|
from osc_lib.cli import format_columns
|
|
@@ -34,8 +33,8 @@ class TestAddNetworkToAgent(TestNetworkAgent):
|
|
|
34
33
|
def setUp(self):
|
|
35
34
|
super().setUp()
|
|
36
35
|
|
|
37
|
-
self.network_client.get_agent =
|
|
38
|
-
self.network_client.find_network =
|
|
36
|
+
self.network_client.get_agent.return_value = self.agent
|
|
37
|
+
self.network_client.find_network.return_value = self.net
|
|
39
38
|
self.network_client.name = self.network_client.find_network.name
|
|
40
39
|
|
|
41
40
|
self.cmd = network_agent.AddNetworkToAgent(self.app, None)
|
|
@@ -76,8 +75,8 @@ class TestAddRouterAgent(TestNetworkAgent):
|
|
|
76
75
|
def setUp(self):
|
|
77
76
|
super().setUp()
|
|
78
77
|
|
|
79
|
-
self.network_client.get_agent =
|
|
80
|
-
self.network_client.find_router =
|
|
78
|
+
self.network_client.get_agent.return_value = self._agent
|
|
79
|
+
self.network_client.find_router.return_value = self._router
|
|
81
80
|
|
|
82
81
|
self.cmd = network_agent.AddRouterToAgent(self.app, None)
|
|
83
82
|
|
|
@@ -120,7 +119,7 @@ class TestDeleteNetworkAgent(TestNetworkAgent):
|
|
|
120
119
|
|
|
121
120
|
def setUp(self):
|
|
122
121
|
super().setUp()
|
|
123
|
-
self.network_client.delete_agent =
|
|
122
|
+
self.network_client.delete_agent.return_value = None
|
|
124
123
|
|
|
125
124
|
# Get the command object to test
|
|
126
125
|
self.cmd = network_agent.DeleteNetworkAgent(self.app, None)
|
|
@@ -173,9 +172,7 @@ class TestDeleteNetworkAgent(TestNetworkAgent):
|
|
|
173
172
|
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
|
|
174
173
|
|
|
175
174
|
delete_mock_result = [True, exceptions.CommandError]
|
|
176
|
-
self.network_client.delete_agent =
|
|
177
|
-
side_effect=delete_mock_result
|
|
178
|
-
)
|
|
175
|
+
self.network_client.delete_agent.side_effect = delete_mock_result
|
|
179
176
|
|
|
180
177
|
try:
|
|
181
178
|
self.cmd.take_action(parsed_args)
|
|
@@ -357,8 +354,8 @@ class TestRemoveNetworkFromAgent(TestNetworkAgent):
|
|
|
357
354
|
def setUp(self):
|
|
358
355
|
super().setUp()
|
|
359
356
|
|
|
360
|
-
self.network_client.get_agent =
|
|
361
|
-
self.network_client.find_network =
|
|
357
|
+
self.network_client.get_agent.return_value = self.agent
|
|
358
|
+
self.network_client.find_network.return_value = self.net
|
|
362
359
|
self.network_client.name = self.network_client.find_network.name
|
|
363
360
|
|
|
364
361
|
self.cmd = network_agent.RemoveNetworkFromAgent(self.app, None)
|
|
@@ -414,8 +411,8 @@ class TestRemoveRouterAgent(TestNetworkAgent):
|
|
|
414
411
|
def setUp(self):
|
|
415
412
|
super().setUp()
|
|
416
413
|
|
|
417
|
-
self.network_client.get_agent =
|
|
418
|
-
self.network_client.find_router =
|
|
414
|
+
self.network_client.get_agent.return_value = self._agent
|
|
415
|
+
self.network_client.find_router.return_value = self._router
|
|
419
416
|
|
|
420
417
|
self.cmd = network_agent.RemoveRouterFromAgent(self.app, None)
|
|
421
418
|
|
|
@@ -458,10 +455,8 @@ class TestSetNetworkAgent(TestNetworkAgent):
|
|
|
458
455
|
|
|
459
456
|
def setUp(self):
|
|
460
457
|
super().setUp()
|
|
461
|
-
self.network_client.update_agent =
|
|
462
|
-
self.network_client.get_agent =
|
|
463
|
-
return_value=self._network_agent
|
|
464
|
-
)
|
|
458
|
+
self.network_client.update_agent.return_value = None
|
|
459
|
+
self.network_client.get_agent.return_value = self._network_agent
|
|
465
460
|
|
|
466
461
|
# Get the command object to test
|
|
467
462
|
self.cmd = network_agent.SetNetworkAgent(self.app, None)
|
|
@@ -574,9 +569,7 @@ class TestShowNetworkAgent(TestNetworkAgent):
|
|
|
574
569
|
|
|
575
570
|
def setUp(self):
|
|
576
571
|
super().setUp()
|
|
577
|
-
self.network_client.get_agent =
|
|
578
|
-
return_value=self._network_agent
|
|
579
|
-
)
|
|
572
|
+
self.network_client.get_agent.return_value = self._network_agent
|
|
580
573
|
|
|
581
574
|
# Get the command object to test
|
|
582
575
|
self.cmd = network_agent.ShowNetworkAgent(self.app, None)
|
|
@@ -13,7 +13,6 @@
|
|
|
13
13
|
# License for the specific language governing permissions and limitations
|
|
14
14
|
# under the License.
|
|
15
15
|
|
|
16
|
-
from unittest import mock
|
|
17
16
|
|
|
18
17
|
from openstackclient.network.v2 import network_auto_allocated_topology
|
|
19
18
|
from openstackclient.tests.unit.identity.v3 import fakes as identity_fakes
|
|
@@ -50,8 +49,8 @@ class TestCreateAutoAllocatedTopology(TestAutoAllocatedTopology):
|
|
|
50
49
|
self.cmd = network_auto_allocated_topology.CreateAutoAllocatedTopology(
|
|
51
50
|
self.app, None
|
|
52
51
|
)
|
|
53
|
-
self.network_client.get_auto_allocated_topology =
|
|
54
|
-
|
|
52
|
+
self.network_client.get_auto_allocated_topology.return_value = (
|
|
53
|
+
self.topology
|
|
55
54
|
)
|
|
56
55
|
|
|
57
56
|
def test_create_no_options(self):
|
|
@@ -155,8 +154,8 @@ class TestValidateAutoAllocatedTopology(TestAutoAllocatedTopology):
|
|
|
155
154
|
self.cmd = network_auto_allocated_topology.CreateAutoAllocatedTopology(
|
|
156
155
|
self.app, None
|
|
157
156
|
)
|
|
158
|
-
self.network_client.validate_auto_allocated_topology =
|
|
159
|
-
|
|
157
|
+
self.network_client.validate_auto_allocated_topology.return_value = (
|
|
158
|
+
self.topology
|
|
160
159
|
)
|
|
161
160
|
|
|
162
161
|
def test_show_dry_run_no_project(self):
|
|
@@ -228,9 +227,7 @@ class TestDeleteAutoAllocatedTopology(TestAutoAllocatedTopology):
|
|
|
228
227
|
self.cmd = network_auto_allocated_topology.DeleteAutoAllocatedTopology(
|
|
229
228
|
self.app, None
|
|
230
229
|
)
|
|
231
|
-
self.network_client.delete_auto_allocated_topology =
|
|
232
|
-
return_value=None
|
|
233
|
-
)
|
|
230
|
+
self.network_client.delete_auto_allocated_topology.return_value = None
|
|
234
231
|
|
|
235
232
|
def test_delete_no_project(self):
|
|
236
233
|
arglist = []
|
|
@@ -41,11 +41,9 @@ class TestAddNetworkFlavorToProfile(TestNetworkFlavor):
|
|
|
41
41
|
def setUp(self):
|
|
42
42
|
super().setUp()
|
|
43
43
|
|
|
44
|
-
self.network_client.find_flavor =
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
self.network_client.find_service_profile = mock.Mock(
|
|
48
|
-
return_value=self.service_profile
|
|
44
|
+
self.network_client.find_flavor.return_value = self.network_flavor
|
|
45
|
+
self.network_client.find_service_profile.return_value = (
|
|
46
|
+
self.service_profile
|
|
49
47
|
)
|
|
50
48
|
|
|
51
49
|
self.cmd = network_flavor.AddNetworkFlavorToProfile(self.app, None)
|
|
@@ -102,8 +100,8 @@ class TestCreateNetworkFlavor(TestNetworkFlavor):
|
|
|
102
100
|
|
|
103
101
|
def setUp(self):
|
|
104
102
|
super().setUp()
|
|
105
|
-
self.network_client.create_flavor =
|
|
106
|
-
|
|
103
|
+
self.network_client.create_flavor.return_value = (
|
|
104
|
+
self.new_network_flavor
|
|
107
105
|
)
|
|
108
106
|
|
|
109
107
|
# Get the command object to test
|
|
@@ -218,7 +216,7 @@ class TestDeleteNetworkFlavor(TestNetworkFlavor):
|
|
|
218
216
|
|
|
219
217
|
def setUp(self):
|
|
220
218
|
super().setUp()
|
|
221
|
-
self.network_client.delete_flavor =
|
|
219
|
+
self.network_client.delete_flavor.return_value = None
|
|
222
220
|
self.network_client.find_flavor = network_fakes.get_flavor(
|
|
223
221
|
network_flavors=self._network_flavors
|
|
224
222
|
)
|
|
@@ -278,9 +276,7 @@ class TestDeleteNetworkFlavor(TestNetworkFlavor):
|
|
|
278
276
|
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
|
|
279
277
|
|
|
280
278
|
find_mock_result = [self._network_flavors[0], exceptions.CommandError]
|
|
281
|
-
self.network_client.find_flavor =
|
|
282
|
-
side_effect=find_mock_result
|
|
283
|
-
)
|
|
279
|
+
self.network_client.find_flavor.side_effect = find_mock_result
|
|
284
280
|
|
|
285
281
|
try:
|
|
286
282
|
self.cmd.take_action(parsed_args)
|
|
@@ -323,9 +319,7 @@ class TestListNetworkFlavor(TestNetworkFlavor):
|
|
|
323
319
|
|
|
324
320
|
def setUp(self):
|
|
325
321
|
super().setUp()
|
|
326
|
-
self.network_client.flavors =
|
|
327
|
-
return_value=self._network_flavors
|
|
328
|
-
)
|
|
322
|
+
self.network_client.flavors.return_value = self._network_flavors
|
|
329
323
|
|
|
330
324
|
# Get the command object to test
|
|
331
325
|
self.cmd = network_flavor.ListNetworkFlavor(self.app, None)
|
|
@@ -348,11 +342,9 @@ class TestRemoveNetworkFlavorFromProfile(TestNetworkFlavor):
|
|
|
348
342
|
|
|
349
343
|
def setUp(self):
|
|
350
344
|
super().setUp()
|
|
351
|
-
self.network_client.find_flavor =
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
self.network_client.find_service_profile = mock.Mock(
|
|
355
|
-
return_value=self.service_profile
|
|
345
|
+
self.network_client.find_flavor.return_value = self.network_flavor
|
|
346
|
+
self.network_client.find_service_profile.return_value = (
|
|
347
|
+
self.service_profile
|
|
356
348
|
)
|
|
357
349
|
self.network_client.disassociate_flavor_from_service_profile = (
|
|
358
350
|
mock.Mock()
|
|
@@ -412,9 +404,7 @@ class TestShowNetworkFlavor(TestNetworkFlavor):
|
|
|
412
404
|
|
|
413
405
|
def setUp(self):
|
|
414
406
|
super().setUp()
|
|
415
|
-
self.network_client.find_flavor =
|
|
416
|
-
return_value=self.new_network_flavor
|
|
417
|
-
)
|
|
407
|
+
self.network_client.find_flavor.return_value = self.new_network_flavor
|
|
418
408
|
|
|
419
409
|
# Get the command object to test
|
|
420
410
|
self.cmd = network_flavor.ShowNetworkFlavor(self.app, None)
|
|
@@ -456,10 +446,8 @@ class TestSetNetworkFlavor(TestNetworkFlavor):
|
|
|
456
446
|
|
|
457
447
|
def setUp(self):
|
|
458
448
|
super().setUp()
|
|
459
|
-
self.network_client.update_flavor =
|
|
460
|
-
self.network_client.find_flavor =
|
|
461
|
-
return_value=self.new_network_flavor
|
|
462
|
-
)
|
|
449
|
+
self.network_client.update_flavor.return_value = None
|
|
450
|
+
self.network_client.find_flavor.return_value = self.new_network_flavor
|
|
463
451
|
|
|
464
452
|
# Get the command object to test
|
|
465
453
|
self.cmd = network_flavor.SetNetworkFlavor(self.app, None)
|