aboutsummaryrefslogtreecommitdiffstats
path: root/functest/tests/unit/core/test_pytest_suite_runner.py
diff options
context:
space:
mode:
authorashishk1994 <ashishk.iiit@gmail.com>2017-02-13 23:25:58 +0530
committerCédric Ollivier <cedric.ollivier@orange.com>2017-05-15 15:49:08 +0200
commit6aab00bdf6a606716af7ab73d41031f644abca9b (patch)
tree3efe21c3c0a7ebc9d8cb5dc099dd561efdbd302a /functest/tests/unit/core/test_pytest_suite_runner.py
parentf4b88ec5e387deb80230afa852313127f48040ed (diff)
Additional Unit Tests for core modules
This patch adds unit tests for vnf and pytest_suite_runner. It also fixes several pylint warnings/errors. Additional tests are required to check args values. Co-Authored-By: Cédric Ollivier <cedric.ollivier@orange.com> Change-Id: I75a829233481655c794402830e1da037ab7cdb8d Signed-off-by: ashishk1994 <ashishk.iiit@gmail.com>
Diffstat (limited to 'functest/tests/unit/core/test_pytest_suite_runner.py')
-rw-r--r--functest/tests/unit/core/test_pytest_suite_runner.py51
1 files changed, 51 insertions, 0 deletions
diff --git a/functest/tests/unit/core/test_pytest_suite_runner.py b/functest/tests/unit/core/test_pytest_suite_runner.py
new file mode 100644
index 000000000..15e5bd73b
--- /dev/null
+++ b/functest/tests/unit/core/test_pytest_suite_runner.py
@@ -0,0 +1,51 @@
+#!/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
+
+# pylint: disable=missing-docstring
+
+import logging
+import unittest
+
+import mock
+
+from functest.core import pytest_suite_runner
+from functest.core import testcase
+
+
+class PyTestSuiteRunnerTesting(unittest.TestCase):
+
+ logging.disable(logging.CRITICAL)
+
+ def setUp(self):
+ self.psrunner = pytest_suite_runner.PyTestSuiteRunner()
+ self.result = mock.Mock()
+ attrs = {'errors': [('test1', 'error_msg1')],
+ 'failures': [('test2', 'failure_msg1')]}
+ self.result.configure_mock(**attrs)
+
+ self.pass_results = mock.Mock()
+ attrs = {'errors': None,
+ 'failures': None}
+ self.pass_results.configure_mock(**attrs)
+
+ def test_run(self):
+ self.psrunner.case_name = 'test_case_name'
+ with mock.patch('functest.core.pytest_suite_runner.'
+ 'unittest.TextTestRunner.run',
+ return_value=self.result):
+ self.assertEqual(self.psrunner.run(),
+ testcase.TestCase.EX_OK)
+
+ with mock.patch('functest.core.pytest_suite_runner.'
+ 'unittest.TextTestRunner.run',
+ return_value=self.pass_results):
+ self.assertEqual(self.psrunner.run(),
+ testcase.TestCase.EX_OK)
+
+
+if __name__ == "__main__":
+ unittest.main(verbosity=2)