23 lines
548 B
Python
23 lines
548 B
Python
""" RegexpOption
|
|
"""
|
|
from .autopath import do_autopath
|
|
do_autopath()
|
|
|
|
import pytest
|
|
from tiramisu import RegexpOption, OptionDescription, Config
|
|
import re
|
|
|
|
|
|
class ColorOption(RegexpOption):
|
|
__slots__ = tuple()
|
|
_type = 'Color'
|
|
_regexp = re.compile(r"^#(?:[0-9a-f]{3}){1,2}$")
|
|
|
|
|
|
def test_regexp_option():
|
|
r = ColorOption('test', 'test')
|
|
od = OptionDescription('od', 'od', [r])
|
|
cfg = Config(od)
|
|
cfg.option('test').value.set('#ff0000')
|
|
with pytest.raises(ValueError):
|
|
cfg.option('test').value.set('not a color')
|