in connectors/source.py [0:0]
def check_valid(self):
"""Validates every Field against its `validations`.
Raises ConfigurableFieldValueError if any validation errors are found.
If no errors are raised, then everything is valid.
"""
validation_errors = []
for _, field in self._config.items():
if not self.dependencies_satisfied(field):
# we don't validate a field if its dependencies are not met
logger.debug(
f"'{field.label}' was not validated because its dependencies were not met."
)
continue
if field.required and field.is_value_empty():
# a value is invalid if it is both required and empty
validation_errors.extend([f"'{field.label}' cannot be empty."])
continue
# finally check actual validations
validation_errors.extend(field.validate())
if len(validation_errors) > 0:
msg = f"Field validation errors: {'; '.join(validation_errors)}"
raise ConfigurableFieldValueError(msg)