Add alias `--config-file` to `-c` (#11036)

Fixes #11031

Signed-off-by: Chris Mahoney <chrismahoey@hotmail.com>
Co-authored-by: Chris Mahoney <chrismahoey@hotmail.com>
This commit is contained in:
Chris Mahoney 2023-05-26 20:56:18 +10:00 committed by GitHub
parent af124c7f21
commit 4f3f36c396
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 19 additions and 4 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

@ -1918,7 +1918,8 @@ All the command-line flags can be obtained by running ``pytest --help``::
--strict-markers Markers not registered in the `markers` section of --strict-markers Markers not registered in the `markers` section of
the configuration file raise errors the configuration file raise errors
--strict (Deprecated) alias to --strict-markers --strict (Deprecated) alias to --strict-markers
-c file Load configuration from `file` instead of trying to -c, --config-file FILE
Load configuration from `FILE` instead of trying to
locate one of the implicit configuration files locate one of the implicit configuration files
--continue-on-collection-errors --continue-on-collection-errors
Force test execution even if collection errors occur Force test execution even if collection errors occur

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(