@@ -145,6 +145,157 @@ def test_floating_ip_list(self):
145145 self .assertEqual (self .LIST_FLOATING_IP_RESP , ret )
146146
147147
148+ class TestNetwork (TestComputeAPIv2 ):
149+
150+ FAKE_NETWORK_RESP = {
151+ 'id' : '1' ,
152+ 'label' : 'label1' ,
153+ 'cidr' : '1.2.3.0/24' ,
154+ }
155+
156+ FAKE_NETWORK_RESP_2 = {
157+ 'id' : '2' ,
158+ 'label' : 'label2' ,
159+ 'cidr' : '4.5.6.0/24' ,
160+ }
161+
162+ LIST_NETWORK_RESP = [
163+ FAKE_NETWORK_RESP ,
164+ FAKE_NETWORK_RESP_2 ,
165+ ]
166+
167+ def test_network_create_default (self ):
168+ self .requests_mock .register_uri (
169+ 'POST' ,
170+ FAKE_URL + '/os-tenant-networks' ,
171+ json = {'network' : self .FAKE_NETWORK_RESP },
172+ status_code = 200 ,
173+ )
174+ ret = self .api .network_create ('label1' )
175+ self .assertEqual (self .FAKE_NETWORK_RESP , ret )
176+
177+ def test_network_create_options (self ):
178+ self .requests_mock .register_uri (
179+ 'POST' ,
180+ FAKE_URL + '/os-tenant-networks' ,
181+ json = {'network' : self .FAKE_NETWORK_RESP },
182+ status_code = 200 ,
183+ )
184+ ret = self .api .network_create (
185+ name = 'label1' ,
186+ subnet = '1.2.3.0/24' ,
187+ )
188+ self .assertEqual (self .FAKE_NETWORK_RESP , ret )
189+
190+ def test_network_delete_id (self ):
191+ self .requests_mock .register_uri (
192+ 'GET' ,
193+ FAKE_URL + '/os-tenant-networks/1' ,
194+ json = {'network' : self .FAKE_NETWORK_RESP },
195+ status_code = 200 ,
196+ )
197+ self .requests_mock .register_uri (
198+ 'DELETE' ,
199+ FAKE_URL + '/os-tenant-networks/1' ,
200+ status_code = 202 ,
201+ )
202+ ret = self .api .network_delete ('1' )
203+ self .assertEqual (202 , ret .status_code )
204+ self .assertEqual ("" , ret .text )
205+
206+ def test_network_delete_name (self ):
207+ self .requests_mock .register_uri (
208+ 'GET' ,
209+ FAKE_URL + '/os-tenant-networks/label1' ,
210+ status_code = 404 ,
211+ )
212+ self .requests_mock .register_uri (
213+ 'GET' ,
214+ FAKE_URL + '/os-tenant-networks' ,
215+ json = {'networks' : self .LIST_NETWORK_RESP },
216+ status_code = 200 ,
217+ )
218+ self .requests_mock .register_uri (
219+ 'DELETE' ,
220+ FAKE_URL + '/os-tenant-networks/1' ,
221+ status_code = 202 ,
222+ )
223+ ret = self .api .network_delete ('label1' )
224+ self .assertEqual (202 , ret .status_code )
225+ self .assertEqual ("" , ret .text )
226+
227+ def test_network_delete_not_found (self ):
228+ self .requests_mock .register_uri (
229+ 'GET' ,
230+ FAKE_URL + '/os-tenant-networks/label3' ,
231+ status_code = 404 ,
232+ )
233+ self .requests_mock .register_uri (
234+ 'GET' ,
235+ FAKE_URL + '/os-tenant-networks' ,
236+ json = {'networks' : self .LIST_NETWORK_RESP },
237+ status_code = 200 ,
238+ )
239+ self .assertRaises (
240+ osc_lib_exceptions .NotFound ,
241+ self .api .network_delete ,
242+ 'label3' ,
243+ )
244+
245+ def test_network_find_id (self ):
246+ self .requests_mock .register_uri (
247+ 'GET' ,
248+ FAKE_URL + '/os-tenant-networks/1' ,
249+ json = {'network' : self .FAKE_NETWORK_RESP },
250+ status_code = 200 ,
251+ )
252+ ret = self .api .network_find ('1' )
253+ self .assertEqual (self .FAKE_NETWORK_RESP , ret )
254+
255+ def test_network_find_name (self ):
256+ self .requests_mock .register_uri (
257+ 'GET' ,
258+ FAKE_URL + '/os-tenant-networks/label2' ,
259+ status_code = 404 ,
260+ )
261+ self .requests_mock .register_uri (
262+ 'GET' ,
263+ FAKE_URL + '/os-tenant-networks' ,
264+ json = {'networks' : self .LIST_NETWORK_RESP },
265+ status_code = 200 ,
266+ )
267+ ret = self .api .network_find ('label2' )
268+ self .assertEqual (self .FAKE_NETWORK_RESP_2 , ret )
269+
270+ def test_network_find_not_found (self ):
271+ self .requests_mock .register_uri (
272+ 'GET' ,
273+ FAKE_URL + '/os-tenant-networks/label3' ,
274+ status_code = 404 ,
275+ )
276+ self .requests_mock .register_uri (
277+ 'GET' ,
278+ FAKE_URL + '/os-tenant-networks' ,
279+ json = {'networks' : self .LIST_NETWORK_RESP },
280+ status_code = 200 ,
281+ )
282+ self .assertRaises (
283+ osc_lib_exceptions .NotFound ,
284+ self .api .network_find ,
285+ 'label3' ,
286+ )
287+
288+ def test_network_list_no_options (self ):
289+ self .requests_mock .register_uri (
290+ 'GET' ,
291+ FAKE_URL + '/os-tenant-networks' ,
292+ json = {'networks' : self .LIST_NETWORK_RESP },
293+ status_code = 200 ,
294+ )
295+ ret = self .api .network_list ()
296+ self .assertEqual (self .LIST_NETWORK_RESP , ret )
297+
298+
148299class TestSecurityGroup (TestComputeAPIv2 ):
149300
150301 FAKE_SECURITY_GROUP_RESP = {
0 commit comments