entities_validation_svc/validators/validators.py

53 lines
No EOL
1,001 B
Python

import datetime
from schwifty import IBAN, BIC
def mandatory(field: str) -> bool:
return bool(field)
def empty(field: str) -> bool:
return not bool(field)
def iso_date(field: str) -> bool:
if not field:
return False
try:
datetime.datetime.strptime(field, "%Y-%m-%d")
return True
except ValueError:
return False
def valid_iban(field: str) -> bool:
if not field:
return False
if not type(field) == str:
return False
try:
IBAN(field)
return True
except ValueError:
return False
def valid_bic(field: str) -> bool:
if not field:
return False
if not type(field) == str:
return False
try:
BIC(field)
return True
except ValueError:
return False
def valid_money_amount(field: str) -> bool:
if not field:
return False
try:
float(field)
return True
except (ValueError, TypeError):
return False