Cleanup pytest_addoption

This commit is contained in:
Thomas Hisch 2017-09-13 15:32:23 +02:00
parent 1ba219e0da
commit 1bea7e6985
1 changed files with 21 additions and 40 deletions

View File

@ -13,12 +13,6 @@ DEFAULT_LOG_FORMAT = '%(filename)-25s %(lineno)4d %(levelname)-8s %(message)s'
DEFAULT_LOG_DATE_FORMAT = '%H:%M:%S' DEFAULT_LOG_DATE_FORMAT = '%H:%M:%S'
def add_option_ini(parser, option, dest, default=None, **kwargs):
parser.addini(dest, default=default,
help='default value for ' + option)
parser.getgroup('catchlog').addoption(option, dest=dest, **kwargs)
def get_option_ini(config, name): def get_option_ini(config, name):
ret = config.getoption(name) # 'default' arg won't work as expected ret = config.getoption(name) # 'default' arg won't work as expected
if ret is None: if ret is None:
@ -29,70 +23,57 @@ def get_option_ini(config, name):
def pytest_addoption(parser): def pytest_addoption(parser):
"""Add options to control log capturing.""" """Add options to control log capturing."""
group = parser.getgroup('catchlog', 'Log catching') group = parser.getgroup('logging')
add_option_ini(parser,
def add_option_ini(option, dest, default=None, **kwargs):
parser.addini(dest, default=default,
help='default value for ' + option)
group.addoption(option, dest=dest, **kwargs)
add_option_ini(
'--no-print-logs', '--no-print-logs',
dest='log_print', action='store_const', const=False, default=True, dest='log_print', action='store_const', const=False, default=True,
help='disable printing caught logs on failed tests.' help='disable printing caught logs on failed tests.')
)
add_option_ini( add_option_ini(
parser,
'--log-level', '--log-level',
dest='log_level', default=None, dest='log_level', default=None,
help='logging level used by the logging module' help='logging level used by the logging module')
) add_option_ini(
add_option_ini(parser,
'--log-format', '--log-format',
dest='log_format', default=DEFAULT_LOG_FORMAT, dest='log_format', default=DEFAULT_LOG_FORMAT,
help='log format as used by the logging module.' help='log format as used by the logging module.')
) add_option_ini(
add_option_ini(parser,
'--log-date-format', '--log-date-format',
dest='log_date_format', default=DEFAULT_LOG_DATE_FORMAT, dest='log_date_format', default=DEFAULT_LOG_DATE_FORMAT,
help='log date format as used by the logging module.' help='log date format as used by the logging module.')
)
add_option_ini( add_option_ini(
parser,
'--log-cli-level', '--log-cli-level',
dest='log_cli_level', default=None, dest='log_cli_level', default=None,
help='cli logging level.' help='cli logging level.')
)
add_option_ini( add_option_ini(
parser,
'--log-cli-format', '--log-cli-format',
dest='log_cli_format', default=None, dest='log_cli_format', default=None,
help='log format as used by the logging module.' help='log format as used by the logging module.')
)
add_option_ini( add_option_ini(
parser,
'--log-cli-date-format', '--log-cli-date-format',
dest='log_cli_date_format', default=None, dest='log_cli_date_format', default=None,
help='log date format as used by the logging module.' help='log date format as used by the logging module.')
)
add_option_ini( add_option_ini(
parser,
'--log-file', '--log-file',
dest='log_file', default=None, dest='log_file', default=None,
help='path to a file when logging will be written to.' help='path to a file when logging will be written to.')
)
add_option_ini( add_option_ini(
parser,
'--log-file-level', '--log-file-level',
dest='log_file_level', default=None, dest='log_file_level', default=None,
help='log file logging level.' help='log file logging level.')
)
add_option_ini( add_option_ini(
parser,
'--log-file-format', '--log-file-format',
dest='log_file_format', default=DEFAULT_LOG_FORMAT, dest='log_file_format', default=DEFAULT_LOG_FORMAT,
help='log format as used by the logging module.' help='log format as used by the logging module.')
)
add_option_ini( add_option_ini(
parser,
'--log-file-date-format', '--log-file-date-format',
dest='log_file_date_format', default=DEFAULT_LOG_DATE_FORMAT, dest='log_file_date_format', default=DEFAULT_LOG_DATE_FORMAT,
help='log date format as used by the logging module.' help='log date format as used by the logging module.')
)
def get_logger_obj(logger=None): def get_logger_obj(logger=None):