xref: /openbmc/openbmc/poky/meta/lib/oeqa/core/tests/common.py (revision edff49234e31f23dc79f823473c9e286a21596c1)
1#
2# Copyright (C) 2016 Intel Corporation
3#
4# SPDX-License-Identifier: MIT
5#
6
7import sys
8import os
9
10import unittest
11import logging
12
13logger = logging.getLogger("oeqa")
14logger.setLevel(logging.INFO)
15consoleHandler = logging.StreamHandler()
16formatter = logging.Formatter('OEQATest: %(message)s')
17consoleHandler.setFormatter(formatter)
18logger.addHandler(consoleHandler)
19
20def setup_sys_path():
21    directory = os.path.dirname(os.path.abspath(__file__))
22    oeqa_lib = os.path.realpath(os.path.join(directory, '../../../'))
23    if not oeqa_lib in sys.path:
24        sys.path.insert(0, oeqa_lib)
25
26class TestBase(unittest.TestCase):
27    def setUp(self):
28        self.logger = logger
29        directory = os.path.dirname(os.path.abspath(__file__))
30        self.cases_path = os.path.join(directory, 'cases')
31
32    def _testLoader(self, d={}, modules=[], tests=[], **kwargs):
33        from oeqa.core.context import OETestContext
34        tc = OETestContext(d, self.logger)
35        tc.loadTests(self.cases_path, modules=modules, tests=tests,
36                     **kwargs)
37        return tc
38