Add new flag to CLI:

Signed-off-by: Chris Mahoney <chrismahoey@hotmail.com>
This commit is contained in:
Chris Mahoney 2023-05-25 09:23:13 +10:00
parent 9e491f430e
commit 9d65bc288e
4 changed files with 3052 additions and 3038 deletions

View File

@ -72,6 +72,7 @@ Charles Cloud
Charles Machalow Charles Machalow
Charnjit SiNGH (CCSJ) Charnjit SiNGH (CCSJ)
Cheuk Ting Ho Cheuk Ting Ho
Chris Mahoney
Chris Lamb Chris Lamb
Chris NeJame Chris NeJame
Chris Rose Chris Rose

View File

@ -0,0 +1 @@
Enhanced the CLI flag for ``-c`` to now include ``--config-file`` to make it clear that this flag applies to the usage of a custom config file.

View File

@ -122,11 +122,12 @@ def pytest_addoption(parser: Parser) -> None:
) )
group._addoption( group._addoption(
"-c", "-c",
metavar="file", "--config-file",
metavar="FILE",
type=str, type=str,
dest="inifilename", dest="inifilename",
help="Load configuration from `file` instead of trying to locate one of the " help="Load configuration from `FILE` instead of trying to locate one of the "
"implicit configuration files", "implicit configuration files.",
) )
group._addoption( group._addoption(
"--continue-on-collection-errors", "--continue-on-collection-errors",

View File

@ -514,6 +514,8 @@ class TestConfigCmdlineParsing:
) )
config = pytester.parseconfig("-c", "custom.ini") config = pytester.parseconfig("-c", "custom.ini")
assert config.getini("custom") == "1" assert config.getini("custom") == "1"
config = pytester.parseconfig("--config-file", "custom.ini")
assert config.getini("custom") == "1"
pytester.makefile( pytester.makefile(
".cfg", ".cfg",
@ -524,6 +526,8 @@ class TestConfigCmdlineParsing:
) )
config = pytester.parseconfig("-c", "custom_tool_pytest_section.cfg") config = pytester.parseconfig("-c", "custom_tool_pytest_section.cfg")
assert config.getini("custom") == "1" assert config.getini("custom") == "1"
config = pytester.parseconfig("--config-file", "custom_tool_pytest_section.cfg")
assert config.getini("custom") == "1"
pytester.makefile( pytester.makefile(
".toml", ".toml",
@ -536,6 +540,8 @@ class TestConfigCmdlineParsing:
) )
config = pytester.parseconfig("-c", "custom.toml") config = pytester.parseconfig("-c", "custom.toml")
assert config.getini("custom") == "1" assert config.getini("custom") == "1"
config = pytester.parseconfig("--config-file", "custom.toml")
assert config.getini("custom") == "1"
def test_absolute_win32_path(self, pytester: Pytester) -> None: def test_absolute_win32_path(self, pytester: Pytester) -> None:
temp_ini_file = pytester.makefile( temp_ini_file = pytester.makefile(
@ -550,6 +556,8 @@ class TestConfigCmdlineParsing:
temp_ini_file_norm = normpath(str(temp_ini_file)) temp_ini_file_norm = normpath(str(temp_ini_file))
ret = pytest.main(["-c", temp_ini_file_norm]) ret = pytest.main(["-c", temp_ini_file_norm])
assert ret == ExitCode.OK assert ret == ExitCode.OK
ret = pytest.main(["--config-file", temp_ini_file_norm])
assert ret == ExitCode.OK
class TestConfigAPI: class TestConfigAPI:
@ -1907,6 +1915,9 @@ class TestSetupCfg:
with pytest.raises(pytest.fail.Exception): with pytest.raises(pytest.fail.Exception):
pytester.runpytest("-c", "custom.cfg") pytester.runpytest("-c", "custom.cfg")
with pytest.raises(pytest.fail.Exception):
pytester.runpytest("--config-file", "custom.cfg")
class TestPytestPluginsVariable: class TestPytestPluginsVariable:
def test_pytest_plugins_in_non_top_level_conftest_unsupported( def test_pytest_plugins_in_non_top_level_conftest_unsupported(