summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric N. Vander Weele <ericvw@gmail.com>2020-01-12 15:13:41 -0800
committerEric N. Vander Weele <ericvw@gmail.com>2020-01-12 23:19:26 -0500
commit77b2506071bec65d75e5259e00ceefb91ae50cf1 (patch)
treeba1ab41f0d9e4f422a00649b98c98c120ed7771c
parent153032f778d609b206cbfdb56ddf27e6f46925c4 (diff)
downloadflake8-77b2506071bec65d75e5259e00ceefb91ae50cf1.tar.gz
config: Switch code paths to use 'ConfigFileFinder.config_file'
Now that the `ConfigFileFinder` has the `.config_file` attribute, switch the relevant code paths to utilize this public attribute. Tests have been updated to either construct `ConfigFileFinder` or mock the object appropriately.
-rw-r--r--src/flake8/options/config.py14
-rw-r--r--tests/integration/test_aggregator.py5
-rw-r--r--tests/unit/test_get_local_plugins.py6
-rw-r--r--tests/unit/test_merged_config_parser.py6
4 files changed, 19 insertions, 12 deletions
diff --git a/src/flake8/options/config.py b/src/flake8/options/config.py
index 76a81cf..a4a9783 100644
--- a/src/flake8/options/config.py
+++ b/src/flake8/options/config.py
@@ -317,14 +317,14 @@ class MergedConfigParser(object):
)
return {}
- if cli_config:
+ if self.config_finder.config_file:
LOG.debug(
"Ignoring user and locally found configuration files. "
'Reading only configuration from "%s" specified via '
"--config by the user",
- cli_config,
+ self.config_finder.config_file,
)
- return self.parse_cli_config(cli_config)
+ return self.parse_cli_config(self.config_finder.config_file)
return self.merge_user_and_local_config()
@@ -351,14 +351,14 @@ def get_local_plugins(config_finder, cli_config=None):
)
return local_plugins
- if cli_config:
+ if config_finder.config_file:
LOG.debug(
'Reading local plugins only from "%s" specified via '
"--config by the user",
- cli_config,
+ config_finder.config_file,
)
- config = config_finder.cli_config(cli_config)
- config_files = [cli_config]
+ config = config_finder.cli_config(config_finder.config_file)
+ config_files = [config_finder.config_file]
else:
config, config_files = config_finder.local_configs_with_files()
diff --git a/tests/integration/test_aggregator.py b/tests/integration/test_aggregator.py
index 672c865..e365dfc 100644
--- a/tests/integration/test_aggregator.py
+++ b/tests/integration/test_aggregator.py
@@ -30,7 +30,10 @@ def test_aggregate_options_with_config(optmanager):
"""Verify we aggregate options and config values appropriately."""
arguments = ['flake8', '--select',
'E11,E34,E402,W,F', '--exclude', 'tests/*']
- config_finder = config.ConfigFileFinder('flake8', [])
+ config_finder = config.ConfigFileFinder(
+ 'flake8',
+ [],
+ config_file=CLI_SPECIFIED_CONFIG)
options, args = aggregator.aggregate_options(
optmanager, config_finder, CLI_SPECIFIED_CONFIG, arguments)
diff --git a/tests/unit/test_get_local_plugins.py b/tests/unit/test_get_local_plugins.py
index 6311677..2a23d7a 100644
--- a/tests/unit/test_get_local_plugins.py
+++ b/tests/unit/test_get_local_plugins.py
@@ -24,10 +24,12 @@ def test_get_local_plugins_uses_cli_config():
config_finder.cli_config.return_value = config_obj
config_finder.ignore_config_files = False
config_obj.get.return_value = ''
+ config_file_value = 'foo.ini'
+ config_finder.config_file = config_file_value
- config.get_local_plugins(config_finder, cli_config='foo.ini')
+ config.get_local_plugins(config_finder, cli_config=config_file_value)
- config_finder.cli_config.assert_called_once_with('foo.ini')
+ config_finder.cli_config.assert_called_once_with(config_file_value)
def test_get_local_plugins():
diff --git a/tests/unit/test_merged_config_parser.py b/tests/unit/test_merged_config_parser.py
index f2d70d9..3881699 100644
--- a/tests/unit/test_merged_config_parser.py
+++ b/tests/unit/test_merged_config_parser.py
@@ -155,12 +155,14 @@ def test_parse_isolates_config(optmanager):
def test_parse_uses_cli_config(optmanager):
"""Verify behaviour of the parse method with a specified config."""
+ config_file_value = 'foo.ini'
config_finder = mock.MagicMock()
+ config_finder.config_file = config_file_value
config_finder.ignore_config_files = False
parser = config.MergedConfigParser(optmanager, config_finder)
- parser.parse(cli_config='foo.ini')
- config_finder.cli_config.assert_called_once_with('foo.ini')
+ parser.parse(cli_config=config_file_value)
+ config_finder.cli_config.assert_called_once_with(config_file_value)
@pytest.mark.parametrize('config_fixture_path', [