last price revision validation rules
Project description
Price Validation Engine
Overview
Price Validation Engine is framework to create skeleton to validate last price revision
requirements
- python 3.6+
- Linux, MacOS, windows
install
pip install price-val-engine
Start Project
python -m price_val_engine startproject project_name
Project template structure
- base_dir
- project_name
- __init__.py
- settings.py
- validtion_rules.py
- run.py
Run project
python run.py --input=input.csv --output=output.csv
input as s3 csv file
python run.py --input=s3://bucket_name/path/input.csv --output=s3://bucket_name/path/input.csv
settings.py
-
default validation pipeline
VALIDATION_PIPELINES = [ 'price_val_engine.core.validations.general_rules.NullNegativeZeroValidationRule', 'price_val_engine.core.validations.general_rules.OutOfRangeValidationRule', 'price_val_engine.core.validations.revision_rules.DeltaPercentageFromLastDayRule', ]
Add new custom validation rule
- step 1 you can define your custom validtion rules in the file `project_name/validation_rules.py`
class MyValidationRule(BaseRule)
name = "validation_rules.myvalidation_rule"
message = "price could not be gte {max_price}"
severity = ''
def is_valid(self, item):
max_price = 50
if item['price'] >= max_price:
self.message.format(max_price)
self.severity = 'HIGH' # you can define severity LOW, MEDIUM and HIGH
- step 2 add your newly defined rule in `setting.py`
VALIDATION_PIPELINES = [
...,
'project_name.validation_rules.MyValidationRule
]
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
price-val-engine-0.1.7.tar.gz
(13.2 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file price-val-engine-0.1.7.tar.gz.
File metadata
- Download URL: price-val-engine-0.1.7.tar.gz
- Upload date:
- Size: 13.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.9.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4752d5b7e69cc087af1d2ec6c73670e0dfe8cfb377786ec544093fe98fadee27
|
|
| MD5 |
71066065f1e91d5bc29e38948aa6ed18
|
|
| BLAKE2b-256 |
b3ab9073f3259623d3eaec5098024b4629834ca58f3fabaf347675c8991fc3e8
|
File details
Details for the file price_val_engine-0.1.7-py3-none-any.whl.
File metadata
- Download URL: price_val_engine-0.1.7-py3-none-any.whl
- Upload date:
- Size: 18.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.9.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b54d5991ab8b976aec9e0ffbbdba1a880ded5fcacc1211081b2e1913eee26286
|
|
| MD5 |
cc8a5703fd808b8e126abf089c7f92fd
|
|
| BLAKE2b-256 |
88f1ff6c3c60e3c18fa111efe1da0422b26eaacd4029a46e537e0836a3219593
|