Merge branch 'config-read-varargs' into 'master'

config: Change ConfigFileFinder._read_config() to accept variadic args

See merge request pycqa/flake8!397
This commit is contained in:
Eric N. Vander Weele 2020-01-07 03:23:19 +00:00
commit ad1b5c0276
3 changed files with 9 additions and 9 deletions

View file

@ -4,7 +4,7 @@ import configparser
import logging import logging
import os.path import os.path
import sys import sys
from typing import Dict, List, Sequence, Tuple, Union from typing import Dict, List, Tuple
from flake8 import utils from flake8 import utils
@ -55,11 +55,9 @@ class ConfigFileFinder(object):
# fmt: on # fmt: on
@staticmethod @staticmethod
def _read_config(files): def _read_config(*files):
# type: (Union[Sequence[str], str]) -> Tuple[configparser.RawConfigParser, List[str]] # noqa: E501 # type: (*str) -> Tuple[configparser.RawConfigParser, List[str]]
config = configparser.RawConfigParser() config = configparser.RawConfigParser()
if isinstance(files, (str, type(u""))):
files = [files]
found_files = [] found_files = []
for filename in files: for filename in files:
@ -129,7 +127,9 @@ class ConfigFileFinder(object):
Return (config, found_config_files) tuple. Return (config, found_config_files) tuple.
""" """
if self._local_configs is None: if self._local_configs is None:
config, found_files = self._read_config(self.local_config_files()) config, found_files = self._read_config(
*self.local_config_files()
)
if found_files: if found_files:
LOG.debug("Found local configuration files: %s", found_files) LOG.debug("Found local configuration files: %s", found_files)
self._local_configs = config self._local_configs = config

View file

@ -113,7 +113,7 @@ def test_local_configs_double_read():
]) ])
def test_read_config_catches_broken_config_files(files): def test_read_config_catches_broken_config_files(files):
"""Verify that we do not allow the exception to bubble up.""" """Verify that we do not allow the exception to bubble up."""
_, parsed = config.ConfigFileFinder._read_config(files) _, parsed = config.ConfigFileFinder._read_config(*files)
assert BROKEN_CONFIG_PATH not in parsed assert BROKEN_CONFIG_PATH not in parsed

View file

@ -183,7 +183,7 @@ def test_parsed_configs_are_equivalent(
localcfs.return_value = [config_fixture_path] localcfs.return_value = [config_fixture_path]
with mock.patch.object(config_finder, with mock.patch.object(config_finder,
'user_config_file') as usercf: 'user_config_file') as usercf:
usercf.return_value = [] usercf.return_value = ''
parsed_config = parser.merge_user_and_local_config() parsed_config = parser.merge_user_and_local_config()
assert parsed_config['ignore'] == ['E123', 'W234', 'E111'] assert parsed_config['ignore'] == ['E123', 'W234', 'E111']
@ -215,7 +215,7 @@ def test_parsed_hyphenated_and_underscored_names(
localcfs.return_value = [config_file] localcfs.return_value = [config_file]
with mock.patch.object(config_finder, with mock.patch.object(config_finder,
'user_config_file') as usercf: 'user_config_file') as usercf:
usercf.return_value = [] usercf.return_value = ''
parsed_config = parser.merge_user_and_local_config() parsed_config = parser.merge_user_and_local_config()
assert parsed_config['max_line_length'] == 110 assert parsed_config['max_line_length'] == 110