summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/flake8/main/application.py4
-rw-r--r--tests/unit/test_application.py10
2 files changed, 12 insertions, 2 deletions
diff --git a/src/flake8/main/application.py b/src/flake8/main/application.py
index dc65f90..6c68305 100644
--- a/src/flake8/main/application.py
+++ b/src/flake8/main/application.py
@@ -131,8 +131,8 @@ class Application(object):
pass
opts, args = self.option_manager.parse_known_args(args)
- # parse_known_args includes unknown options as args; get rid of them
- args = [a for a in args if not a.startswith('-')]
+ # parse_known_args includes program name and unknown options as args
+ args = [a for a in args[1:] if not a.startswith('-')]
self.prelim_opts, self.prelim_args = opts, args
def exit(self):
diff --git a/tests/unit/test_application.py b/tests/unit/test_application.py
index abe940d..a281012 100644
--- a/tests/unit/test_application.py
+++ b/tests/unit/test_application.py
@@ -96,3 +96,13 @@ def test_returns_specified_plugin(application):
assert execute is application.formatter_for('desired')
assert warning.called is False
+
+
+def test_prelim_opts_args(application):
+ """Verify we get sensible prelim opts and args."""
+ application.parse_preliminary_options_and_args(
+ ['flake8', '--foo', '--verbose', 'src', 'setup.py', '--statistics'])
+
+ assert application.prelim_opts.statistics
+ assert application.prelim_opts.verbose
+ assert application.prelim_args == ['src', 'setup.py']