@@ -44,6 +44,96 @@ def setUp(self):
4444 self .api = self .app .client_manager .object_store
4545
4646
47+ @mock .patch ('openstackclient.api.object_store_v1.APIv1.object_delete' )
48+ @mock .patch ('openstackclient.api.object_store_v1.APIv1.object_list' )
49+ @mock .patch ('openstackclient.api.object_store_v1.APIv1.container_delete' )
50+ class TestContainerDelete (TestContainer ):
51+
52+ def setUp (self ):
53+ super (TestContainerDelete , self ).setUp ()
54+
55+ # Get the command object to test
56+ self .cmd = container .DeleteContainer (self .app , None )
57+
58+ def test_container_delete (self , c_mock , o_list_mock , o_delete_mock ):
59+ c_mock .return_value = None
60+
61+ arglist = [
62+ object_fakes .container_name ,
63+ ]
64+ verifylist = [
65+ ('containers' , [object_fakes .container_name ]),
66+ ('recursive' , False ),
67+ ]
68+ parsed_args = self .check_parser (self .cmd , arglist , verifylist )
69+
70+ self .assertEqual (None , self .cmd .take_action (parsed_args ))
71+
72+ kwargs = {}
73+ c_mock .assert_called_with (
74+ container = object_fakes .container_name ,
75+ ** kwargs
76+ )
77+ self .assertFalse (o_list_mock .called )
78+ self .assertFalse (o_delete_mock .called )
79+
80+ def test_recursive_delete (self , c_mock , o_list_mock , o_delete_mock ):
81+ c_mock .return_value = None
82+ o_list_mock .return_value = [object_fakes .OBJECT ]
83+ o_delete_mock .return_value = None
84+
85+ arglist = [
86+ '--recursive' ,
87+ object_fakes .container_name ,
88+ ]
89+ verifylist = [
90+ ('containers' , [object_fakes .container_name ]),
91+ ('recursive' , True ),
92+ ]
93+ parsed_args = self .check_parser (self .cmd , arglist , verifylist )
94+
95+ self .assertEqual (None , self .cmd .take_action (parsed_args ))
96+
97+ kwargs = {}
98+ c_mock .assert_called_with (
99+ container = object_fakes .container_name ,
100+ ** kwargs
101+ )
102+ o_list_mock .assert_called_with (container = object_fakes .container_name )
103+ o_delete_mock .assert_called_with (
104+ container = object_fakes .container_name ,
105+ object = object_fakes .OBJECT ['name' ],
106+ )
107+
108+ def test_r_delete (self , c_mock , o_list_mock , o_delete_mock ):
109+ c_mock .return_value = None
110+ o_list_mock .return_value = [object_fakes .OBJECT ]
111+ o_delete_mock .return_value = None
112+
113+ arglist = [
114+ '-r' ,
115+ object_fakes .container_name ,
116+ ]
117+ verifylist = [
118+ ('containers' , [object_fakes .container_name ]),
119+ ('recursive' , True ),
120+ ]
121+ parsed_args = self .check_parser (self .cmd , arglist , verifylist )
122+
123+ self .assertEqual (None , self .cmd .take_action (parsed_args ))
124+
125+ kwargs = {}
126+ c_mock .assert_called_with (
127+ container = object_fakes .container_name ,
128+ ** kwargs
129+ )
130+ o_list_mock .assert_called_with (container = object_fakes .container_name )
131+ o_delete_mock .assert_called_with (
132+ container = object_fakes .container_name ,
133+ object = object_fakes .OBJECT ['name' ],
134+ )
135+
136+
47137@mock .patch (
48138 'openstackclient.api.object_store_v1.APIv1.container_list'
49139)
0 commit comments