diff options
author | Mahadev Konar <mahadev@apache.org> | 2012-10-16 02:13:18 +0000 |
---|---|---|
committer | Mahadev Konar <mahadev@apache.org> | 2012-10-16 02:13:18 +0000 |
commit | 0f888a1e080d1acbc75edb123995c4af63f2f4f4 (patch) | |
tree | 44afd09c43e895a43ca79a515a0189c8bb033d19 /ambari-agent | |
parent | a3d2cc3f8f5b3cc1e077cdaf38bed922cbb940db (diff) |
AMBARI-863. Fix mvn tests to be able to run the python tests cleanly. (mahadev)
git-svn-id: https://svn.apache.org/repos/asf/incubator/ambari/branches/AMBARI-666@1398613 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'ambari-agent')
-rw-r--r-- | ambari-agent/src/test/python/unitTests.py | 33 |
1 files changed, 30 insertions, 3 deletions
diff --git a/ambari-agent/src/test/python/unitTests.py b/ambari-agent/src/test/python/unitTests.py index 689b6d0cad..1400d08fa8 100644 --- a/ambari-agent/src/test/python/unitTests.py +++ b/ambari-agent/src/test/python/unitTests.py @@ -21,7 +21,10 @@ limitations under the License. import unittest import doctest from os.path import dirname, split, isdir +import logging.handlers +import logging +LOG_FILE_NAME='tests.log' class TestAgent(unittest.TestSuite): @@ -44,14 +47,32 @@ def all_tests_suite(): return TestAgent([suite]) def main(): + + logger.info('------------------------------------------------------------------------') + logger.info('PYTHON AGENT TESTS') + logger.info('------------------------------------------------------------------------') parent_dir = lambda x: split(x)[0] if isdir(x) else split(dirname(x))[0] src_dir = os.getcwd() - agent_dir = parent_dir(parent_dir(parent_dir(src_dir))) - path = agent_dir + os.sep + "target/tests.log" + target_dir = parent_dir(parent_dir(parent_dir(src_dir))) + os.sep + 'target' + if not os.path.exists(target_dir): + os.mkdir(target_dir) + path = target_dir + os.sep + LOG_FILE_NAME file=open(path, "w") runner = unittest.TextTestRunner(stream=file) suite = all_tests_suite() - raise SystemExit(not runner.run(suite).wasSuccessful()) + + status = runner.run(suite).wasSuccessful() + + if not status: + logger.error('-----------------------------------------------------------------------') + logger.error('Python unit tests failed') + logger.error('Find detailed logs in ' + path) + logger.error('-----------------------------------------------------------------------') + exit(1) + else: + logger.info('------------------------------------------------------------------------') + logger.info('Python unit tests finished succesfully') + logger.info('------------------------------------------------------------------------') if __name__ == '__main__': import os @@ -60,4 +81,10 @@ if __name__ == '__main__': sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))) sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) + os.sep + 'main' + os.sep + 'python') sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) + os.sep + 'main' + os.sep + 'python' + os.sep + 'ambari_agent') + logger = logging.getLogger() + logger.setLevel(logging.INFO) + formatter = logging.Formatter("[%(levelname)s] %(message)s") + consoleLog = logging.StreamHandler(sys.stdout) + consoleLog.setFormatter(formatter) + logger.addHandler(consoleLog) main() |