Validation
coola.validation ¶
Contain functions to validate function/method arguments.
coola.validation.validate_bool ¶
validate_bool(value: Any, *, name: str = 'value') -> None
Validate that value is a bool.
Integers such as 0 and 1 are rejected.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
TypeError
|
If |
Example
>>> from coola.validation import validate_bool
>>> validate_bool(True)
coola.validation.validate_dict ¶
validate_dict(value: Any, *, name: str = 'value') -> None
Validate that value is a dict.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
TypeError
|
If |
Example
>>> from coola.validation import validate_dict
>>> validate_dict({"a": 1})
coola.validation.validate_finite ¶
validate_finite(
value: float, *, name: str = "value"
) -> None
Validate that value is finite (neither infinite nor NaN).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
float
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
ValueError
|
If |
Example
>>> from coola.validation import validate_finite
>>> validate_finite(1.0)
coola.validation.validate_float ¶
validate_float(value: Any, *, name: str = 'value') -> None
Validate that value is a float.
Integers are rejected.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
TypeError
|
If |
Example
>>> from coola.validation import validate_float
>>> validate_float(1.0)
coola.validation.validate_frozenset ¶
validate_frozenset(
value: Any, *, name: str = "value"
) -> None
Validate that value is a frozenset.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
TypeError
|
If |
Example
>>> from coola.validation import validate_frozenset
>>> validate_frozenset(frozenset({1, 2}))
coola.validation.validate_ge ¶
validate_ge(
value: Any, low: Any, *, name: str = "value"
) -> None
Validate that value is greater than or equal to low.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
low
|
Any
|
The lower bound, inclusive. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
ValueError
|
If |
Example
>>> from coola.validation import validate_ge
>>> validate_ge(1, 0)
coola.validation.validate_gt ¶
validate_gt(
value: Any, low: Any, *, name: str = "value"
) -> None
Validate that value is strictly greater than low.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
low
|
Any
|
The lower bound, exclusive. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
ValueError
|
If |
Example
>>> from coola.validation import validate_gt
>>> validate_gt(1, 0)
coola.validation.validate_in ¶
validate_in(
value: Any, valid: Container, *, name: str = "value"
) -> None
Validate that value belongs to valid.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
valid
|
Container
|
The container of valid values. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
ValueError
|
If |
Example
>>> from coola.validation import validate_in
>>> validate_in("a", ("a", "b", "c"))
coola.validation.validate_int ¶
validate_int(value: Any, *, name: str = 'value') -> None
Validate that value is an int.
Booleans are rejected, even though bool subclasses int.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
TypeError
|
If |
Example
>>> from coola.validation import validate_int
>>> validate_int(1)
coola.validation.validate_isinstance ¶
Validate that value is an instance of cls.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
cls
|
type | tuple[type, ...]
|
The type or tuple of types that |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
TypeError
|
If |
Example
>>> from coola.validation import validate_isinstance
>>> validate_isinstance(1, int)
coola.validation.validate_le ¶
validate_le(
value: Any, high: Any, *, name: str = "value"
) -> None
Validate that value is less than or equal to high.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
high
|
Any
|
The upper bound, inclusive. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
ValueError
|
If |
Example
>>> from coola.validation import validate_le
>>> validate_le(0, 1)
coola.validation.validate_list ¶
validate_list(value: Any, *, name: str = 'value') -> None
Validate that value is a list.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
TypeError
|
If |
Example
>>> from coola.validation import validate_list
>>> validate_list([1, 2])
coola.validation.validate_lt ¶
validate_lt(
value: Any, high: Any, *, name: str = "value"
) -> None
Validate that value is strictly less than high.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
high
|
Any
|
The upper bound, exclusive. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
ValueError
|
If |
Example
>>> from coola.validation import validate_lt
>>> validate_lt(0, 1)
coola.validation.validate_negative ¶
validate_negative(
value: Any, *, name: str = "value"
) -> None
Validate that value is strictly negative.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
ValueError
|
If |
Example
>>> from coola.validation import validate_negative
>>> validate_negative(-1)
coola.validation.validate_non_negative ¶
validate_non_negative(
value: Any, *, name: str = "value"
) -> None
Validate that value is not negative.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
ValueError
|
If |
Example
>>> from coola.validation import validate_non_negative
>>> validate_non_negative(1)
coola.validation.validate_non_positive ¶
validate_non_positive(
value: Any, *, name: str = "value"
) -> None
Validate that value is not positive.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
ValueError
|
If |
Example
>>> from coola.validation import validate_non_positive
>>> validate_non_positive(-1)
coola.validation.validate_not_empty ¶
validate_not_empty(
value: Sized, *, name: str = "value"
) -> None
Validate that value is not empty.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Sized
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
ValueError
|
If |
Example
>>> from coola.validation import validate_not_empty
>>> validate_not_empty([1, 2, 3])
coola.validation.validate_positive ¶
validate_positive(
value: Any, *, name: str = "value"
) -> None
Validate that value is strictly positive.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
ValueError
|
If |
Example
>>> from coola.validation import validate_positive
>>> validate_positive(1)
coola.validation.validate_set ¶
validate_set(value: Any, *, name: str = 'value') -> None
Validate that value is a set.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
TypeError
|
If |
Example
>>> from coola.validation import validate_set
>>> validate_set({1, 2})
coola.validation.validate_str ¶
validate_str(value: Any, *, name: str = 'value') -> None
Validate that value is a str.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
TypeError
|
If |
Example
>>> from coola.validation import validate_str
>>> validate_str("abc")
coola.validation.validate_tuple ¶
validate_tuple(value: Any, *, name: str = 'value') -> None
Validate that value is a tuple.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
TypeError
|
If |
Example
>>> from coola.validation import validate_tuple
>>> validate_tuple((1, 2))
coola.validation.comparison ¶
Contain functions to validate comparisons.
coola.validation.comparison.validate_ge ¶
validate_ge(
value: Any, low: Any, *, name: str = "value"
) -> None
Validate that value is greater than or equal to low.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
low
|
Any
|
The lower bound, inclusive. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
ValueError
|
If |
Example
>>> from coola.validation import validate_ge
>>> validate_ge(1, 0)
coola.validation.comparison.validate_gt ¶
validate_gt(
value: Any, low: Any, *, name: str = "value"
) -> None
Validate that value is strictly greater than low.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
low
|
Any
|
The lower bound, exclusive. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
ValueError
|
If |
Example
>>> from coola.validation import validate_gt
>>> validate_gt(1, 0)
coola.validation.comparison.validate_le ¶
validate_le(
value: Any, high: Any, *, name: str = "value"
) -> None
Validate that value is less than or equal to high.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
high
|
Any
|
The upper bound, inclusive. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
ValueError
|
If |
Example
>>> from coola.validation import validate_le
>>> validate_le(0, 1)
coola.validation.comparison.validate_lt ¶
validate_lt(
value: Any, high: Any, *, name: str = "value"
) -> None
Validate that value is strictly less than high.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
high
|
Any
|
The upper bound, exclusive. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
ValueError
|
If |
Example
>>> from coola.validation import validate_lt
>>> validate_lt(0, 1)
coola.validation.comparison.validate_negative ¶
validate_negative(
value: Any, *, name: str = "value"
) -> None
Validate that value is strictly negative.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
ValueError
|
If |
Example
>>> from coola.validation import validate_negative
>>> validate_negative(-1)
coola.validation.comparison.validate_non_negative ¶
validate_non_negative(
value: Any, *, name: str = "value"
) -> None
Validate that value is not negative.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
ValueError
|
If |
Example
>>> from coola.validation import validate_non_negative
>>> validate_non_negative(1)
coola.validation.comparison.validate_non_positive ¶
validate_non_positive(
value: Any, *, name: str = "value"
) -> None
Validate that value is not positive.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
ValueError
|
If |
Example
>>> from coola.validation import validate_non_positive
>>> validate_non_positive(-1)
coola.validation.comparison.validate_positive ¶
validate_positive(
value: Any, *, name: str = "value"
) -> None
Validate that value is strictly positive.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
ValueError
|
If |
Example
>>> from coola.validation import validate_positive
>>> validate_positive(1)
coola.validation.container ¶
Contain functions to validate containers.
coola.validation.container.validate_in ¶
validate_in(
value: Any, valid: Container, *, name: str = "value"
) -> None
Validate that value belongs to valid.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
valid
|
Container
|
The container of valid values. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
ValueError
|
If |
Example
>>> from coola.validation import validate_in
>>> validate_in("a", ("a", "b", "c"))
coola.validation.container.validate_not_empty ¶
validate_not_empty(
value: Sized, *, name: str = "value"
) -> None
Validate that value is not empty.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Sized
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
ValueError
|
If |
Example
>>> from coola.validation import validate_not_empty
>>> validate_not_empty([1, 2, 3])
coola.validation.type ¶
Contain functions to validate types.
coola.validation.type.validate_bool ¶
validate_bool(value: Any, *, name: str = 'value') -> None
Validate that value is a bool.
Integers such as 0 and 1 are rejected.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
TypeError
|
If |
Example
>>> from coola.validation import validate_bool
>>> validate_bool(True)
coola.validation.type.validate_dict ¶
validate_dict(value: Any, *, name: str = 'value') -> None
Validate that value is a dict.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
TypeError
|
If |
Example
>>> from coola.validation import validate_dict
>>> validate_dict({"a": 1})
coola.validation.type.validate_float ¶
validate_float(value: Any, *, name: str = 'value') -> None
Validate that value is a float.
Integers are rejected.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
TypeError
|
If |
Example
>>> from coola.validation import validate_float
>>> validate_float(1.0)
coola.validation.type.validate_frozenset ¶
validate_frozenset(
value: Any, *, name: str = "value"
) -> None
Validate that value is a frozenset.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
TypeError
|
If |
Example
>>> from coola.validation import validate_frozenset
>>> validate_frozenset(frozenset({1, 2}))
coola.validation.type.validate_int ¶
validate_int(value: Any, *, name: str = 'value') -> None
Validate that value is an int.
Booleans are rejected, even though bool subclasses int.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
TypeError
|
If |
Example
>>> from coola.validation import validate_int
>>> validate_int(1)
coola.validation.type.validate_isinstance ¶
Validate that value is an instance of cls.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
cls
|
type | tuple[type, ...]
|
The type or tuple of types that |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
TypeError
|
If |
Example
>>> from coola.validation import validate_isinstance
>>> validate_isinstance(1, int)
coola.validation.type.validate_list ¶
validate_list(value: Any, *, name: str = 'value') -> None
Validate that value is a list.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
TypeError
|
If |
Example
>>> from coola.validation import validate_list
>>> validate_list([1, 2])
coola.validation.type.validate_set ¶
validate_set(value: Any, *, name: str = 'value') -> None
Validate that value is a set.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
TypeError
|
If |
Example
>>> from coola.validation import validate_set
>>> validate_set({1, 2})
coola.validation.type.validate_str ¶
validate_str(value: Any, *, name: str = 'value') -> None
Validate that value is a str.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
TypeError
|
If |
Example
>>> from coola.validation import validate_str
>>> validate_str("abc")
coola.validation.type.validate_tuple ¶
validate_tuple(value: Any, *, name: str = 'value') -> None
Validate that value is a tuple.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
Any
|
The value to validate. |
required |
name
|
str
|
The name of the value, used in the error message. |
'value'
|
Raises:
| Type | Description |
|---|---|
TypeError
|
If |
Example
>>> from coola.validation import validate_tuple
>>> validate_tuple((1, 2))