def setUp(self): self.schema = { "command": (NoDefault, V.is_str), "verbosity": (0, V.is_int), "warp": (33, None) } self.validator = V.make_validator_from_schema(self.schema)
def test_validator_honours_object_factory(self): value = { "command" : b"echo 1", "verbosity" : 2 } validator = V.make_validator_from_schema(self.schema, factory=dict) result = validator(value) self.assert_(isinstance(result, dict))
def test_object_factory_defaults_to_Bunch(self): value = { "command" : b"echo 1", "verbosity" : 2 } validator = V.make_validator_from_schema(self.schema) result = validator(value) self.assert_(isinstance(result, V.Bunch))
def _parse_config(config, schema=SCHEMA): try: options = json.loads(config) except ValueError as e: raise ConfigurationError("Error parsing config file: %s" % e) validator = V.make_validator_from_schema(schema) try: cfg = validator(options) except ValueError as e: raise ConfigurationError("Error validating config file: %s " % e) return cfg
def test_validator_honours_object_factory(self): value = {"command": b"echo 1", "verbosity": 2} validator = V.make_validator_from_schema(self.schema, factory=dict) result = validator(value) self.assert_(isinstance(result, dict))
def test_object_factory_defaults_to_Bunch(self): value = {"command": b"echo 1", "verbosity": 2} validator = V.make_validator_from_schema(self.schema) result = validator(value) self.assert_(isinstance(result, V.Bunch))
from arv.autotest import validators as V class ConfigurationError(Exception): pass WATCH_NODE_SCHEMA = { "path": (NoDefault, V.is_dir), "recurse": (True, V.is_bool), "auto_add": (True, V.is_bool), "include": ([], V.is_list_of(V.is_regex)), "exclude": ([], V.is_list_of(V.is_regex)) } watch_node_validator = V.make_validator_from_schema(WATCH_NODE_SCHEMA) THROTTLING_SCHEMA = { "max_events_second": (1, V.is_int) } throttling_schema_validator = V.make_validator_from_schema(THROTTLING_SCHEMA) PREPROCESSOR_ACTION_SCHEMA = { "regex": (NoDefault, V.is_regex), "action": (NoDefault, V.is_unicode), "params": (None, None) } preprocessor_action_validator = V.make_validator_from_schema(PREPROCESSOR_ACTION_SCHEMA)
from arv.autotest.utils import NoDefault from arv.autotest import validators as V class ConfigurationError(Exception): pass WATCH_NODE_SCHEMA = { "path" : (NoDefault, V.is_dir), "recurse": (True, V.is_bool), "auto_add": (True, V.is_bool), "include": ([], V.is_list_of(V.is_regex)), "exclude": ([], V.is_list_of(V.is_regex)) } watch_node_validator = V.make_validator_from_schema(WATCH_NODE_SCHEMA) THROTTLING_SCHEMA = { "max_events_second" : (1, V.is_int) } throttling_schema_validator = V.make_validator_from_schema(THROTTLING_SCHEMA) PREPROCESSOR_ACTION_SCHEMA = { "regex" : (NoDefault, V.is_regex), "action": (NoDefault, V.is_unicode), "params": (None, None) } preprocessor_action_validator = V.make_validator_from_schema(PREPROCESSOR_ACTION_SCHEMA)