validation endpoint implementation #7

Merged
tux merged 19 commits from experiments-cerberus into master 2021-01-05 14:34:02 +01:00
2 changed files with 31 additions and 30 deletions
Showing only changes of commit e3557f5d52 - Show all commits

View file

@ -1,36 +1,7 @@
#!/usr/bin/env python3
from cerberus import Validator
from schwifty import IBAN, BIC
import datetime
def valid_iban(field, value, error):
try:
IBAN(value)
return True
except ValueError:
error(field, 'not a valid IBAN')
def valid_bic(field, value, error):
try:
BIC(value)
return True
except ValueError:
error(field, 'not a valid BIC')
def iso_date(field, value, error):
try:
datetime.datetime.strptime(value, "%Y-%m-%d")
return True
except ValueError:
error(field, 'not a valid ISO 8601 date')
def valid_money_amount(field, value, error):
try:
float(value)
return True
except (ValueError, TypeError):
error(field, 'not a valid money value')
from validators import *
document = {
'finanzdaten':

30
validators.py Normal file
View file

@ -0,0 +1,30 @@
from schwifty import IBAN, BIC
import datetime
def valid_iban(field, value, error):
try:
IBAN(value)
return True
except ValueError:
error(field, 'not a valid IBAN')
def valid_bic(field, value, error):
try:
BIC(value)
return True
except ValueError:
error(field, 'not a valid BIC')
def iso_date(field, value, error):
try:
datetime.datetime.strptime(value, "%Y-%m-%d")
return True
except ValueError:
error(field, 'not a valid ISO 8601 date')
def valid_money_amount(field, value, error):
try:
float(value)
return True
except (ValueError, TypeError):
error(field, 'not a valid money value')