From a55c965ceb1d676229d8aa8579a54bedb7468bf6 Mon Sep 17 00:00:00 2001 From: wangqun Date: Tue, 1 Mar 2016 07:24:25 +0000 Subject: [PATCH] Add external_network unit test for post baymodel Change-Id: I306eed493f6b6d21d74399b1a3d4e48c25bd0da2 --- .../unit/api/controllers/v1/test_baymodel.py | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/magnum/tests/unit/api/controllers/v1/test_baymodel.py b/magnum/tests/unit/api/controllers/v1/test_baymodel.py index 233c037fa7..56b4aff1a2 100644 --- a/magnum/tests/unit/api/controllers/v1/test_baymodel.py +++ b/magnum/tests/unit/api/controllers/v1/test_baymodel.py @@ -763,6 +763,31 @@ class TestPost(api_base.FunctionalTest): response = self.post_json('/baymodels', bdict, expect_errors=True) self.assertEqual(400, response.status_int) + @mock.patch('magnum.api.attr_validator.validate_image') + @mock.patch('magnum.api.attr_validator.validate_os_resources') + def test_create_baymodel_with_external_network(self, + mock_valid_os_res, + mock_image_data): + mock_image_data.return_value = {'name': 'mock_name', + 'os_distro': 'fedora-atomic'} + bdict = apiutils.baymodel_post_data() + response = self.post_json('/baymodels', bdict) + self.assertEqual(201, response.status_int) + self.assertEqual(bdict['external_network_id'], + response.json['external_network_id']) + + @mock.patch('magnum.api.attr_validator.validate_image') + @mock.patch('magnum.api.attr_validator.validate_os_resources') + def test_create_baymodel_with_no_exist_external_network(self, + mock_valid_os_res, + mock_image_data): + mock_valid_os_res.side_effect = exception.NetworkNotFound("test") + mock_image_data.return_value = {'name': 'mock_name', + 'os_distro': 'fedora-atomic'} + bdict = apiutils.baymodel_post_data() + response = self.post_json('/baymodels', bdict, expect_errors=True) + self.assertEqual(400, response.status_int) + class TestDelete(api_base.FunctionalTest):