Skip to main content

This tool contains validation logic for the BO4E migration data model (ibims). It uses the pvframework.

Project description

Pedantic Validator Tool

Unittests status badge Coverage status badge Linting status badge Black status badge PyPI

This package contains the validation logic to validate the data of the BO4E migration model ibims. It uses the pedantic-validator-framework to create ValidationManagers for each data set in ibims. (Currently supported are only Customer, Network and Resource.)

This package is designed to be used together with bomf. Although, it only uses the MigrationConfig to use the migration_key_date which is necessary for some validations.

Usage

Install it from pypi:

pip install pvtool

To use the validation logic you just need to bind the preconfigured modules of this package to ValidationManager of your Injector. Alternatively, you could execute the provider-method of the module on your own by supplying a MigrationConfig instance.

from injector import Injector
from pvtool import ValidationManagerProviderCustomer
from pvframework import ValidationManager
from bomf.config import MigrationConfig
from datetime import datetime, UTC

customer_injector = Injector([
    ValidationManagerProviderCustomer,
    lambda binder: binder.bind(MigrationConfig, MigrationConfig(migration_key_date=datetime(2021, 1, 1, tzinfo=UTC))),
])

customer_validation_manager = customer_injector.get(ValidationManager)

How to use this Repository on Your Machine

Follow the instructions in our Python template repository.

Contribute

You are very welcome to contribute to this repository by opening a pull request against the main branch.

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

pvtool-0.3.1.tar.gz (18.2 kB view details)

Uploaded Source

Built Distribution

pvtool-0.3.1-py3-none-any.whl (13.9 kB view details)

Uploaded Python 3

File details

Details for the file pvtool-0.3.1.tar.gz.

File metadata

  • Download URL: pvtool-0.3.1.tar.gz
  • Upload date:
  • Size: 18.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.5

File hashes

Hashes for pvtool-0.3.1.tar.gz
Algorithm Hash digest
SHA256 eb72b8f69963b06711acfe74ee0542c2317357532200a5effb3a11b865adb0ab
MD5 093ec0e52a3407e9294e23f003a2c038
BLAKE2b-256 7f24553d85fcb10dcdcd349c195b5e37213c8a64bdc61f1a6036c5b233fc1cb8

See more details on using hashes here.

File details

Details for the file pvtool-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: pvtool-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 13.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.5

File hashes

Hashes for pvtool-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 432c65aa2cc217778c289b714afd50f2d3c87ad2b93b037834eee7d68736f0ab
MD5 f6901f18d20ee803fd3f3eb289613012
BLAKE2b-256 a8ab029bc9dd8b1c299bfb6b8c08f951e8f80b8aa09ed326e110f2cef28b90bb

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