Skip to main content

Python Type validator with decorators

Project description

# python-type-valid

[![Python type valid Build passed](https://travis-ci.org/edmhs/python-type-valid.svg?branch=master)](https://travis-ci.org/edmhs/python-type-valid)
[![Python type valid Code Coverage](https://codecov.io/gh/codecov/example-python/branch/master/graph/badge.svg)](https://codecov.io/gh/edmhs/python-type-valid)
[![Maintainability](https://api.codeclimate.com/v1/badges/a99a88d28ad37a79dbf6/maintainability)](https://codeclimate.com/github/edmhs/python-type-valid)


Python type validation decorator, validates input and output types

### Installation
~~~sh
pip install type-valid
~~~

### Usage
~~~python
from type_valid import type_valid

@type_valid
def hello(name: str) -> str:
return name

#valid
hello("Bob")

#invalid
hello(1)

@type_valid
def user(name: str, age: int, salary: float) -> str:
return name+str(age)+str(salary)

#valid
user(name="Bob", age=25, salary=1000.00)

~~~

### Raises TypeError
~~~sh
TypeError: in method 'hello', Argument 'name' is not of type <class 'str'>, received <class 'int'>
~~~

### Todo:
* Validate input DONE
* Validate Output DONE
* Validate input **kwargs ?
* Validate mandatory **kwargs ?
* Multiple types ?

### Types examples

~~~
str ""
int 4
float 10.5
list []
tuple ()
...
~~~

Project details


Download files

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

Files for type-valid, version 0.1.5
Filename, size File type Python version Upload date Hashes
Filename, size type_valid-0.1.5-py3-none-any.whl (2.6 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size type_valid-0.1.5.tar.gz (2.3 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page