New package builder
This commit is contained in:
4
.gitignore
vendored
4
.gitignore
vendored
@@ -1,4 +1,8 @@
|
|||||||
|
# Byte-compiled / optimized / DLL files
|
||||||
__pycache__
|
__pycache__
|
||||||
*.pyc
|
*.pyc
|
||||||
|
|
||||||
|
# Distribution / packaging
|
||||||
build
|
build
|
||||||
|
dist
|
||||||
|
*.egg-info
|
||||||
|
|||||||
13
pyproject.toml
Normal file
13
pyproject.toml
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
[project]
|
||||||
|
name = "validator"
|
||||||
|
version = "1.0"
|
||||||
|
authors = [
|
||||||
|
{ name="RemiZOffAlex", email="remizoffalex@gmail.com" },
|
||||||
|
]
|
||||||
|
maintainers = [
|
||||||
|
{ name="RemiZOffAlex", email="remizoffalex@gmail.com" },
|
||||||
|
]
|
||||||
|
description = ""
|
||||||
|
readme = "README.md"
|
||||||
|
requires-python = ">=3.10"
|
||||||
|
keywords = ["data validation", "validator", "validation"]
|
||||||
@@ -7,14 +7,17 @@ import logging
|
|||||||
log = logging.getLogger(__name__)
|
log = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
class Validator():
|
class Validator:
|
||||||
def __init__(self, rules: list = []):
|
def __init__(self, rules: list = [], debug: bool = False):
|
||||||
self.rules = rules
|
self.rules = rules
|
||||||
|
self.debug = debug
|
||||||
|
if self.debug:
|
||||||
log.info('rules: {}'.format(rules))
|
log.info('rules: {}'.format(rules))
|
||||||
|
|
||||||
def __call__(self, value):
|
def __call__(self, value):
|
||||||
result = True
|
result = True
|
||||||
for rule in self.rules:
|
for rule in self.rules:
|
||||||
|
if self.debug:
|
||||||
log.info('rule: {}'.format(rule))
|
log.info('rule: {}'.format(rule))
|
||||||
result = rule(value)
|
result = rule(value)
|
||||||
if result.status is False:
|
if result.status is False:
|
||||||
@@ -22,7 +25,7 @@ class Validator():
|
|||||||
return Result(True)
|
return Result(True)
|
||||||
|
|
||||||
|
|
||||||
class Result():
|
class Result:
|
||||||
def __init__(self, status: bool = True, message: str = ''):
|
def __init__(self, status: bool = True, message: str = ''):
|
||||||
self.status = status
|
self.status = status
|
||||||
self.message = message
|
self.message = message
|
||||||
@@ -19,7 +19,7 @@ class EqualTo:
|
|||||||
return Result(True)
|
return Result(True)
|
||||||
|
|
||||||
|
|
||||||
class MaxLength():
|
class MaxLength:
|
||||||
def __init__(self, value, message: str = ''):
|
def __init__(self, value, message: str = ''):
|
||||||
self.limit = value
|
self.limit = value
|
||||||
self.message = message
|
self.message = message
|
||||||
Reference in New Issue
Block a user