Skip to main content

Validations Engine

Engine for creating and running validations for general purposes.

Release Python Version License Code style: black

Source Downloads Page Installation Command
PyPi PyPi Downloads Link pip install validations-engine

Build status

Develop Stable Documentation Sonar
Test Publish Documentation Status Quality Gate Status

Purpose

This automation engine was conceived to simulate key communication/integration lines between services that compose the core jobs of the data engineering pipeline at QuintoAndar, to guarantee there is no failures in the pipeline (and early catch eventual failures). But it can execute validations for general purposes.

Structure and the engine core concepts

This engine is composed by the Executors and the ValidationSuites.

Executors

Executors are responsible for executing all the respective validation suites that inherit them. A suite can inherit a custom executor or the BaseValidationSuitesExecutor. The executor may contain default and generic code and tests for a group of suites. For example, we may have one executor with features for validating a group of Databases and another for validating some APIs.

Validation Suites

A validation suite works like a Python unit test class. Once you define the validation methods (following the name pattern), these methods will be run by the engine.

Inside the validation suite class, you may implement into the validation methods the validations you want to perform. You can implement a custom validation inside your suite or if it is a common validation you may want to generalize it and use a custom executor like DatabaseValidationSuitesExecutor for sharing the same validation among other suites that inherits it. Every suite must inherit from an executor, in order to be parsed and run. So it should inherit from the BaseValidationSuitesExecutor or from a custom one (that inherits from the base executor).

The validation_* methods inside the suite and inside the executor classes will run automatically by the validation engine.

To check library main features and full documentation you can check the Validations Engine's Documentation, which is hosted by Read the Docs.

License

Apache License 2.0

Contributing

All contributions are welcome! Feel free to open Pull Requests. Check the development and contributing guidelines described in CONTRIBUTING.md

Made with ❤️ by the Data Engineering team from QuintoAndar

Metadata

Release files for validations-engine 2.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for validations-engine 2.0.0
File Size Uploaded
validations_engine-2.0.0.tar.gz 6.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for validations-engine 2.0.0
File Interpreter ABI Platform
validations_engine-2.0.0-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 14.9 kB

Release files / validations_engine-2.0.0.tar.gz

Download URL validations_engine-2.0.0.tar.gz
Size 6.8 kB
Tags Source
SHA-256 checksum
How to use checksums
1547093f38efeedbf20bf9da3d39bdfc1b3166253489e4d2381e6ed0447d52d5
BLAKE2b-256 checksum
How to use checksums
6df213b986e2ca77da4d02d48054abc6f9323443818da59a7aff48a6ead408ef
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.7.17

Release files / validations_engine-2.0.0-py2.py3-none-any.whl

Download URL validations_engine-2.0.0-py2.py3-none-any.whl
Size 8.1 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
d00e30d7c1e0b6f149d640c61993cd934b94e33016cf642992b981d5c9be14a6
BLAKE2b-256 checksum
How to use checksums
2fec86da4ef3e367be5b3bd74dcf18f0c554d12b6a4dd2630420cf1c03956ca9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.7.17

Release history Release notifications | RSS feed

This release

2.0.0 This release

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page