def test_validator_required(self): x = parse(self.fd("""!spec\ntype: !!int "0"\ndescription:\nvalue: !required\n""")) b = ConfigurationBuilder(dict(section=dict(param=x))) params = b.build() assert params['section']['param'] != 1 errors = b.validate(params) assert ('section', 'param') in errors assert isinstance(errors[('section', 'param')], Requirement)
def test_validator_type_list(self): x = parse(self.fd("""!spec\ntype: [ !!int "0", !!null ]\ndescription:\nvalue: !required\n""")) y = parse(self.fd("""section:\n param: !!null""")) b = ConfigurationBuilder(dict(section=dict(param=x))) params = b.build(y) assert params['section']['param'] == None errors = b.validate(params) assert not errors
def test_validator_type_error(self): x = parse(self.fd("""!spec\ntype: !!int "0"\ndescription:\nvalue: !required\n""")) y = parse(self.fd("""section:\n param: foo""")) b = ConfigurationBuilder(dict(section=dict(param=x))) params = b.build(y) assert params['section']['param'] == 'foo' errors = b.validate(params) assert errors assert ('section', 'param') in errors assert isinstance(errors[('section', 'param')], TypeError)