Central conftest allows to reduce code duplication and execute all tests with one pytest command Closes scylladb/scylladb#21454
27 lines
953 B
Python
27 lines
953 B
Python
import pytest
|
|
|
|
from test.pylib.report_plugin import ReportPlugin
|
|
|
|
ALL_MODES = {'debug': 'Debug',
|
|
'release': 'RelWithDebInfo',
|
|
'dev': 'Dev',
|
|
'sanitize': 'Sanitize',
|
|
'coverage': 'Coverage'}
|
|
|
|
def pytest_addoption(parser):
|
|
parser.addoption('--mode', choices=ALL_MODES.keys(), dest="mode",
|
|
help="Run only tests for given build mode(s)")
|
|
parser.addoption('--tmpdir', action='store', default='testlog', help='''Path to temporary test data and log files. The data is
|
|
further segregated per build mode. Default: ./testlog.''', )
|
|
parser.addoption('--run_id', action='store', default=None, help='Run id for the test run')
|
|
|
|
|
|
@pytest.fixture(scope="session")
|
|
def build_mode(request):
|
|
"""
|
|
This fixture returns current build mode.
|
|
"""
|
|
return request.config.getoption('mode')
|
|
|
|
def pytest_configure(config):
|
|
config.pluginmanager.register(ReportPlugin()) |