truthy: Validate options passed to 'allowed-values'

Make sure values passed in allowed values are correct ones. This is
possible thanks to previous commit, and should prevent users from
writing incorrect configurations.
pull/188/head
Adrien Vergé 6 years ago
parent f65553c4f7
commit 0ba193331b

@ -97,20 +97,6 @@ class TruthyTestCase(RuleTestCase):
problem1=(2, 7), problem2=(3, 7), problem1=(2, 7), problem2=(3, 7),
problem3=(4, 7), problem4=(5, 7)) problem3=(4, 7), problem4=(5, 7))
def test_empty_string_allowed_values(self):
conf = ('truthy:\n'
' allowed-values: ["", ""]\n')
self.check('---\n'
'key1: foo\n'
'key2: bar\n', conf)
self.check('---\n'
'key1: true\n'
'key2: yes\n'
'key3: false\n'
'key4: no\n', conf,
problem1=(2, 7), problem2=(3, 7),
problem3=(4, 7), problem4=(5, 7))
def test_explicit_types(self): def test_explicit_types(self):
conf = 'truthy: enable\n' conf = 'truthy: enable\n'
self.check('---\n' self.check('---\n'

@ -98,10 +98,6 @@ import yaml
from yamllint.linter import LintProblem from yamllint.linter import LintProblem
ID = 'truthy'
TYPE = 'token'
CONF = {'allowed-values': list}
DEFAULT = {'allowed-values': ['true', 'false']}
TRUTHY = ['YES', 'Yes', 'yes', TRUTHY = ['YES', 'Yes', 'yes',
'NO', 'No', 'no', 'NO', 'No', 'no',
@ -111,6 +107,12 @@ TRUTHY = ['YES', 'Yes', 'yes',
'OFF', 'Off', 'off'] 'OFF', 'Off', 'off']
ID = 'truthy'
TYPE = 'token'
CONF = {'allowed-values': list(TRUTHY)}
DEFAULT = {'allowed-values': ['true', 'false']}
def check(conf, token, prev, next, nextnext, context): def check(conf, token, prev, next, nextnext, context):
if prev and isinstance(prev, yaml.tokens.TagToken): if prev and isinstance(prev, yaml.tokens.TagToken):
return return

Loading…
Cancel
Save