1818from openstackclient .tests .compute .v2 import fakes as compute_fakes
1919from openstackclient .tests import fakes
2020from openstackclient .tests .identity .v2_0 import fakes as identity_fakes
21+ from openstackclient .tests .network .v2 import fakes as network_fakes
2122
2223
2324class FakeQuotaResource (fakes .FakeResource ):
@@ -41,13 +42,23 @@ def setUp(self):
4142 super (TestQuota , self ).setUp ()
4243 self .quotas_mock = self .app .client_manager .compute .quotas
4344 self .quotas_mock .reset_mock ()
45+ self .quotas_class_mock = self .app .client_manager .compute .quota_classes
46+ self .quotas_class_mock .reset_mock ()
4447 volume_mock = mock .Mock ()
4548 volume_mock .quotas = mock .Mock ()
4649 self .app .client_manager .volume = volume_mock
4750 self .volume_quotas_mock = volume_mock .quotas
4851 self .volume_quotas_mock .reset_mock ()
52+ self .volume_quotas_class_mock = \
53+ self .app .client_manager .volume .quota_classes
54+ self .volume_quotas_class_mock .reset_mock ()
4955 self .projects_mock = self .app .client_manager .identity .projects
5056 self .projects_mock .reset_mock ()
57+ self .app .client_manager .auth_ref = mock .Mock ()
58+ self .app .client_manager .auth_ref .service_catalog = mock .Mock ()
59+ self .service_catalog_mock = \
60+ self .app .client_manager .auth_ref .service_catalog
61+ self .service_catalog_mock .reset_mock ()
5162
5263
5364class TestQuotaSet (TestQuota ):
@@ -172,3 +183,113 @@ def test_quota_set_volume(self):
172183 identity_fakes .project_id ,
173184 ** kwargs
174185 )
186+
187+
188+ class TestQuotaShow (TestQuota ):
189+
190+ def setUp (self ):
191+ super (TestQuotaShow , self ).setUp ()
192+
193+ self .quotas_mock .get .return_value = FakeQuotaResource (
194+ None ,
195+ copy .deepcopy (compute_fakes .QUOTA ),
196+ loaded = True ,
197+ )
198+
199+ self .quotas_mock .defaults .return_value = FakeQuotaResource (
200+ None ,
201+ copy .deepcopy (compute_fakes .QUOTA ),
202+ loaded = True ,
203+ )
204+
205+ self .volume_quotas_mock .get .return_value = FakeQuotaResource (
206+ None ,
207+ copy .deepcopy (compute_fakes .QUOTA ),
208+ loaded = True ,
209+ )
210+
211+ self .volume_quotas_mock .defaults .return_value = FakeQuotaResource (
212+ None ,
213+ copy .deepcopy (compute_fakes .QUOTA ),
214+ loaded = True ,
215+ )
216+
217+ self .service_catalog_mock .get_endpoints .return_value = [
218+ fakes .FakeResource (
219+ None ,
220+ copy .deepcopy (identity_fakes .ENDPOINT ),
221+ loaded = True ,
222+ )
223+ ]
224+
225+ self .quotas_class_mock .get .return_value = FakeQuotaResource (
226+ None ,
227+ copy .deepcopy (compute_fakes .QUOTA ),
228+ loaded = True ,
229+ )
230+
231+ self .volume_quotas_class_mock .get .return_value = FakeQuotaResource (
232+ None ,
233+ copy .deepcopy (compute_fakes .QUOTA ),
234+ loaded = True ,
235+ )
236+
237+ self .projects_mock .get .return_value = fakes .FakeResource (
238+ None ,
239+ copy .deepcopy (identity_fakes .PROJECT ),
240+ loaded = True ,
241+ )
242+
243+ self .app .client_manager .network = network_fakes .FakeNetworkV2Client (
244+ endpoint = fakes .AUTH_URL ,
245+ token = fakes .AUTH_TOKEN ,
246+ )
247+
248+ self .cmd = quota .ShowQuota (self .app , None )
249+
250+ def test_quota_show (self ):
251+ arglist = [
252+ identity_fakes .project_name ,
253+ ]
254+ verifylist = [
255+ ('project' , identity_fakes .project_name ),
256+ ]
257+
258+ parsed_args = self .check_parser (self .cmd , arglist , verifylist )
259+
260+ self .cmd .take_action (parsed_args )
261+
262+ self .quotas_mock .get .assert_called_with (identity_fakes .project_id )
263+
264+ def test_quota_show_with_default (self ):
265+ arglist = [
266+ '--default' ,
267+ identity_fakes .project_name ,
268+ ]
269+ verifylist = [
270+ ('default' , True ),
271+ ('project' , identity_fakes .project_name ),
272+ ]
273+
274+ parsed_args = self .check_parser (self .cmd , arglist , verifylist )
275+
276+ self .cmd .take_action (parsed_args )
277+
278+ self .quotas_mock .defaults .assert_called_with (identity_fakes .project_id )
279+
280+ def test_quota_show_with_class (self ):
281+ arglist = [
282+ '--class' ,
283+ identity_fakes .project_name ,
284+ ]
285+ verifylist = [
286+ ('quota_class' , True ),
287+ ('project' , identity_fakes .project_name ),
288+ ]
289+
290+ parsed_args = self .check_parser (self .cmd , arglist , verifylist )
291+
292+ self .cmd .take_action (parsed_args )
293+
294+ self .quotas_class_mock .get .assert_called_with (
295+ identity_fakes .project_id )
0 commit comments