1414from unittest .mock import call
1515
1616from openstack .block_storage .v2 import backup as _backup
17+ from openstack .block_storage .v2 import snapshot as _snapshot
18+ from openstack .block_storage .v2 import volume as _volume
1719from openstack import exceptions as sdk_exceptions
1820from openstack .test import fakes as sdk_fakes
1921from osc_lib import exceptions
2325
2426
2527class TestBackupCreate (volume_fakes .TestVolume ):
26- volume = volume_fakes .create_one_volume ()
27- snapshot = volume_fakes .create_one_snapshot ()
28- new_backup = volume_fakes .create_one_backup (
29- attrs = {'volume_id' : volume .id , 'snapshot_id' : snapshot .id }
30- )
31-
3228 columns = (
3329 'id' ,
3430 'name' ,
3531 'volume_id' ,
3632 )
37- data = (
38- new_backup .id ,
39- new_backup .name ,
40- new_backup .volume_id ,
41- )
4233
4334 def setUp (self ):
4435 super ().setUp ()
4536
37+ self .volume = sdk_fakes .generate_fake_resource (_volume .Volume )
4638 self .volume_sdk_client .find_volume .return_value = self .volume
39+ self .snapshot = sdk_fakes .generate_fake_resource (_snapshot .Snapshot )
4740 self .volume_sdk_client .find_snapshot .return_value = self .snapshot
48- self .volume_sdk_client .create_backup .return_value = self .new_backup
41+ self .backup = sdk_fakes .generate_fake_resource (
42+ _backup .Backup ,
43+ volume_id = self .volume .id ,
44+ snapshot_id = self .snapshot .id ,
45+ )
46+ self .volume_sdk_client .create_backup .return_value = self .backup
47+
48+ self .data = (
49+ self .backup .id ,
50+ self .backup .name ,
51+ self .backup .volume_id ,
52+ )
4953
50- # Get the command object to test
5154 self .cmd = volume_backup .CreateVolumeBackup (self .app , None )
5255
5356 def test_backup_create (self ):
5457 arglist = [
5558 "--name" ,
56- self .new_backup .name ,
59+ self .backup .name ,
5760 "--description" ,
58- self .new_backup .description ,
61+ self .backup .description ,
5962 "--container" ,
60- self .new_backup .container ,
63+ self .backup .container ,
6164 "--force" ,
6265 "--incremental" ,
6366 "--snapshot" ,
64- self .new_backup .snapshot_id ,
65- self .new_backup .volume_id ,
67+ self .backup .snapshot_id ,
68+ self .backup .volume_id ,
6669 ]
6770 verifylist = [
68- ("name" , self .new_backup .name ),
69- ("description" , self .new_backup .description ),
70- ("container" , self .new_backup .container ),
71+ ("name" , self .backup .name ),
72+ ("description" , self .backup .description ),
73+ ("container" , self .backup .container ),
7174 ("force" , True ),
7275 ("incremental" , True ),
73- ("snapshot" , self .new_backup .snapshot_id ),
74- ("volume" , self .new_backup .volume_id ),
76+ ("snapshot" , self .backup .snapshot_id ),
77+ ("volume" , self .backup .volume_id ),
7578 ]
7679 parsed_args = self .check_parser (self .cmd , arglist , verifylist )
7780
7881 columns , data = self .cmd .take_action (parsed_args )
7982
8083 self .volume_sdk_client .create_backup .assert_called_with (
81- volume_id = self .new_backup .volume_id ,
82- container = self .new_backup .container ,
83- name = self .new_backup .name ,
84- description = self .new_backup .description ,
84+ volume_id = self .backup .volume_id ,
85+ container = self .backup .container ,
86+ name = self .backup .name ,
87+ description = self .backup .description ,
8588 force = True ,
8689 is_incremental = True ,
87- snapshot_id = self .new_backup .snapshot_id ,
90+ snapshot_id = self .backup .snapshot_id ,
8891 )
8992 self .assertEqual (self .columns , columns )
9093 self .assertEqual (self .data , data )
9194
9295 def test_backup_create_without_name (self ):
9396 arglist = [
9497 "--description" ,
95- self .new_backup .description ,
98+ self .backup .description ,
9699 "--container" ,
97- self .new_backup .container ,
98- self .new_backup .volume_id ,
100+ self .backup .container ,
101+ self .backup .volume_id ,
99102 ]
100103 verifylist = [
101- ("description" , self .new_backup .description ),
102- ("container" , self .new_backup .container ),
103- ("volume" , self .new_backup .volume_id ),
104+ ("description" , self .backup .description ),
105+ ("container" , self .backup .container ),
106+ ("volume" , self .backup .volume_id ),
104107 ]
105108 parsed_args = self .check_parser (self .cmd , arglist , verifylist )
106109
107110 columns , data = self .cmd .take_action (parsed_args )
108111
109112 self .volume_sdk_client .create_backup .assert_called_with (
110- volume_id = self .new_backup .volume_id ,
111- container = self .new_backup .container ,
113+ volume_id = self .backup .volume_id ,
114+ container = self .backup .container ,
112115 name = None ,
113- description = self .new_backup .description ,
116+ description = self .backup .description ,
114117 force = False ,
115118 is_incremental = False ,
116119 )
@@ -119,17 +122,13 @@ def test_backup_create_without_name(self):
119122
120123
121124class TestBackupDelete (volume_fakes .TestVolume ):
122- backups = volume_fakes .create_backups (count = 2 )
123-
124125 def setUp (self ):
125126 super ().setUp ()
126127
127- self .volume_sdk_client .find_backup = volume_fakes .get_backups (
128- self .backups
129- )
128+ self .backups = list (sdk_fakes .generate_fake_resources (_backup .Backup ))
129+ self .volume_sdk_client .find_backup .side_effect = self .backups
130130 self .volume_sdk_client .delete_backup .return_value = None
131131
132- # Get the command object to mock
133132 self .cmd = volume_backup .DeleteVolumeBackup (self .app , None )
134133
135134 def test_backup_delete (self ):
@@ -212,11 +211,6 @@ def test_delete_multiple_backups_with_exception(self):
212211
213212
214213class TestBackupList (volume_fakes .TestVolume ):
215- volume = volume_fakes .create_one_volume ()
216- backups = volume_fakes .create_backups (
217- attrs = {'volume_id' : volume .name }, count = 3
218- )
219-
220214 columns = (
221215 'ID' ,
222216 'Name' ,
@@ -232,45 +226,51 @@ class TestBackupList(volume_fakes.TestVolume):
232226 'Container' ,
233227 )
234228
235- data = []
236- for b in backups :
237- data .append (
238- (
239- b .id ,
240- b .name ,
241- b .description ,
242- b .status ,
243- b .size ,
244- b .is_incremental ,
245- b .created_at ,
246- )
247- )
248- data_long = []
249- for b in backups :
250- data_long .append (
251- (
252- b .id ,
253- b .name ,
254- b .description ,
255- b .status ,
256- b .size ,
257- b .is_incremental ,
258- b .created_at ,
259- b .availability_zone ,
260- volume_backup .VolumeIdColumn (b .volume_id ),
261- b .container ,
262- )
263- )
264-
265229 def setUp (self ):
266230 super ().setUp ()
267231
232+ self .volume = sdk_fakes .generate_fake_resource (_volume .Volume )
233+ self .volume_sdk_client .find_volume .return_value = self .volume
268234 self .volume_sdk_client .volumes .return_value = [self .volume ]
235+ self .backups = list (
236+ sdk_fakes .generate_fake_resources (
237+ _backup .Backup ,
238+ attrs = {'volume_id' : self .volume .id },
239+ )
240+ )
269241 self .volume_sdk_client .backups .return_value = self .backups
270- self .volume_sdk_client .find_volume .return_value = self .volume
271242 self .volume_sdk_client .find_backup .return_value = self .backups [0 ]
272243
273- # Get the command to test
244+ self .data = []
245+ for b in self .backups :
246+ self .data .append (
247+ (
248+ b .id ,
249+ b .name ,
250+ b .description ,
251+ b .status ,
252+ b .size ,
253+ b .is_incremental ,
254+ b .created_at ,
255+ )
256+ )
257+ self .data_long = []
258+ for b in self .backups :
259+ self .data_long .append (
260+ (
261+ b .id ,
262+ b .name ,
263+ b .description ,
264+ b .status ,
265+ b .size ,
266+ b .is_incremental ,
267+ b .created_at ,
268+ b .availability_zone ,
269+ volume_backup .VolumeIdColumn (b .volume_id ),
270+ b .container ,
271+ )
272+ )
273+
274274 self .cmd = volume_backup .ListVolumeBackup (self .app , None )
275275
276276 def test_backup_list_without_options (self ):
@@ -348,35 +348,33 @@ def test_backup_list_with_options(self):
348348
349349
350350class TestBackupRestore (volume_fakes .TestVolume ):
351- volume = volume_fakes .create_one_volume ()
352- backup = volume_fakes .create_one_backup (
353- attrs = {'volume_id' : volume .id },
354- )
355-
356351 columns = (
357352 "id" ,
358353 "volume_id" ,
359354 "volume_name" ,
360355 )
361356
362- data = (
363- backup .id ,
364- volume .id ,
365- volume .name ,
366- )
367-
368357 def setUp (self ):
369358 super ().setUp ()
370359
371- self .volume_sdk_client . find_backup . return_value = self . backup
360+ self .volume = sdk_fakes . generate_fake_resource ( _volume . Volume )
372361 self .volume_sdk_client .find_volume .return_value = self .volume
362+ self .backup = sdk_fakes .generate_fake_resource (
363+ _backup .Backup , volume_id = self .volume .id
364+ )
365+ self .volume_sdk_client .find_backup .return_value = self .backup
373366 self .volume_sdk_client .restore_backup .return_value = {
374367 'id' : self .backup ['id' ],
375368 'volume_id' : self .volume ['id' ],
376369 'volume_name' : self .volume ['name' ],
377370 }
378371
379- # Get the command object to mock
372+ self .data = (
373+ self .backup .id ,
374+ self .volume .id ,
375+ self .volume .name ,
376+ )
377+
380378 self .cmd = volume_backup .RestoreVolumeBackup (self .app , None )
381379
382380 def test_backup_restore (self ):
@@ -515,8 +513,6 @@ def test_backup_set_state_failed(self):
515513
516514
517515class TestBackupShow (volume_fakes .TestVolume ):
518- backup = volume_fakes .create_one_backup ()
519-
520516 columns = (
521517 "availability_zone" ,
522518 "container" ,
@@ -535,30 +531,32 @@ class TestBackupShow(volume_fakes.TestVolume):
535531 "updated_at" ,
536532 "volume_id" ,
537533 )
538- data = (
539- backup .availability_zone ,
540- backup .container ,
541- backup .created_at ,
542- backup .data_timestamp ,
543- backup .description ,
544- backup .fail_reason ,
545- backup .has_dependent_backups ,
546- backup .id ,
547- backup .is_incremental ,
548- backup .name ,
549- backup .object_count ,
550- backup .size ,
551- backup .snapshot_id ,
552- backup .status ,
553- backup .updated_at ,
554- backup .volume_id ,
555- )
556534
557535 def setUp (self ):
558536 super ().setUp ()
559537
538+ self .backup = sdk_fakes .generate_fake_resource (_backup .Backup )
560539 self .volume_sdk_client .find_backup .return_value = self .backup
561- # Get the command object to test
540+
541+ self .data = (
542+ self .backup .availability_zone ,
543+ self .backup .container ,
544+ self .backup .created_at ,
545+ self .backup .data_timestamp ,
546+ self .backup .description ,
547+ self .backup .fail_reason ,
548+ self .backup .has_dependent_backups ,
549+ self .backup .id ,
550+ self .backup .is_incremental ,
551+ self .backup .name ,
552+ self .backup .object_count ,
553+ self .backup .size ,
554+ self .backup .snapshot_id ,
555+ self .backup .status ,
556+ self .backup .updated_at ,
557+ self .backup .volume_id ,
558+ )
559+
562560 self .cmd = volume_backup .ShowVolumeBackup (self .app , None )
563561
564562 def test_backup_show (self ):
0 commit comments