diff options
author | helenyao <yaohelan@huawei.com> | 2017-03-16 20:24:56 +0800 |
---|---|---|
committer | helenyao <yaohelan@huawei.com> | 2017-03-29 10:45:10 +0800 |
commit | 443757aa99ccfcb743b132e14f36d61aef2de282 (patch) | |
tree | e838ea2db9585b7837683cb67218a463366c904e /functest/tests/unit/opnfv_tests/vnf/ims/test_ims_base.by | |
parent | 0385fdaa5b8b39c2cbc75c7d7719d872b317e0b9 (diff) |
Added test case for opera vims
1. Created a ImsOnBoardingBase to wrap up all common ims operations
2. Created test case to test opera vims onboarding
Change-Id: Idf3a82e10661271ad413f4dd5795c80ca4421d73
Signed-off-by: helenyao <yaohelan@huawei.com>
Diffstat (limited to 'functest/tests/unit/opnfv_tests/vnf/ims/test_ims_base.by')
-rw-r--r-- | functest/tests/unit/opnfv_tests/vnf/ims/test_ims_base.by | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/functest/tests/unit/opnfv_tests/vnf/ims/test_ims_base.by b/functest/tests/unit/opnfv_tests/vnf/ims/test_ims_base.by new file mode 100644 index 00000000..9440bcdf --- /dev/null +++ b/functest/tests/unit/opnfv_tests/vnf/ims/test_ims_base.by @@ -0,0 +1,58 @@ +#!/usr/bin/env python + +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 + +import logging +import unittest + +import mock + +from functest.opnfv_tests.vnf.ims import ims_base + + +class ClearwaterOnBoardingBaseTesting(unittest.TestCase): + + logging.disable(logging.CRITICAL) + + def setUp(self): + with mock.patch('functest.opnfv_tests.vnf.ims.cloudify_ims.' + 'os.makedirs'): + self.ims_vnf = ims_base.ClearwaterOnBoardingBase() + + self.mock_post = mock.Mock() + attrs = {'status_code': 201, + 'cookies': ""} + self.mock_post.configure_mock(**attrs) + + self.mock_post_200 = mock.Mock() + attrs = {'status_code': 200, + 'cookies': ""} + self.mock_post_200.configure_mock(**attrs) + + self.mock_post_500 = mock.Mock() + attrs = {'status_code': 500, + 'cookies': ""} + self.mock_post_200.configure_mock(**attrs) + + def test_create_ellis_number_failure(self): + with mock.patch('functest.opnfv_tests.vnf.ims.ims_base.' + 'requests.post', + return_value=self.mock_post_500), \ + self.assertRaises(Exception) as context: + self.ims_vnf.create_ellis_number() + + msg = "Unable to create a number:" + self.assertTrue(msg in context.exception) + + def _get_post_status(self, url, cookies='', data=''): + ellis_url = "http://test_ellis_ip/session" + if url == ellis_url: + return self.mock_post_200 + return self.mock_post + + +if __name__ == "__main__": + unittest.main(verbosity=2) |