Revision 058ee9a8 kamaki/clients/network/test.py

b/kamaki/clients/network/test.py
48 48
        self.client = network.NetworkRestClient(self.url, self.token)
49 49

  
50 50
    def tearDown(self):
51
        pass
51
        del self.client
52 52

  
53 53
    def _assert(self, method_call, path, set_param=None, params=(), **kwargs):
54 54
        """Assert the REST method call is called as expected"""
......
260 260
                data=dumps(json_data), **kwargs)
261 261

  
262 262

  
263
class FakeObject(object):
264

  
265
    json = None
266

  
267

  
268
class NetworkClient(TestCase):
269

  
270
    """Set up a ComputesRest thorough test"""
271
    def setUp(self):
272
        self.url = 'http://network.example.com'
273
        self.token = 'n2tw0rk70k3n'
274
        self.client = network.NetworkClient(self.url, self.token)
275

  
276
    def tearDown(self):
277
        del self.client
278

  
279
    @patch(
280
        'kamaki.clients.network.NetworkClient.networks_get',
281
        return_value=FakeObject())
282
    def test_list_networks(self, networks_get):
283
        FakeObject.json = dict(networks='ret val')
284
        self.assertEqual(self.client.list_networks(), 'ret val')
285
        networks_get.assert_called_once_with(success=200)
286

  
287
    @patch(
288
        'kamaki.clients.network.NetworkClient.networks_post',
289
        return_value=FakeObject())
290
    def test_create_network(self, networks_post):
291
        FakeObject.json = dict(network='ret val')
292
        req = dict()
293
        for kwargs in (dict(shared=None), dict(shared=True)):
294
            for body_params in product(
295
                    (('name', None, ''), ('name', 'some name', 'some name')),
296
                    (
297
                        ('admin_state_up', None, False),
298
                        ('admin_state_up', True, True))):
299
                fullargs = dict(kwargs)
300
                for k, v, exp in body_params:
301
                    fullargs[k] = v
302
                    req[k] = exp
303
                self.assertEqual(
304
                    self.client.create_network(**fullargs), 'ret val')
305
                expargs = dict(kwargs)
306
                expargs = dict(json_data=dict(network=req), success=201)
307
                expargs.update(kwargs)
308
                self.assertEqual(networks_post.mock_calls[-1], call(**expargs))
309

  
310

  
263 311
if __name__ == '__main__':
264 312
    from sys import argv
265 313
    from kamaki.clients.test import runTestCase
266 314
    not_found = True
267
    #if not argv[1:] or argv[1] == 'NetworkClient':
268
    #    not_found = False
269
    #    runTestCase(NetworkClient, 'Network Client', argv[2:])
315
    if not argv[1:] or argv[1] == 'NetworkClient':
316
        not_found = False
317
        runTestCase(NetworkClient, 'Network Client', argv[2:])
270 318
    if not argv[1:] or argv[1] == 'NetworkRest':
271 319
        not_found = False
272 320
        runTestCase(NetworkRestClient, 'NetworkRest Client', argv[2:])

Also available in: Unified diff