1010# License for the specific language governing permissions and limitations
1111# under the License.
1212
13- from unittest import mock
14-
13+ from openstack . block_storage . v3 import group_type as _group_type
14+ from openstack . test import fakes as sdk_fakes
1515from osc_lib .cli import format_columns
1616from osc_lib import exceptions
1717
2222class TestVolumeGroupType (volume_fakes .TestVolume ):
2323 def setUp (self ):
2424 super ().setUp ()
25-
26- self .volume_group_types_mock = self .volume_client .group_types
27- self .volume_group_types_mock .reset_mock ()
25+ self .set_volume_api_version ('3.11' )
2826
2927
3028class TestVolumeGroupTypeCreate (TestVolumeGroupType ):
31- fake_volume_group_type = volume_fakes .create_one_volume_group_type ()
29+ fake_volume_group_type = sdk_fakes .generate_fake_resource (
30+ _group_type .GroupType
31+ )
3232
3333 columns = (
3434 'ID' ,
@@ -48,15 +48,13 @@ class TestVolumeGroupTypeCreate(TestVolumeGroupType):
4848 def setUp (self ):
4949 super ().setUp ()
5050
51- self .volume_group_types_mock . create .return_value = (
51+ self .volume_sdk_client . create_group_type .return_value = (
5252 self .fake_volume_group_type
5353 )
5454
5555 self .cmd = volume_group_type .CreateVolumeGroupType (self .app , None )
5656
5757 def test_volume_group_type_create (self ):
58- self .set_volume_api_version ('3.11' )
59-
6058 arglist = [
6159 self .fake_volume_group_type .name ,
6260 ]
@@ -69,15 +67,15 @@ def test_volume_group_type_create(self):
6967
7068 columns , data = self .cmd .take_action (parsed_args )
7169
72- self .volume_group_types_mock .create .assert_called_once_with (
73- self .fake_volume_group_type .name , None , True
70+ self .volume_sdk_client .create_group_type .assert_called_once_with (
71+ name = self .fake_volume_group_type .name ,
72+ description = None ,
73+ is_public = True ,
7474 )
7575 self .assertEqual (self .columns , columns )
7676 self .assertCountEqual (self .data , data )
7777
7878 def test_volume_group_type_create_with_options (self ):
79- self .set_volume_api_version ('3.11' )
80-
8179 arglist = [
8280 self .fake_volume_group_type .name ,
8381 '--description' ,
@@ -93,8 +91,10 @@ def test_volume_group_type_create_with_options(self):
9391
9492 columns , data = self .cmd .take_action (parsed_args )
9593
96- self .volume_group_types_mock .create .assert_called_once_with (
97- self .fake_volume_group_type .name , 'foo' , False
94+ self .volume_sdk_client .create_group_type .assert_called_once_with (
95+ name = self .fake_volume_group_type .name ,
96+ description = 'foo' ,
97+ is_public = False ,
9898 )
9999 self .assertEqual (self .columns , columns )
100100 self .assertCountEqual (self .data , data )
@@ -121,21 +121,21 @@ def test_volume_group_type_create_pre_v311(self):
121121
122122
123123class TestVolumeGroupTypeDelete (TestVolumeGroupType ):
124- fake_volume_group_type = volume_fakes .create_one_volume_group_type ()
124+ fake_volume_group_type = sdk_fakes .generate_fake_resource (
125+ _group_type .GroupType
126+ )
125127
126128 def setUp (self ):
127129 super ().setUp ()
128130
129- self .volume_group_types_mock . get .return_value = (
131+ self .volume_sdk_client . find_group_type .return_value = (
130132 self .fake_volume_group_type
131133 )
132- self .volume_group_types_mock . delete .return_value = None
134+ self .volume_sdk_client . delete_group_type .return_value = None
133135
134136 self .cmd = volume_group_type .DeleteVolumeGroupType (self .app , None )
135137
136138 def test_volume_group_type_delete (self ):
137- self .set_volume_api_version ('3.11' )
138-
139139 arglist = [
140140 self .fake_volume_group_type .id ,
141141 ]
@@ -146,8 +146,12 @@ def test_volume_group_type_delete(self):
146146
147147 result = self .cmd .take_action (parsed_args )
148148
149- self .volume_group_types_mock . delete .assert_called_once_with (
149+ self .volume_sdk_client . find_group_type .assert_called_once_with (
150150 self .fake_volume_group_type .id ,
151+ ignore_missing = False ,
152+ )
153+ self .volume_sdk_client .delete_group_type .assert_called_once_with (
154+ self .fake_volume_group_type ,
151155 )
152156 self .assertIsNone (result )
153157
@@ -171,12 +175,8 @@ def test_volume_group_type_delete_pre_v311(self):
171175
172176
173177class TestVolumeGroupTypeSet (TestVolumeGroupType ):
174- fake_volume_group_type = volume_fakes .create_one_volume_group_type (
175- methods = {
176- 'get_keys' : {'foo' : 'bar' },
177- 'set_keys' : None ,
178- 'unset_keys' : None ,
179- },
178+ fake_volume_group_type = sdk_fakes .generate_fake_resource (
179+ _group_type .GroupType , group_specs = {'foo' : 'bar' }
180180 )
181181
182182 columns = (
@@ -197,20 +197,16 @@ class TestVolumeGroupTypeSet(TestVolumeGroupType):
197197 def setUp (self ):
198198 super ().setUp ()
199199
200- self .volume_group_types_mock . get .return_value = (
200+ self .volume_sdk_client . find_group_type .return_value = (
201201 self .fake_volume_group_type
202202 )
203- self .volume_group_types_mock . update .return_value = (
203+ self .volume_sdk_client . update_group_type .return_value = (
204204 self .fake_volume_group_type
205205 )
206206
207207 self .cmd = volume_group_type .SetVolumeGroupType (self .app , None )
208208
209209 def test_volume_group_type_set (self ):
210- self .set_volume_api_version ('3.11' )
211-
212- self .fake_volume_group_type .set_keys .return_value = None
213-
214210 arglist = [
215211 self .fake_volume_group_type .id ,
216212 '--name' ,
@@ -233,21 +229,20 @@ def test_volume_group_type_set(self):
233229
234230 columns , data = self .cmd .take_action (parsed_args )
235231
236- self .volume_group_types_mock . update .assert_called_once_with (
232+ self .volume_sdk_client . update_group_type .assert_called_once_with (
237233 self .fake_volume_group_type .id ,
238234 name = 'foo' ,
239235 description = 'hello, world' ,
240236 is_public = True ,
241237 )
242- self .fake_volume_group_type .set_keys .assert_called_once_with (
238+ self .volume_sdk_client .create_group_type_group_specs .assert_called_once_with (
239+ self .fake_volume_group_type .id ,
243240 {'fizz' : 'buzz' },
244241 )
245242 self .assertEqual (self .columns , columns )
246243 self .assertCountEqual (self .data , data )
247244
248245 def test_volume_group_type_with_no_property_option (self ):
249- self .set_volume_api_version ('3.11' )
250-
251246 arglist = [
252247 self .fake_volume_group_type .id ,
253248 '--no-property' ,
@@ -266,12 +261,13 @@ def test_volume_group_type_with_no_property_option(self):
266261
267262 columns , data = self .cmd .take_action (parsed_args )
268263
269- self .volume_group_types_mock .get .assert_called_once_with (
270- self .fake_volume_group_type .id
264+ self .volume_sdk_client .delete_group_type_group_specs_property .assert_called_once_with (
265+ self .fake_volume_group_type .id ,
266+ 'foo' ,
271267 )
272- self .fake_volume_group_type . get_keys .assert_called_once_with ()
273- self .fake_volume_group_type .unset_keys . assert_called_once_with (
274- {'foo ' : 'bar' }. keys ()
268+ self .volume_sdk_client . create_group_type_group_specs .assert_called_once_with (
269+ self .fake_volume_group_type .id ,
270+ {'fizz ' : 'buzz' },
275271 )
276272 self .assertEqual (self .columns , columns )
277273 self .assertCountEqual (self .data , data )
@@ -305,8 +301,8 @@ def test_volume_group_type_set_pre_v311(self):
305301
306302
307303class TestVolumeGroupTypeUnset (TestVolumeGroupType ):
308- fake_volume_group_type = volume_fakes . create_one_volume_group_type (
309- methods = { 'unset_keys' : None },
304+ fake_volume_group_type = sdk_fakes . generate_fake_resource (
305+ _group_type . GroupType
310306 )
311307
312308 columns = (
@@ -327,15 +323,13 @@ class TestVolumeGroupTypeUnset(TestVolumeGroupType):
327323 def setUp (self ):
328324 super ().setUp ()
329325
330- self .volume_group_types_mock . get .return_value = (
326+ self .volume_sdk_client . find_group_type .return_value = (
331327 self .fake_volume_group_type
332328 )
333329
334330 self .cmd = volume_group_type .UnsetVolumeGroupType (self .app , None )
335331
336332 def test_volume_group_type_unset (self ):
337- self .set_volume_api_version ('3.11' )
338-
339333 arglist = [
340334 self .fake_volume_group_type .id ,
341335 '--property' ,
@@ -349,14 +343,13 @@ def test_volume_group_type_unset(self):
349343
350344 columns , data = self .cmd .take_action (parsed_args )
351345
352- self .volume_group_types_mock .get .assert_has_calls (
353- [
354- mock .call (self .fake_volume_group_type .id ),
355- mock .call (self .fake_volume_group_type .id ),
356- ]
346+ self .volume_sdk_client .delete_group_type_group_specs_property .assert_called_once_with (
347+ self .fake_volume_group_type .id ,
348+ 'fizz' ,
357349 )
358- self .fake_volume_group_type .unset_keys .assert_called_once_with (
359- ['fizz' ]
350+ self .volume_sdk_client .find_group_type .assert_called_once_with (
351+ self .fake_volume_group_type .id ,
352+ ignore_missing = False ,
360353 )
361354 self .assertEqual (self .columns , columns )
362355 self .assertCountEqual (self .data , data )
@@ -384,39 +377,39 @@ def test_volume_group_type_unset_pre_v311(self):
384377
385378
386379class TestVolumeGroupTypeList (TestVolumeGroupType ):
387- fake_volume_group_types = volume_fakes .create_volume_group_types ()
380+ fake_volume_group_types = list (
381+ sdk_fakes .generate_fake_resources (_group_type .GroupType , count = 2 )
382+ )
388383
389384 columns = (
390385 'ID' ,
391386 'Name' ,
392387 'Is Public' ,
393- 'Properties ' ,
388+ 'Group Specs ' ,
394389 )
395390 data = [
396391 (
397392 fake_volume_group_type .id ,
398393 fake_volume_group_type .name ,
399394 fake_volume_group_type .is_public ,
400- fake_volume_group_type .group_specs ,
395+ format_columns . DictColumn ( fake_volume_group_type .group_specs ) ,
401396 )
402397 for fake_volume_group_type in fake_volume_group_types
403398 ]
404399
405400 def setUp (self ):
406401 super ().setUp ()
407402
408- self .volume_group_types_mock . list .return_value = (
403+ self .volume_sdk_client . group_types .return_value = (
409404 self .fake_volume_group_types
410405 )
411- self .volume_group_types_mock . default .return_value = (
406+ self .volume_sdk_client . get_group_type .return_value = (
412407 self .fake_volume_group_types [0 ]
413408 )
414409
415410 self .cmd = volume_group_type .ListVolumeGroupType (self .app , None )
416411
417412 def test_volume_group_type_list (self ):
418- self .set_volume_api_version ('3.11' )
419-
420413 arglist = []
421414 verifylist = [
422415 ('show_default' , False ),
@@ -425,13 +418,11 @@ def test_volume_group_type_list(self):
425418
426419 columns , data = self .cmd .take_action (parsed_args )
427420
428- self .volume_group_types_mock . list .assert_called_once_with ()
421+ self .volume_sdk_client . group_types .assert_called_once_with ()
429422 self .assertEqual (self .columns , columns )
430423 self .assertCountEqual (tuple (self .data ), data )
431424
432425 def test_volume_group_type_list_with_default_option (self ):
433- self .set_volume_api_version ('3.11' )
434-
435426 arglist = [
436427 '--default' ,
437428 ]
@@ -442,9 +433,14 @@ def test_volume_group_type_list_with_default_option(self):
442433
443434 columns , data = self .cmd .take_action (parsed_args )
444435
445- self .volume_group_types_mock .default .assert_called_once_with ()
436+ self .volume_sdk_client .get_group_type .assert_called_once_with (
437+ 'default'
438+ )
446439 self .assertEqual (self .columns , columns )
447- self .assertCountEqual (tuple ([self .data [0 ]]), data )
440+ self .assertCountEqual (
441+ tuple ([self .data [0 ]]),
442+ data ,
443+ )
448444
449445 def test_volume_group_type_list_pre_v311 (self ):
450446 self .set_volume_api_version ('3.10' )
@@ -462,7 +458,9 @@ def test_volume_group_type_list_pre_v311(self):
462458
463459
464460class TestVolumeGroupTypeShow (TestVolumeGroupType ):
465- fake_volume_group_type = volume_fakes .create_one_volume_group_type ()
461+ fake_volume_group_type = sdk_fakes .generate_fake_resource (
462+ _group_type .GroupType
463+ )
466464
467465 columns = (
468466 'ID' ,
@@ -482,15 +480,13 @@ class TestVolumeGroupTypeShow(TestVolumeGroupType):
482480 def setUp (self ):
483481 super ().setUp ()
484482
485- self .volume_group_types_mock . get .return_value = (
483+ self .volume_sdk_client . find_group_type .return_value = (
486484 self .fake_volume_group_type
487485 )
488486
489487 self .cmd = volume_group_type .ShowVolumeGroupType (self .app , None )
490488
491489 def test_volume_group_type_show (self ):
492- self .set_volume_api_version ('3.11' )
493-
494490 arglist = [
495491 self .fake_volume_group_type .id ,
496492 ]
@@ -501,8 +497,9 @@ def test_volume_group_type_show(self):
501497
502498 columns , data = self .cmd .take_action (parsed_args )
503499
504- self .volume_group_types_mock . get .assert_called_once_with (
500+ self .volume_sdk_client . find_group_type .assert_called_once_with (
505501 self .fake_volume_group_type .id ,
502+ ignore_missing = False ,
506503 )
507504 self .assertEqual (self .columns , columns )
508505 self .assertCountEqual (self .data , data )
0 commit comments