Put plugin options into separate argparse groups

This commit is contained in:
Anthony Sottile 2019-08-19 15:58:34 -07:00
parent f265b2275b
commit 8fd36ba15b
4 changed files with 30 additions and 4 deletions

View file

@ -307,3 +307,14 @@ def test_optparse_normalize_help(optmanager, capsys):
out, err = capsys.readouterr()
output = out + err
assert 'default: bar' in output
def test_optmanager_group(optmanager, capsys):
"""Test that group(...) causes options to be assigned to a group."""
with optmanager.group('groupname'):
optmanager.add_option('--foo')
with pytest.raises(SystemExit):
optmanager.parse_args(['--help'])
out, err = capsys.readouterr()
output = out + err
assert '\ngroupname:\n' in output

View file

@ -5,6 +5,7 @@ import mock
import pytest
from flake8 import exceptions
from flake8.options import manager as options_manager
from flake8.plugins import manager
@ -91,7 +92,7 @@ def test_register_options():
entry_point = mock.Mock(spec=['load'])
plugin_obj = mock.Mock(spec_set=['name', 'version', 'add_options',
'parse_options'])
option_manager = mock.Mock(spec=['register_plugin'])
option_manager = mock.MagicMock(spec=options_manager.OptionManager)
plugin = manager.Plugin('T000', entry_point)
plugin._plugin = plugin_obj