extend black formatting to tests as well

This commit is contained in:
Anthony Sottile 2021-04-18 09:17:48 -07:00
parent a7174759e9
commit af1668bf04
45 changed files with 1644 additions and 1307 deletions

View file

@ -7,73 +7,93 @@ import pytest
from flake8.options import config
CLI_SPECIFIED_FILEPATH = 'tests/fixtures/config_files/cli-specified.ini'
BROKEN_CONFIG_PATH = 'tests/fixtures/config_files/broken.ini'
CLI_SPECIFIED_FILEPATH = "tests/fixtures/config_files/cli-specified.ini"
BROKEN_CONFIG_PATH = "tests/fixtures/config_files/broken.ini"
def test_cli_config():
"""Verify opening and reading the file specified via the cli."""
cli_filepath = CLI_SPECIFIED_FILEPATH
finder = config.ConfigFileFinder('flake8')
finder = config.ConfigFileFinder("flake8")
parsed_config = finder.cli_config(cli_filepath)
assert parsed_config.has_section('flake8')
assert parsed_config.has_section("flake8")
@pytest.mark.parametrize('cwd,expected', [
# Root directory of project
(os.path.abspath('.'),
[os.path.abspath('setup.cfg'),
os.path.abspath('tox.ini')]),
# Subdirectory of project directory
(os.path.abspath('src'),
[os.path.abspath('setup.cfg'),
os.path.abspath('tox.ini')]),
# Outside of project directory
(os.path.abspath('/'),
[]),
])
@pytest.mark.parametrize(
"cwd,expected",
[
# Root directory of project
(
os.path.abspath("."),
[os.path.abspath("setup.cfg"), os.path.abspath("tox.ini")],
),
# Subdirectory of project directory
(
os.path.abspath("src"),
[os.path.abspath("setup.cfg"), os.path.abspath("tox.ini")],
),
# Outside of project directory
(os.path.abspath("/"), []),
],
)
def test_generate_possible_local_files(cwd, expected):
"""Verify generation of all possible config paths."""
finder = config.ConfigFileFinder('flake8')
finder = config.ConfigFileFinder("flake8")
with mock.patch.object(os, 'getcwd', return_value=cwd):
with mock.patch.object(os, "getcwd", return_value=cwd):
config_files = list(finder.generate_possible_local_files())
assert config_files == expected
@pytest.mark.parametrize('extra_config_files,expected', [
# Extra config files specified
([CLI_SPECIFIED_FILEPATH],
[os.path.abspath('setup.cfg'),
os.path.abspath('tox.ini'),
os.path.abspath(CLI_SPECIFIED_FILEPATH)]),
# Missing extra config files specified
([CLI_SPECIFIED_FILEPATH,
'tests/fixtures/config_files/missing.ini'],
[os.path.abspath('setup.cfg'),
os.path.abspath('tox.ini'),
os.path.abspath(CLI_SPECIFIED_FILEPATH)]),
])
@pytest.mark.parametrize(
"extra_config_files,expected",
[
# Extra config files specified
(
[CLI_SPECIFIED_FILEPATH],
[
os.path.abspath("setup.cfg"),
os.path.abspath("tox.ini"),
os.path.abspath(CLI_SPECIFIED_FILEPATH),
],
),
# Missing extra config files specified
(
[
CLI_SPECIFIED_FILEPATH,
"tests/fixtures/config_files/missing.ini",
],
[
os.path.abspath("setup.cfg"),
os.path.abspath("tox.ini"),
os.path.abspath(CLI_SPECIFIED_FILEPATH),
],
),
],
)
def test_local_config_files(extra_config_files, expected):
"""Verify discovery of local config files."""
finder = config.ConfigFileFinder('flake8', extra_config_files)
finder = config.ConfigFileFinder("flake8", extra_config_files)
assert list(finder.local_config_files()) == expected
def test_local_configs():
"""Verify we return a ConfigParser."""
finder = config.ConfigFileFinder('flake8')
finder = config.ConfigFileFinder("flake8")
assert isinstance(finder.local_configs(), configparser.RawConfigParser)
@pytest.mark.parametrize('files', [
[BROKEN_CONFIG_PATH],
[CLI_SPECIFIED_FILEPATH, BROKEN_CONFIG_PATH],
])
@pytest.mark.parametrize(
"files",
[
[BROKEN_CONFIG_PATH],
[CLI_SPECIFIED_FILEPATH, BROKEN_CONFIG_PATH],
],
)
def test_read_config_catches_broken_config_files(files):
"""Verify that we do not allow the exception to bubble up."""
_, parsed = config.ConfigFileFinder._read_config(*files)
@ -82,40 +102,42 @@ def test_read_config_catches_broken_config_files(files):
def test_read_config_catches_decoding_errors(tmpdir):
"""Verify that we do not allow the exception to bubble up."""
setup_cfg = tmpdir.join('setup.cfg')
setup_cfg = tmpdir.join("setup.cfg")
# pick bytes that are unlikely to decode
setup_cfg.write_binary(b'[x]\ny = \x81\x8d\x90\x9d')
setup_cfg.write_binary(b"[x]\ny = \x81\x8d\x90\x9d")
_, parsed = config.ConfigFileFinder._read_config(setup_cfg.strpath)
assert parsed == []
def test_config_file_default_value():
"""Verify the default 'config_file' attribute value."""
finder = config.ConfigFileFinder('flake8')
finder = config.ConfigFileFinder("flake8")
assert finder.config_file is None
def test_setting_config_file_value():
"""Verify the 'config_file' attribute matches constructed value."""
config_file_value = 'flake8.ini'
finder = config.ConfigFileFinder('flake8', config_file=config_file_value)
config_file_value = "flake8.ini"
finder = config.ConfigFileFinder("flake8", config_file=config_file_value)
assert finder.config_file == config_file_value
def test_ignore_config_files_default_value():
"""Verify the default 'ignore_config_files' attribute value."""
finder = config.ConfigFileFinder('flake8')
finder = config.ConfigFileFinder("flake8")
assert finder.ignore_config_files is False
@pytest.mark.parametrize('ignore_config_files_arg', [
False,
True,
])
@pytest.mark.parametrize(
"ignore_config_files_arg",
[
False,
True,
],
)
def test_setting_ignore_config_files_value(ignore_config_files_arg):
"""Verify the 'ignore_config_files' attribute matches constructed value."""
finder = config.ConfigFileFinder(
'flake8',
ignore_config_files=ignore_config_files_arg
"flake8", ignore_config_files=ignore_config_files_arg
)
assert finder.ignore_config_files is ignore_config_files_arg