def test_validate_no_choice_in_list(self): config = _root({'foo': None}) with self.assertRaises(confit.ConfigValueError): config['foo'].get( confit.OneOf([ confit.String(), confit.Integer(), ]))
def test_validate_good_choice_in_list(self): config = _root({'foo': 2}) valid = config['foo'].get( confit.OneOf([ confit.String(), confit.Integer(), ])) self.assertEqual(valid, 2)
def test_check_string_type(self): config = _root({'foo': 5}) with self.assertRaises(confit.ConfigTypeError): config.get({'foo': confit.String()})
def test_pattern_matching(self): config = _root({'foo': 'bar', 'baz': 'zab'}) valid = config.get({'foo': confit.String(pattern='^ba.$')}) self.assertEqual(valid['foo'], 'bar') with self.assertRaises(confit.ConfigValueError): config.get({'baz': confit.String(pattern='!')})
def test_string_default_value(self): config = _root({}) valid = config.get({'foo': confit.String('baz')}) self.assertEqual(valid['foo'], 'baz')
def test_validate_string(self): config = _root({'foo': 'bar'}) valid = config.get({'foo': confit.String()}) self.assertEqual(valid['foo'], 'bar')