python-openstackclient 6.3.0__py3-none-any.whl → 6.5.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.
Files changed (162) hide show
  1. openstackclient/common/availability_zone.py +4 -4
  2. openstackclient/common/pagination.py +82 -0
  3. openstackclient/compute/v2/flavor.py +2 -16
  4. openstackclient/compute/v2/hypervisor.py +2 -21
  5. openstackclient/compute/v2/keypair.py +2 -9
  6. openstackclient/compute/v2/server.py +220 -131
  7. openstackclient/compute/v2/server_event.py +30 -19
  8. openstackclient/compute/v2/server_group.py +2 -23
  9. openstackclient/compute/v2/server_migration.py +2 -22
  10. openstackclient/compute/v2/usage.py +4 -6
  11. openstackclient/identity/v3/mapping.py +25 -3
  12. openstackclient/identity/v3/policy.py +3 -1
  13. openstackclient/image/v2/cache.py +218 -0
  14. openstackclient/image/v2/image.py +40 -17
  15. openstackclient/image/v2/metadef_namespaces.py +25 -21
  16. openstackclient/image/v2/metadef_objects.py +189 -0
  17. openstackclient/image/v2/metadef_properties.py +284 -0
  18. openstackclient/network/utils.py +100 -0
  19. openstackclient/network/v2/default_security_group_rule.py +418 -0
  20. openstackclient/network/v2/local_ip_association.py +1 -1
  21. openstackclient/network/v2/ndp_proxy.py +7 -3
  22. openstackclient/network/v2/network.py +2 -2
  23. openstackclient/network/v2/port.py +65 -19
  24. openstackclient/network/v2/security_group_rule.py +18 -111
  25. openstackclient/network/v2/subnet.py +1 -0
  26. openstackclient/object/v1/container.py +2 -12
  27. openstackclient/object/v1/object.py +2 -11
  28. openstackclient/tests/functional/base.py +13 -6
  29. openstackclient/tests/functional/identity/v3/test_role.py +11 -3
  30. openstackclient/tests/functional/network/v2/common.py +7 -1
  31. openstackclient/tests/functional/network/v2/test_address_group.py +2 -4
  32. openstackclient/tests/functional/network/v2/test_address_scope.py +0 -6
  33. openstackclient/tests/functional/network/v2/test_default_security_group_rule.py +67 -0
  34. openstackclient/tests/functional/network/v2/test_floating_ip.py +3 -6
  35. openstackclient/tests/functional/network/v2/test_ip_availability.py +3 -8
  36. openstackclient/tests/functional/network/v2/test_l3_conntrack_helper.py +3 -4
  37. openstackclient/tests/functional/network/v2/test_local_ip.py +2 -4
  38. openstackclient/tests/functional/network/v2/test_network.py +18 -17
  39. openstackclient/tests/functional/network/v2/test_network_agent.py +24 -21
  40. openstackclient/tests/functional/network/v2/test_network_flavor.py +0 -6
  41. openstackclient/tests/functional/network/v2/test_network_flavor_profile.py +0 -6
  42. openstackclient/tests/functional/network/v2/test_network_meter.py +6 -6
  43. openstackclient/tests/functional/network/v2/test_network_meter_rule.py +7 -8
  44. openstackclient/tests/functional/network/v2/test_network_ndp_proxy.py +1 -3
  45. openstackclient/tests/functional/network/v2/test_network_qos_policy.py +4 -4
  46. openstackclient/tests/functional/network/v2/test_network_qos_rule.py +16 -20
  47. openstackclient/tests/functional/network/v2/test_network_qos_rule_type.py +4 -4
  48. openstackclient/tests/functional/network/v2/test_network_rbac.py +1 -4
  49. openstackclient/tests/functional/network/v2/test_network_segment.py +7 -12
  50. openstackclient/tests/functional/network/v2/test_network_segment_range.py +3 -4
  51. openstackclient/tests/functional/network/v2/test_network_service_provider.py +2 -4
  52. openstackclient/tests/functional/network/v2/test_network_trunk.py +3 -3
  53. openstackclient/tests/functional/network/v2/test_port.py +2 -8
  54. openstackclient/tests/functional/network/v2/test_router.py +0 -6
  55. openstackclient/tests/functional/network/v2/test_security_group.py +1 -4
  56. openstackclient/tests/functional/network/v2/test_security_group_rule.py +1 -4
  57. openstackclient/tests/functional/network/v2/test_subnet.py +4 -22
  58. openstackclient/tests/functional/network/v2/test_subnet_pool.py +0 -6
  59. openstackclient/tests/unit/common/test_availability_zone.py +28 -30
  60. openstackclient/tests/unit/common/test_extension.py +1 -4
  61. openstackclient/tests/unit/common/test_limits.py +2 -4
  62. openstackclient/tests/unit/common/test_project_cleanup.py +3 -10
  63. openstackclient/tests/unit/common/test_quota.py +18 -24
  64. openstackclient/tests/unit/compute/v2/fakes.py +24 -11
  65. openstackclient/tests/unit/compute/v2/test_agent.py +1 -1
  66. openstackclient/tests/unit/compute/v2/test_aggregate.py +62 -72
  67. openstackclient/tests/unit/compute/v2/test_console.py +18 -30
  68. openstackclient/tests/unit/compute/v2/test_flavor.py +85 -89
  69. openstackclient/tests/unit/compute/v2/test_host.py +12 -19
  70. openstackclient/tests/unit/compute/v2/test_hypervisor.py +23 -25
  71. openstackclient/tests/unit/compute/v2/test_hypervisor_stats.py +2 -6
  72. openstackclient/tests/unit/compute/v2/test_keypair.py +25 -39
  73. openstackclient/tests/unit/compute/v2/test_server.py +316 -365
  74. openstackclient/tests/unit/compute/v2/test_server_backup.py +5 -17
  75. openstackclient/tests/unit/compute/v2/test_server_event.py +23 -25
  76. openstackclient/tests/unit/compute/v2/test_server_group.py +41 -33
  77. openstackclient/tests/unit/compute/v2/test_server_image.py +6 -18
  78. openstackclient/tests/unit/compute/v2/test_server_migration.py +45 -45
  79. openstackclient/tests/unit/compute/v2/test_server_volume.py +15 -31
  80. openstackclient/tests/unit/compute/v2/test_service.py +51 -56
  81. openstackclient/tests/unit/compute/v2/test_usage.py +10 -13
  82. openstackclient/tests/unit/fakes.py +4 -0
  83. openstackclient/tests/unit/identity/v3/test_mappings.py +9 -4
  84. openstackclient/tests/unit/identity/v3/test_trust.py +0 -2
  85. openstackclient/tests/unit/image/v1/fakes.py +2 -1
  86. openstackclient/tests/unit/image/v1/test_image.py +1 -1
  87. openstackclient/tests/unit/image/v2/fakes.py +82 -0
  88. openstackclient/tests/unit/image/v2/test_cache.py +214 -0
  89. openstackclient/tests/unit/image/v2/test_image.py +62 -4
  90. openstackclient/tests/unit/image/v2/test_metadef_namespaces.py +5 -19
  91. openstackclient/tests/unit/image/v2/test_metadef_objects.py +162 -0
  92. openstackclient/tests/unit/image/v2/test_metadef_properties.py +227 -0
  93. openstackclient/tests/unit/integ/cli/test_shell.py +0 -2
  94. openstackclient/tests/unit/network/test_common.py +3 -3
  95. openstackclient/tests/unit/network/v2/fakes.py +1 -0
  96. openstackclient/tests/unit/network/v2/test_default_security_group_rule.py +1133 -0
  97. openstackclient/tests/unit/network/v2/test_floating_ip_compute.py +5 -13
  98. openstackclient/tests/unit/network/v2/test_floating_ip_pool_compute.py +1 -9
  99. openstackclient/tests/unit/network/v2/test_network.py +33 -0
  100. openstackclient/tests/unit/network/v2/test_network_compute.py +5 -11
  101. openstackclient/tests/unit/network/v2/test_network_trunk.py +6 -8
  102. openstackclient/tests/unit/network/v2/test_port.py +83 -38
  103. openstackclient/tests/unit/network/v2/test_security_group_compute.py +7 -15
  104. openstackclient/tests/unit/network/v2/test_security_group_rule_compute.py +19 -27
  105. openstackclient/tests/unit/network/v2/test_security_group_rule_network.py +3 -6
  106. openstackclient/tests/unit/network/v2/test_subnet.py +92 -0
  107. openstackclient/tests/unit/network/v2/test_subnet_pool.py +11 -13
  108. openstackclient/tests/unit/test_shell.py +1 -7
  109. openstackclient/tests/unit/utils.py +10 -4
  110. openstackclient/tests/unit/volume/v1/fakes.py +7 -1
  111. openstackclient/tests/unit/volume/v1/test_qos_specs.py +2 -2
  112. openstackclient/tests/unit/volume/v1/test_service.py +1 -1
  113. openstackclient/tests/unit/volume/v1/test_transfer_request.py +2 -2
  114. openstackclient/tests/unit/volume/v1/test_type.py +2 -4
  115. openstackclient/tests/unit/volume/v1/test_volume.py +5 -7
  116. openstackclient/tests/unit/volume/v1/test_volume_backup.py +4 -4
  117. openstackclient/tests/unit/volume/v2/fakes.py +32 -12
  118. openstackclient/tests/unit/volume/v2/test_backup_record.py +1 -1
  119. openstackclient/tests/unit/volume/v2/test_consistency_group.py +4 -6
  120. openstackclient/tests/unit/volume/v2/test_consistency_group_snapshot.py +2 -4
  121. openstackclient/tests/unit/volume/v2/test_qos_specs.py +2 -2
  122. openstackclient/tests/unit/volume/v2/test_service.py +1 -1
  123. openstackclient/tests/unit/volume/v2/test_volume.py +78 -16
  124. openstackclient/tests/unit/volume/v2/test_volume_backend.py +10 -22
  125. openstackclient/tests/unit/volume/v2/test_volume_backup.py +76 -89
  126. openstackclient/tests/unit/volume/v2/test_volume_host.py +1 -1
  127. openstackclient/tests/unit/volume/v2/test_volume_snapshot.py +5 -7
  128. openstackclient/tests/unit/volume/v2/test_volume_transfer_request.py +4 -8
  129. openstackclient/tests/unit/volume/v2/test_volume_type.py +164 -24
  130. openstackclient/tests/unit/volume/v3/fakes.py +91 -15
  131. openstackclient/tests/unit/volume/v3/test_block_storage_cleanup.py +3 -7
  132. openstackclient/tests/unit/volume/v3/test_block_storage_cluster.py +11 -31
  133. openstackclient/tests/unit/volume/v3/test_block_storage_log_level.py +6 -16
  134. openstackclient/tests/unit/volume/v3/test_block_storage_manage.py +219 -157
  135. openstackclient/tests/unit/volume/v3/test_block_storage_resource_filter.py +32 -23
  136. openstackclient/tests/unit/volume/v3/test_volume.py +50 -48
  137. openstackclient/tests/unit/volume/v3/test_volume_attachment.py +17 -47
  138. openstackclient/tests/unit/volume/v3/test_volume_group.py +23 -65
  139. openstackclient/tests/unit/volume/v3/test_volume_group_snapshot.py +88 -77
  140. openstackclient/tests/unit/volume/v3/test_volume_group_type.py +14 -42
  141. openstackclient/tests/unit/volume/v3/test_volume_message.py +10 -28
  142. openstackclient/volume/v1/volume.py +2 -14
  143. openstackclient/volume/v2/volume.py +30 -15
  144. openstackclient/volume/v2/volume_backend.py +10 -18
  145. openstackclient/volume/v2/volume_backup.py +18 -15
  146. openstackclient/volume/v2/volume_snapshot.py +2 -12
  147. openstackclient/volume/v2/volume_type.py +211 -14
  148. openstackclient/volume/v3/block_storage_manage.py +72 -11
  149. openstackclient/volume/v3/block_storage_resource_filter.py +33 -11
  150. openstackclient/volume/v3/volume_attachment.py +2 -14
  151. openstackclient/volume/v3/volume_group_snapshot.py +27 -27
  152. openstackclient/volume/v3/volume_message.py +2 -13
  153. {python_openstackclient-6.3.0.dist-info → python_openstackclient-6.5.0.dist-info}/AUTHORS +11 -0
  154. {python_openstackclient-6.3.0.dist-info → python_openstackclient-6.5.0.dist-info}/METADATA +6 -5
  155. {python_openstackclient-6.3.0.dist-info → python_openstackclient-6.5.0.dist-info}/RECORD +160 -151
  156. {python_openstackclient-6.3.0.dist-info → python_openstackclient-6.5.0.dist-info}/entry_points.txt +23 -5
  157. python_openstackclient-6.5.0.dist-info/pbr.json +1 -0
  158. openstackclient/tests/unit/common/test_parseractions.py +0 -233
  159. python_openstackclient-6.3.0.dist-info/pbr.json +0 -1
  160. {python_openstackclient-6.3.0.dist-info → python_openstackclient-6.5.0.dist-info}/LICENSE +0 -0
  161. {python_openstackclient-6.3.0.dist-info → python_openstackclient-6.5.0.dist-info}/WHEEL +0 -0
  162. {python_openstackclient-6.3.0.dist-info → python_openstackclient-6.5.0.dist-info}/top_level.txt +0 -0
@@ -55,29 +55,15 @@ class TestAggregate(compute_fakes.TestComputev2):
55
55
  fake_ag.uuid,
56
56
  )
57
57
 
58
- def setUp(self):
59
- super(TestAggregate, self).setUp()
60
-
61
- # Get a shortcut to the AggregateManager Mock
62
- self.app.client_manager.sdk_connection = mock.Mock()
63
- self.app.client_manager.sdk_connection.compute = mock.Mock()
64
- self.sdk_client = self.app.client_manager.sdk_connection.compute
65
- self.sdk_client.aggregates = mock.Mock()
66
- self.sdk_client.find_aggregate = mock.Mock()
67
- self.sdk_client.create_aggregate = mock.Mock()
68
- self.sdk_client.update_aggregate = mock.Mock()
69
- self.sdk_client.update_aggregate = mock.Mock()
70
- self.sdk_client.set_aggregate_metadata = mock.Mock()
71
- self.sdk_client.add_host_to_aggregate = mock.Mock()
72
- self.sdk_client.remove_host_from_aggregate = mock.Mock()
73
-
74
58
 
75
59
  class TestAggregateAddHost(TestAggregate):
76
60
  def setUp(self):
77
61
  super(TestAggregateAddHost, self).setUp()
78
62
 
79
- self.sdk_client.find_aggregate.return_value = self.fake_ag
80
- self.sdk_client.add_host_to_aggregate.return_value = self.fake_ag
63
+ self.compute_sdk_client.find_aggregate.return_value = self.fake_ag
64
+ self.compute_sdk_client.add_host_to_aggregate.return_value = (
65
+ self.fake_ag
66
+ )
81
67
  self.cmd = aggregate.AddAggregateHost(self.app, None)
82
68
 
83
69
  def test_aggregate_add_host(self):
@@ -91,10 +77,10 @@ class TestAggregateAddHost(TestAggregate):
91
77
  ]
92
78
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
93
79
  columns, data = self.cmd.take_action(parsed_args)
94
- self.sdk_client.find_aggregate.assert_called_once_with(
80
+ self.compute_sdk_client.find_aggregate.assert_called_once_with(
95
81
  parsed_args.aggregate, ignore_missing=False
96
82
  )
97
- self.sdk_client.add_host_to_aggregate.assert_called_once_with(
83
+ self.compute_sdk_client.add_host_to_aggregate.assert_called_once_with(
98
84
  self.fake_ag.id, parsed_args.host
99
85
  )
100
86
  self.assertEqual(self.columns, columns)
@@ -105,8 +91,10 @@ class TestAggregateCreate(TestAggregate):
105
91
  def setUp(self):
106
92
  super(TestAggregateCreate, self).setUp()
107
93
 
108
- self.sdk_client.create_aggregate.return_value = self.fake_ag
109
- self.sdk_client.set_aggregate_metadata.return_value = self.fake_ag
94
+ self.compute_sdk_client.create_aggregate.return_value = self.fake_ag
95
+ self.compute_sdk_client.set_aggregate_metadata.return_value = (
96
+ self.fake_ag
97
+ )
110
98
  self.cmd = aggregate.CreateAggregate(self.app, None)
111
99
 
112
100
  def test_aggregate_create(self):
@@ -118,7 +106,7 @@ class TestAggregateCreate(TestAggregate):
118
106
  ]
119
107
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
120
108
  columns, data = self.cmd.take_action(parsed_args)
121
- self.sdk_client.create_aggregate.assert_called_once_with(
109
+ self.compute_sdk_client.create_aggregate.assert_called_once_with(
122
110
  name=parsed_args.name
123
111
  )
124
112
  self.assertEqual(self.columns, columns)
@@ -137,7 +125,7 @@ class TestAggregateCreate(TestAggregate):
137
125
 
138
126
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
139
127
  columns, data = self.cmd.take_action(parsed_args)
140
- self.sdk_client.create_aggregate.assert_called_once_with(
128
+ self.compute_sdk_client.create_aggregate.assert_called_once_with(
141
129
  name=parsed_args.name, availability_zone=parsed_args.zone
142
130
  )
143
131
  self.assertEqual(self.columns, columns)
@@ -157,10 +145,10 @@ class TestAggregateCreate(TestAggregate):
157
145
  ]
158
146
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
159
147
  columns, data = self.cmd.take_action(parsed_args)
160
- self.sdk_client.create_aggregate.assert_called_once_with(
148
+ self.compute_sdk_client.create_aggregate.assert_called_once_with(
161
149
  name=parsed_args.name
162
150
  )
163
- self.sdk_client.set_aggregate_metadata.assert_called_once_with(
151
+ self.compute_sdk_client.set_aggregate_metadata.assert_called_once_with(
164
152
  self.fake_ag.id, parsed_args.properties
165
153
  )
166
154
  self.assertEqual(self.columns, columns)
@@ -173,7 +161,7 @@ class TestAggregateDelete(TestAggregate):
173
161
  def setUp(self):
174
162
  super(TestAggregateDelete, self).setUp()
175
163
 
176
- self.sdk_client.find_aggregate = compute_fakes.get_aggregates(
164
+ self.compute_sdk_client.find_aggregate = compute_fakes.get_aggregates(
177
165
  self.fake_ags
178
166
  )
179
167
  self.cmd = aggregate.DeleteAggregate(self.app, None)
@@ -185,10 +173,10 @@ class TestAggregateDelete(TestAggregate):
185
173
  ]
186
174
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
187
175
  self.cmd.take_action(parsed_args)
188
- self.sdk_client.find_aggregate.assert_called_once_with(
176
+ self.compute_sdk_client.find_aggregate.assert_called_once_with(
189
177
  self.fake_ags[0].id, ignore_missing=False
190
178
  )
191
- self.sdk_client.delete_aggregate.assert_called_once_with(
179
+ self.compute_sdk_client.delete_aggregate.assert_called_once_with(
192
180
  self.fake_ags[0].id, ignore_missing=False
193
181
  )
194
182
 
@@ -206,8 +194,8 @@ class TestAggregateDelete(TestAggregate):
206
194
  calls = []
207
195
  for a in self.fake_ags:
208
196
  calls.append(call(a.id, ignore_missing=False))
209
- self.sdk_client.find_aggregate.assert_has_calls(calls)
210
- self.sdk_client.delete_aggregate.assert_has_calls(calls)
197
+ self.compute_sdk_client.find_aggregate.assert_has_calls(calls)
198
+ self.compute_sdk_client.delete_aggregate.assert_has_calls(calls)
211
199
 
212
200
  def test_delete_multiple_agggregates_with_exception(self):
213
201
  arglist = [
@@ -220,7 +208,7 @@ class TestAggregateDelete(TestAggregate):
220
208
 
221
209
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
222
210
 
223
- self.sdk_client.find_aggregate.side_effect = [
211
+ self.compute_sdk_client.find_aggregate.side_effect = [
224
212
  self.fake_ags[0],
225
213
  sdk_exceptions.NotFoundException,
226
214
  ]
@@ -233,8 +221,8 @@ class TestAggregateDelete(TestAggregate):
233
221
  calls = []
234
222
  for a in arglist:
235
223
  calls.append(call(a, ignore_missing=False))
236
- self.sdk_client.find_aggregate.assert_has_calls(calls)
237
- self.sdk_client.delete_aggregate.assert_called_with(
224
+ self.compute_sdk_client.find_aggregate.assert_has_calls(calls)
225
+ self.compute_sdk_client.delete_aggregate.assert_called_with(
238
226
  self.fake_ags[0].id, ignore_missing=False
239
227
  )
240
228
 
@@ -281,7 +269,7 @@ class TestAggregateList(TestAggregate):
281
269
  def setUp(self):
282
270
  super(TestAggregateList, self).setUp()
283
271
 
284
- self.sdk_client.aggregates.return_value = [self.fake_ag]
272
+ self.compute_sdk_client.aggregates.return_value = [self.fake_ag]
285
273
  self.cmd = aggregate.ListAggregate(self.app, None)
286
274
 
287
275
  def test_aggregate_list(self):
@@ -309,8 +297,10 @@ class TestAggregateRemoveHost(TestAggregate):
309
297
  def setUp(self):
310
298
  super(TestAggregateRemoveHost, self).setUp()
311
299
 
312
- self.sdk_client.find_aggregate.return_value = self.fake_ag
313
- self.sdk_client.remove_host_from_aggregate.return_value = self.fake_ag
300
+ self.compute_sdk_client.find_aggregate.return_value = self.fake_ag
301
+ self.compute_sdk_client.remove_host_from_aggregate.return_value = (
302
+ self.fake_ag
303
+ )
314
304
  self.cmd = aggregate.RemoveAggregateHost(self.app, None)
315
305
 
316
306
  def test_aggregate_remove_host(self):
@@ -324,10 +314,10 @@ class TestAggregateRemoveHost(TestAggregate):
324
314
  ]
325
315
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
326
316
  columns, data = self.cmd.take_action(parsed_args)
327
- self.sdk_client.find_aggregate.assert_called_once_with(
317
+ self.compute_sdk_client.find_aggregate.assert_called_once_with(
328
318
  parsed_args.aggregate, ignore_missing=False
329
319
  )
330
- self.sdk_client.remove_host_from_aggregate.assert_called_once_with(
320
+ self.compute_sdk_client.remove_host_from_aggregate.assert_called_once_with(
331
321
  self.fake_ag.id, parsed_args.host
332
322
  )
333
323
  self.assertEqual(self.columns, columns)
@@ -338,7 +328,7 @@ class TestAggregateSet(TestAggregate):
338
328
  def setUp(self):
339
329
  super(TestAggregateSet, self).setUp()
340
330
 
341
- self.sdk_client.find_aggregate.return_value = self.fake_ag
331
+ self.compute_sdk_client.find_aggregate.return_value = self.fake_ag
342
332
  self.cmd = aggregate.SetAggregate(self.app, None)
343
333
 
344
334
  def test_aggregate_set_no_option(self):
@@ -351,11 +341,11 @@ class TestAggregateSet(TestAggregate):
351
341
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
352
342
  result = self.cmd.take_action(parsed_args)
353
343
 
354
- self.sdk_client.find_aggregate.assert_called_once_with(
344
+ self.compute_sdk_client.find_aggregate.assert_called_once_with(
355
345
  parsed_args.aggregate, ignore_missing=False
356
346
  )
357
- self.assertNotCalled(self.sdk_client.update_aggregate)
358
- self.assertNotCalled(self.sdk_client.set_aggregate_metadata)
347
+ self.assertNotCalled(self.compute_sdk_client.update_aggregate)
348
+ self.assertNotCalled(self.compute_sdk_client.set_aggregate_metadata)
359
349
  self.assertIsNone(result)
360
350
 
361
351
  def test_aggregate_set_with_name(self):
@@ -371,13 +361,13 @@ class TestAggregateSet(TestAggregate):
371
361
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
372
362
  result = self.cmd.take_action(parsed_args)
373
363
 
374
- self.sdk_client.find_aggregate.assert_called_once_with(
364
+ self.compute_sdk_client.find_aggregate.assert_called_once_with(
375
365
  parsed_args.aggregate, ignore_missing=False
376
366
  )
377
- self.sdk_client.update_aggregate.assert_called_once_with(
367
+ self.compute_sdk_client.update_aggregate.assert_called_once_with(
378
368
  self.fake_ag.id, name=parsed_args.name
379
369
  )
380
- self.assertNotCalled(self.sdk_client.set_aggregate_metadata)
370
+ self.assertNotCalled(self.compute_sdk_client.set_aggregate_metadata)
381
371
  self.assertIsNone(result)
382
372
 
383
373
  def test_aggregate_set_with_zone(self):
@@ -393,13 +383,13 @@ class TestAggregateSet(TestAggregate):
393
383
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
394
384
  result = self.cmd.take_action(parsed_args)
395
385
 
396
- self.sdk_client.find_aggregate.assert_called_once_with(
386
+ self.compute_sdk_client.find_aggregate.assert_called_once_with(
397
387
  parsed_args.aggregate, ignore_missing=False
398
388
  )
399
- self.sdk_client.update_aggregate.assert_called_once_with(
389
+ self.compute_sdk_client.update_aggregate.assert_called_once_with(
400
390
  self.fake_ag.id, availability_zone=parsed_args.zone
401
391
  )
402
- self.assertNotCalled(self.sdk_client.set_aggregate_metadata)
392
+ self.assertNotCalled(self.compute_sdk_client.set_aggregate_metadata)
403
393
  self.assertIsNone(result)
404
394
 
405
395
  def test_aggregate_set_with_property(self):
@@ -417,11 +407,11 @@ class TestAggregateSet(TestAggregate):
417
407
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
418
408
  result = self.cmd.take_action(parsed_args)
419
409
 
420
- self.sdk_client.find_aggregate.assert_called_once_with(
410
+ self.compute_sdk_client.find_aggregate.assert_called_once_with(
421
411
  parsed_args.aggregate, ignore_missing=False
422
412
  )
423
- self.assertNotCalled(self.sdk_client.update_aggregate)
424
- self.sdk_client.set_aggregate_metadata.assert_called_once_with(
413
+ self.assertNotCalled(self.compute_sdk_client.update_aggregate)
414
+ self.compute_sdk_client.set_aggregate_metadata.assert_called_once_with(
425
415
  self.fake_ag.id, parsed_args.properties
426
416
  )
427
417
  self.assertIsNone(result)
@@ -440,11 +430,11 @@ class TestAggregateSet(TestAggregate):
440
430
  ]
441
431
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
442
432
  result = self.cmd.take_action(parsed_args)
443
- self.sdk_client.find_aggregate.assert_called_once_with(
433
+ self.compute_sdk_client.find_aggregate.assert_called_once_with(
444
434
  parsed_args.aggregate, ignore_missing=False
445
435
  )
446
- self.assertNotCalled(self.sdk_client.update_aggregate)
447
- self.sdk_client.set_aggregate_metadata.assert_called_once_with(
436
+ self.assertNotCalled(self.compute_sdk_client.update_aggregate)
437
+ self.compute_sdk_client.set_aggregate_metadata.assert_called_once_with(
448
438
  self.fake_ag.id, {'key1': None, 'key2': 'value2'}
449
439
  )
450
440
  self.assertIsNone(result)
@@ -460,11 +450,11 @@ class TestAggregateSet(TestAggregate):
460
450
  ]
461
451
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
462
452
  result = self.cmd.take_action(parsed_args)
463
- self.sdk_client.find_aggregate.assert_called_once_with(
453
+ self.compute_sdk_client.find_aggregate.assert_called_once_with(
464
454
  parsed_args.aggregate, ignore_missing=False
465
455
  )
466
- self.assertNotCalled(self.sdk_client.update_aggregate)
467
- self.sdk_client.set_aggregate_metadata.assert_called_once_with(
456
+ self.assertNotCalled(self.compute_sdk_client.update_aggregate)
457
+ self.compute_sdk_client.set_aggregate_metadata.assert_called_once_with(
468
458
  self.fake_ag.id, {'key1': None}
469
459
  )
470
460
  self.assertIsNone(result)
@@ -483,13 +473,13 @@ class TestAggregateSet(TestAggregate):
483
473
  ]
484
474
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
485
475
  result = self.cmd.take_action(parsed_args)
486
- self.sdk_client.find_aggregate.assert_called_once_with(
476
+ self.compute_sdk_client.find_aggregate.assert_called_once_with(
487
477
  parsed_args.aggregate, ignore_missing=False
488
478
  )
489
- self.sdk_client.update_aggregate.assert_called_once_with(
479
+ self.compute_sdk_client.update_aggregate.assert_called_once_with(
490
480
  self.fake_ag.id, availability_zone=parsed_args.zone
491
481
  )
492
- self.sdk_client.set_aggregate_metadata.assert_called_once_with(
482
+ self.compute_sdk_client.set_aggregate_metadata.assert_called_once_with(
493
483
  self.fake_ag.id, {'key1': None}
494
484
  )
495
485
  self.assertIsNone(result)
@@ -525,7 +515,7 @@ class TestAggregateShow(TestAggregate):
525
515
  def setUp(self):
526
516
  super(TestAggregateShow, self).setUp()
527
517
 
528
- self.sdk_client.find_aggregate.return_value = self.fake_ag
518
+ self.compute_sdk_client.find_aggregate.return_value = self.fake_ag
529
519
  self.cmd = aggregate.ShowAggregate(self.app, None)
530
520
 
531
521
  def test_aggregate_show(self):
@@ -537,7 +527,7 @@ class TestAggregateShow(TestAggregate):
537
527
  ]
538
528
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
539
529
  columns, data = self.cmd.take_action(parsed_args)
540
- self.sdk_client.find_aggregate.assert_called_once_with(
530
+ self.compute_sdk_client.find_aggregate.assert_called_once_with(
541
531
  parsed_args.aggregate, ignore_missing=False
542
532
  )
543
533
 
@@ -549,7 +539,7 @@ class TestAggregateUnset(TestAggregate):
549
539
  def setUp(self):
550
540
  super(TestAggregateUnset, self).setUp()
551
541
 
552
- self.sdk_client.find_aggregate.return_value = self.fake_ag
542
+ self.compute_sdk_client.find_aggregate.return_value = self.fake_ag
553
543
  self.cmd = aggregate.UnsetAggregate(self.app, None)
554
544
 
555
545
  def test_aggregate_unset(self):
@@ -565,7 +555,7 @@ class TestAggregateUnset(TestAggregate):
565
555
 
566
556
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
567
557
  result = self.cmd.take_action(parsed_args)
568
- self.sdk_client.set_aggregate_metadata.assert_called_once_with(
558
+ self.compute_sdk_client.set_aggregate_metadata.assert_called_once_with(
569
559
  self.fake_ag.id, {'unset_key': None}
570
560
  )
571
561
  self.assertIsNone(result)
@@ -585,7 +575,7 @@ class TestAggregateUnset(TestAggregate):
585
575
 
586
576
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
587
577
  result = self.cmd.take_action(parsed_args)
588
- self.sdk_client.set_aggregate_metadata.assert_called_once_with(
578
+ self.compute_sdk_client.set_aggregate_metadata.assert_called_once_with(
589
579
  self.fake_ag.id, {'unset_key1': None, 'unset_key2': None}
590
580
  )
591
581
  self.assertIsNone(result)
@@ -600,7 +590,7 @@ class TestAggregateUnset(TestAggregate):
600
590
  ]
601
591
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
602
592
  result = self.cmd.take_action(parsed_args)
603
- self.assertNotCalled(self.sdk_client.set_aggregate_metadata)
593
+ self.assertNotCalled(self.compute_sdk_client.set_aggregate_metadata)
604
594
  self.assertIsNone(result)
605
595
 
606
596
 
@@ -610,7 +600,7 @@ class TestAggregateCacheImage(TestAggregate):
610
600
  def setUp(self):
611
601
  super(TestAggregateCacheImage, self).setUp()
612
602
 
613
- self.sdk_client.find_aggregate.return_value = self.fake_ag
603
+ self.compute_sdk_client.find_aggregate.return_value = self.fake_ag
614
604
  self.find_image_mock = mock.Mock(side_effect=self.images)
615
605
  self.app.client_manager.sdk_connection.image.find_image = (
616
606
  self.find_image_mock
@@ -639,10 +629,10 @@ class TestAggregateCacheImage(TestAggregate):
639
629
  ]
640
630
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
641
631
  self.cmd.take_action(parsed_args)
642
- self.sdk_client.find_aggregate.assert_called_once_with(
632
+ self.compute_sdk_client.find_aggregate.assert_called_once_with(
643
633
  parsed_args.aggregate, ignore_missing=False
644
634
  )
645
- self.sdk_client.aggregate_precache_images.assert_called_once_with(
635
+ self.compute_sdk_client.aggregate_precache_images.assert_called_once_with(
646
636
  self.fake_ag.id, [self.images[0].id]
647
637
  )
648
638
 
@@ -659,9 +649,9 @@ class TestAggregateCacheImage(TestAggregate):
659
649
  ]
660
650
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
661
651
  self.cmd.take_action(parsed_args)
662
- self.sdk_client.find_aggregate.assert_called_once_with(
652
+ self.compute_sdk_client.find_aggregate.assert_called_once_with(
663
653
  parsed_args.aggregate, ignore_missing=False
664
654
  )
665
- self.sdk_client.aggregate_precache_images.assert_called_once_with(
655
+ self.compute_sdk_client.aggregate_precache_images.assert_called_once_with(
666
656
  self.fake_ag.id, [self.images[0].id, self.images[1].id]
667
657
  )
@@ -20,25 +20,13 @@ from openstackclient.tests.unit.compute.v2 import fakes as compute_fakes
20
20
  from openstackclient.tests.unit import utils
21
21
 
22
22
 
23
- class TestConsole(compute_fakes.TestComputev2):
24
- def setUp(self):
25
- super(TestConsole, self).setUp()
26
-
27
- # SDK mock
28
- self.app.client_manager.sdk_connection = mock.Mock()
29
- self.app.client_manager.sdk_connection.compute = mock.Mock()
30
- self.sdk_client = self.app.client_manager.sdk_connection.compute
31
- self.sdk_client.find_server = mock.Mock()
32
- self.sdk_client.get_server_console_output = mock.Mock()
33
-
34
-
35
- class TestConsoleLog(TestConsole):
23
+ class TestConsoleLog(compute_fakes.TestComputev2):
36
24
  _server = compute_fakes.create_one_server()
37
25
 
38
26
  def setUp(self):
39
27
  super(TestConsoleLog, self).setUp()
40
28
 
41
- self.sdk_client.find_server.return_value = self._server
29
+ self.compute_sdk_client.find_server.return_value = self._server
42
30
 
43
31
  self.cmd = console.ShowConsoleLog(self.app, None)
44
32
 
@@ -59,13 +47,13 @@ class TestConsoleLog(TestConsole):
59
47
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
60
48
 
61
49
  output = {'output': '1st line\n2nd line\n'}
62
- self.sdk_client.get_server_console_output.return_value = output
50
+ self.compute_sdk_client.get_server_console_output.return_value = output
63
51
  self.cmd.take_action(parsed_args)
64
52
 
65
- self.sdk_client.find_server.assert_called_with(
53
+ self.compute_sdk_client.find_server.assert_called_with(
66
54
  name_or_id='fake_server', ignore_missing=False
67
55
  )
68
- self.sdk_client.get_server_console_output.assert_called_with(
56
+ self.compute_sdk_client.get_server_console_output.assert_called_with(
69
57
  self._server.id, length=None
70
58
  )
71
59
  stdout = self.app.stdout.content
@@ -77,29 +65,29 @@ class TestConsoleLog(TestConsole):
77
65
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
78
66
 
79
67
  output = {'output': '1st line\n2nd line'}
80
- self.sdk_client.get_server_console_output.return_value = output
68
+ self.compute_sdk_client.get_server_console_output.return_value = output
81
69
  self.cmd.take_action(parsed_args)
82
70
 
83
- self.sdk_client.find_server.assert_called_with(
71
+ self.compute_sdk_client.find_server.assert_called_with(
84
72
  name_or_id='fake_server', ignore_missing=False
85
73
  )
86
- self.sdk_client.get_server_console_output.assert_called_with(
74
+ self.compute_sdk_client.get_server_console_output.assert_called_with(
87
75
  self._server.id, length=15
88
76
  )
89
77
 
90
78
 
91
- class TestConsoleUrlShow(TestConsole):
79
+ class TestConsoleUrlShow(compute_fakes.TestComputev2):
92
80
  _server = compute_fakes.create_one_server()
93
81
 
94
82
  def setUp(self):
95
83
  super(TestConsoleUrlShow, self).setUp()
96
- self.sdk_client.find_server.return_value = self._server
84
+ self.compute_sdk_client.find_server.return_value = self._server
97
85
  fake_console_data = {
98
86
  'url': 'http://localhost',
99
87
  'protocol': 'fake_protocol',
100
88
  'type': 'fake_type',
101
89
  }
102
- self.sdk_client.create_console = mock.Mock(
90
+ self.compute_sdk_client.create_console = mock.Mock(
103
91
  return_value=fake_console_data
104
92
  )
105
93
 
@@ -126,7 +114,7 @@ class TestConsoleUrlShow(TestConsole):
126
114
  ]
127
115
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
128
116
  columns, data = self.cmd.take_action(parsed_args)
129
- self.sdk_client.create_console.assert_called_once_with(
117
+ self.compute_sdk_client.create_console.assert_called_once_with(
130
118
  self._server.id, console_type='novnc'
131
119
  )
132
120
  self.assertEqual(self.columns, columns)
@@ -143,7 +131,7 @@ class TestConsoleUrlShow(TestConsole):
143
131
  ]
144
132
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
145
133
  columns, data = self.cmd.take_action(parsed_args)
146
- self.sdk_client.create_console.assert_called_once_with(
134
+ self.compute_sdk_client.create_console.assert_called_once_with(
147
135
  self._server.id, console_type='novnc'
148
136
  )
149
137
  self.assertEqual(self.columns, columns)
@@ -160,7 +148,7 @@ class TestConsoleUrlShow(TestConsole):
160
148
  ]
161
149
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
162
150
  columns, data = self.cmd.take_action(parsed_args)
163
- self.sdk_client.create_console.assert_called_once_with(
151
+ self.compute_sdk_client.create_console.assert_called_once_with(
164
152
  self._server.id, console_type='xvpvnc'
165
153
  )
166
154
  self.assertEqual(self.columns, columns)
@@ -177,7 +165,7 @@ class TestConsoleUrlShow(TestConsole):
177
165
  ]
178
166
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
179
167
  columns, data = self.cmd.take_action(parsed_args)
180
- self.sdk_client.create_console.assert_called_once_with(
168
+ self.compute_sdk_client.create_console.assert_called_once_with(
181
169
  self._server.id, console_type='spice-html5'
182
170
  )
183
171
  self.assertEqual(self.columns, columns)
@@ -194,7 +182,7 @@ class TestConsoleUrlShow(TestConsole):
194
182
  ]
195
183
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
196
184
  columns, data = self.cmd.take_action(parsed_args)
197
- self.sdk_client.create_console.assert_called_once_with(
185
+ self.compute_sdk_client.create_console.assert_called_once_with(
198
186
  self._server.id, console_type='rdp-html5'
199
187
  )
200
188
  self.assertEqual(self.columns, columns)
@@ -211,7 +199,7 @@ class TestConsoleUrlShow(TestConsole):
211
199
  ]
212
200
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
213
201
  columns, data = self.cmd.take_action(parsed_args)
214
- self.sdk_client.create_console.assert_called_once_with(
202
+ self.compute_sdk_client.create_console.assert_called_once_with(
215
203
  self._server.id, console_type='serial'
216
204
  )
217
205
  self.assertEqual(self.columns, columns)
@@ -228,7 +216,7 @@ class TestConsoleUrlShow(TestConsole):
228
216
  ]
229
217
  parsed_args = self.check_parser(self.cmd, arglist, verifylist)
230
218
  columns, data = self.cmd.take_action(parsed_args)
231
- self.sdk_client.create_console.assert_called_once_with(
219
+ self.compute_sdk_client.create_console.assert_called_once_with(
232
220
  self._server.id, console_type='webmks'
233
221
  )
234
222
  self.assertEqual(self.columns, columns)