diff options
author | Florian Bruhin <me@the-compiler.org> | 2021-01-19 14:24:53 +0100 |
---|---|---|
committer | Florian Bruhin <me@the-compiler.org> | 2021-01-19 14:53:47 +0100 |
commit | d122ab7ce13f537ac52c9ede2ef5ab8332eb809e (patch) | |
tree | 863d15f496624e01740af97b43dcdf9f5ebb06cc /tests | |
parent | 1a6b69eb24aafd137cafa2baeefa6598e3fa2ce2 (diff) | |
download | qutebrowser-d122ab7ce13f537ac52c9ede2ef5ab8332eb809e.tar.gz qutebrowser-d122ab7ce13f537ac52c9ede2ef5ab8332eb809e.zip |
Refactor configtype __init__ methods
- Move the "completions" argument (to override completions) to BaseType
so any class can use it.
- Don't use **kwargs anywhere for better type checking.
- Make arguments kw-only where useful.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/unit/config/test_configtypes.py | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/tests/unit/config/test_configtypes.py b/tests/unit/config/test_configtypes.py index b1418c73a..729876103 100644 --- a/tests/unit/config/test_configtypes.py +++ b/tests/unit/config/test_configtypes.py @@ -311,6 +311,18 @@ class TestAll: for value, _desc in completions: typ.from_str(value) + def test_custom_completions(self, klass): + """Make sure we can pass custom completions.""" + completions = [('1', 'one'), ('2', 'two')] + typ = klass(completions=completions) + assert typ.complete() == completions + + def test_signature(self, klass): + """Make sure flag arguments are kw-only.""" + sig = inspect.signature(klass) + for name in ['none_ok', 'completions']: + assert sig.parameters[name].kind == inspect.Parameter.KEYWORD_ONLY + class TestBaseType: @@ -534,8 +546,7 @@ class ListSubclass(configtypes.List): elemtype = configtypes.String(none_ok=none_ok_inner) super().__init__(elemtype, none_ok=none_ok_outer, length=length) if set_valid_values: - self.valtype.valid_values = configtypes.ValidValues( - 'foo', 'bar', 'baz') + self.valtype.valid_values = configtypes.ValidValues('foo', 'bar', 'baz') class FlagListSubclass(configtypes.FlagList): |