diff options
author | Gleb Nikonorov <gleb.i.nikonorov@gmail.com> | 2020-05-30 20:36:02 -0400 |
---|---|---|
committer | Gleb Nikonorov <gleb.i.nikonorov@gmail.com> | 2020-05-30 20:36:02 -0400 |
commit | eef4f87e7b9958687b6032f8475535ac0beca10f (patch) | |
tree | e17e5872be6231aa16f9228227465a1fd7e075df /testing/test_config.py | |
parent | 56bf819c2f4eaf8b36bd8c42c06bb59d5a3bfc0f (diff) | |
download | pytest-eef4f87e7b9958687b6032f8475535ac0beca10f.tar.gz |
Output a warning to stderr when an invalid key is read from an INI config file
Diffstat (limited to 'testing/test_config.py')
-rw-r--r-- | testing/test_config.py | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/testing/test_config.py b/testing/test_config.py index 17385dc17..9323e6716 100644 --- a/testing/test_config.py +++ b/testing/test_config.py @@ -147,6 +147,52 @@ class TestParseIni: result = testdir.inline_run("--confcutdir=.") assert result.ret == 0 + @pytest.mark.parametrize( + "ini_file_text, invalid_keys, stderr_output", + [ + ( + """ + [pytest] + unknown_ini = value1 + another_unknown_ini = value2 + """, + ["unknown_ini", "another_unknown_ini"], + [ + "WARNING: unknown config ini key: unknown_ini", + "WARNING: unknown config ini key: another_unknown_ini", + ], + ), + ( + """ + [pytest] + unknown_ini = value1 + minversion = 5.0.0 + """, + ["unknown_ini"], + ["WARNING: unknown config ini key: unknown_ini"], + ), + ( + """ + [pytest] + minversion = 5.0.0 + """, + [], + [], + ), + ], + ) + def test_invalid_ini_keys_generate_warings( + self, testdir, ini_file_text, invalid_keys, stderr_output + ): + 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() + ) + + result = testdir.runpytest() + result.stderr.fnmatch_lines(stderr_output) + class TestConfigCmdlineParsing: def test_parsing_again_fails(self, testdir): |