Skip to main content

Package to validate data in a fluent way

Project description

\n

fluent_validator

Validate Your Data with Ease!

Code style: black PyPI version PyPI - Downloads PyPI - Python Version GitHub stars GitHub forks GitHub license

Overview

fluent_validator is a Python package that makes data validation a breeze! Say goodbye to complex, nested if statements and hello to a fluent and expressive way to validate your data. With fluent_validator, you can easily define and execute validation rules for your data in a clean and readable manner.

Features

  • Fluent Syntax: Define validation rules in a clean and fluent manner.
  • No Extra Dependencies: fluent_validator is lightweight and doesn't require any additional packages.
  • Python 3.7+ Support: It works seamlessly with Python versions 3.7, 3.8, 3.9, 3.10, and 3.11.
  • Extensive Validation Library: Check out our extensive list of available validations to cover all your validation needs.

Installation

You can install fluent_validator using pip:

pip install fluent-validator

Usage

Here's a quick example of how to use fluent_validator:

from fluent_validator import validate, validate_all

# Validate a single value
validate(10).not_is_none().greater_than(5).not_equal(40)

# Or validate multiple values
validate_all(10, 100).not_is_none().greater_than(5).not_equal(40)

Available Validations

fluent_validator offers a wide range of validations to suit your needs.

Notably, all validations have a corresponding negative form. Simply prefix the method with not_.

For example, the negative of is_none() is not_is_none().

Check out the full list of available above.

Validation Description
between(min_vl, max_vl) Check if the object is within the specified range.
contains_at_least(value) Check if the object (assumed to be iterable) contains at least the specified number of elements.
contains_at_most(value) Check if the object (assumed to be iterable) contains at most the specified number of elements.
contains_exactly(value) Check if the object (assumed to be iterable) contains exactly the specified number of elements.
equal(value) Check if the object is equal to the specified value.
greater_or_equal_than(value) Check if the object is greater than or equal to the specified value.
greater_than(value) Check if the object is greater than the specified value.
has_unique_values() Check if the object (assumed to be iterable) contains unique values. Note: This function assumes that the object's elements are hashable.
is_bool() Check if the object is a boolean.
is_callable() Check if the object is callable (e.g., a function or method).
is_false() Check if the object is a boolean and has a value of False.
is_in() Check if the object is in a collection of values.
is_instance() Check if the object is an instance of one or more specified types.
is_iterable() Check if the object is iterable.
is_none() Check if the object is None.
is_number() Check if the object is a number (int or float).
is_string() Check if the object is a string.
is_true() Check if the object is a boolean and has a value of True.
less_or_equal_than(value) Check if the object is less than or equal to the specified value.
less_than(value) Check if the object is less than the specified value.
max(value) Check if the object is less than or equal to the specified maximum value.
min(value) Check if the object is greater than or equal to the specified minimum value.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

If you encounter any issues or have questions about fluent_validator, please feel free to open an issue. We're here to help!

Happy Validating! 🚀

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fluent_validator-0.1.0.tar.gz (5.2 kB view details)

Uploaded Source

Built Distribution

fluent_validator-0.1.0-py3-none-any.whl (6.4 kB view details)

Uploaded Python 3

File details

Details for the file fluent_validator-0.1.0.tar.gz.

File metadata

  • Download URL: fluent_validator-0.1.0.tar.gz
  • Upload date:
  • Size: 5.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for fluent_validator-0.1.0.tar.gz
Algorithm Hash digest
SHA256 37398a58479efbefde996a7f96bca670e8b728053a8fc62d42aa6f1eb07a1c3e
MD5 5f56ce8a4b6704ecac1066d89bb2d486
BLAKE2b-256 36906865f78f054a808c2f38f1f3ed985d876f504ddf5bb3f488cee28f36d175

See more details on using hashes here.

File details

Details for the file fluent_validator-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for fluent_validator-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e40454712ec7afad573c689515e07a452e4ae1da24b5f389a45bb727f268ddcf
MD5 3549d07bc71b10eca4938b48fdb05b89
BLAKE2b-256 9d5ecebb1af8e026261fdf3fe3a53fd41403c6fb4f53c8bb891b07cfdf632a76

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page