diff options
Diffstat (limited to 'tests/unit/utils')
-rw-r--r-- | tests/unit/utils/__init__.py | 0 | ||||
-rw-r--r-- | tests/unit/utils/test_OPNFVExceptions.py | 74 |
2 files changed, 74 insertions, 0 deletions
diff --git a/tests/unit/utils/__init__.py b/tests/unit/utils/__init__.py new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/tests/unit/utils/__init__.py diff --git a/tests/unit/utils/test_OPNFVExceptions.py b/tests/unit/utils/test_OPNFVExceptions.py new file mode 100644 index 0000000..fca927b --- /dev/null +++ b/tests/unit/utils/test_OPNFVExceptions.py @@ -0,0 +1,74 @@ +#!/usr/bin/env python + +# Copyright (c) 2016 Orange and others. +# +# 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.0import requests +import unittest +import requests + +from opnfv.utils import OPNFVExceptions + + +def base_function(): + raise OPNFVExceptions.TestDbNotReachable('Test database is not reachable') + + +def base_function_wrong(): + raise OPNFVExceptions.NotSelfDefinedException + + +def db_connectivity(): + url = 'http://testresults.opnfv2.org/test/api/v1/projects/functest/cases' + r = requests.get(url) + if r.status_code is not 200: + raise OPNFVExceptions.TestDbNotReachable('Database not found') + + +def project_unknown(): + url = 'http://testresults.opnfv.org/test/api/v1/projects/functest2/cases' + r = requests.get(url) + if len(r.json()['testcases']) is 0: + raise OPNFVExceptions.UnknownProject + + +class TestBasicRaise(unittest.TestCase): + def test(self): + with self.assertRaises(Exception) as context: + base_function() + self.assertTrue('Test database is not reachable' in context.exception) + + +class TestWrongRaise(unittest.TestCase): + def test(self): + try: + base_function_wrong() + except OPNFVExceptions.OPNFVException: + assert(False) + except AttributeError: + assert(True) + + +class TestCaseDBNotReachable(unittest.TestCase): + def test(self): + with self.assertRaises(Exception) as context: + db_connectivity() + self.assertTrue('Database not found' in context.exception) + + +class TestUnkownProject(unittest.TestCase): + def test(self): + try: + project_unknown() + except OPNFVExceptions.TestDashboardError: + # should not be there + assert(False) + except OPNFVExceptions.UnknownProject: + assert(True) + except Exception: + assert(False) + +if __name__ == '__main__': + unittest.main() |