Skip to content

Commit

Permalink
Show invalid ini keys sorted
Browse files Browse the repository at this point in the history
Otherwise this relies on the dictionary order of `config.inicfg`, which
is insertion order in py36+ but "random" order in py35.
  • Loading branch information
nicoddemus committed Jun 2, 2020
1 parent 69d2ddc commit 8ac18bb
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 6 deletions.
2 changes: 1 addition & 1 deletion src/_pytest/config/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -1074,7 +1074,7 @@ def _checkversion(self):
)

def _validatekeys(self):
for key in self._get_unknown_ini_keys():
for key in sorted(self._get_unknown_ini_keys()):
message = "Unknown config ini key: {}\n".format(key)
if self.known_args_namespace.strict_config:
fail(message, pytrace=False)
Expand Down
8 changes: 3 additions & 5 deletions testing/test_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -158,10 +158,10 @@ def test_confcutdir(self, testdir):
""",
["unknown_ini", "another_unknown_ini"],
[
"WARNING: Unknown config ini key: unknown_ini",
"WARNING: Unknown config ini key: another_unknown_ini",
"WARNING: Unknown config ini key: unknown_ini",
],
"Unknown config ini key: unknown_ini",
"Unknown config ini key: another_unknown_ini",
),
(
"""
Expand Down Expand Up @@ -200,9 +200,7 @@ def test_invalid_ini_keys(
):
testdir.tmpdir.join("pytest.ini").write(textwrap.dedent(ini_file_text))
config = testdir.parseconfig()
assert config._get_unknown_ini_keys() == invalid_keys, str(
config._get_unknown_ini_keys()
)
assert sorted(config._get_unknown_ini_keys()) == sorted(invalid_keys)

result = testdir.runpytest()
result.stderr.fnmatch_lines(stderr_output)
Expand Down

0 comments on commit 8ac18bb

Please sign in to comment.