Skip to content

Commit b9d9ba3

Browse files
committed
validatortype refactoring
1 parent c2dfec0 commit b9d9ba3

File tree

2 files changed

+15
-9
lines changed

2 files changed

+15
-9
lines changed

gladiator/commons.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,12 @@
11
from .utils import selector_as_string
22

33

4+
class ValidatorType(object):
5+
primitive = 'primitive'
6+
composite = 'composite'
7+
unknown = 'unknown'
8+
9+
410
class ValidationResult(object):
511
def __init__(self, type_, validator, obj, selector, ctx, **kw):
612
self.type_ = type_

gladiator/core.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
from uuid import uuid4
44
from gettext import NullTranslations
55
from .utils import selector_as_string
6-
from .commons import Success, Failure, Skip
6+
from .commons import ValidatorType, Success, Failure, Skip
77

88

99
# logging.basicConfig(level=logging.DEBUG, stream=sys.stdout)
@@ -25,9 +25,9 @@ def validate(validator, obj, selector=None, ctx=None, **kw):
2525

2626
if _lazy_and_already_failed(ctx, selector):
2727
result = _skip_validate(validator, obj, selector, ctx)
28-
elif type_ == 'primitive':
28+
elif type_ == ValidatorType.primitive:
2929
result = _primitive_validate(validator, obj, selector, ctx)
30-
elif type_ == 'composite':
30+
elif type_ == ValidatorType.composite:
3131
result = _composite_validate(validator, obj, selector, ctx)
3232

3333
if result.success is False:
@@ -36,7 +36,7 @@ def validate(validator, obj, selector=None, ctx=None, **kw):
3636
if logger.isEnabledFor(logging.DEBUG):
3737
logger.debug(' {id} {vname} on object {obj} (selector={selector}) result: {result}'.format(
3838
id=ctx['uuid'],
39-
vname=validator.__name__ if type_ == 'primitive' else 'composite-{}'.format(id(validator)),
39+
vname=validator.__name__ if type_ == ValidatorType.primitive else 'composite-{}'.format(id(validator)),
4040
obj=str(obj),
4141
selector=selector_as_string(selector),
4242
result=result.__class__.__name__
@@ -64,11 +64,11 @@ def _init_ctx(ctx, **kw):
6464

6565
def _detect_validator_type(validator):
6666
if callable(validator):
67-
return 'primitive'
67+
return ValidatorType.primitive
6868
elif isinstance(validator, (list, tuple)):
69-
return 'composite'
69+
return ValidatorType.composite
7070
else:
71-
return 'unknown'
71+
return ValidatorType.unknown
7272

7373

7474
def _skip_validate(validator, obj, selector, ctx):
@@ -96,7 +96,7 @@ def _parse_primitive_validator_ret(ret_):
9696
result, msg, msg_ctx = _parse_primitive_validator_ret(_ret)
9797
ret_cls = Success if result is True else Failure
9898
return ret_cls(
99-
type_='primitive',
99+
type_=ValidatorType.primitive,
100100
validator=validator,
101101
obj=obj,
102102
selector=selector,
@@ -131,7 +131,7 @@ def _apply_selector(obj, selector_str, current_selector):
131131

132132
ret_cls = Success if all(results) else Failure
133133
return ret_cls(
134-
type_='composite',
134+
type_=ValidatorType.composite,
135135
validator=validator,
136136
obj=obj,
137137
selector=selector,

0 commit comments

Comments
 (0)