0 purchases
pydanticfactories 1.17.3
⚠️
The next version of this library is released as polyfactory. Users are encouraged to migrate to it.
⚠️
Pydantic-Factories
This library offers powerful mock data generation capabilities for pydantic
based models, dataclasses and TypeDicts. It can also be used with other libraries that use pydantic as a foundation.
Check out the documentation 📚.
Installation
pip install pydantic-factories
Example
from datetime import date, datetime
from typing import List, Union
from pydantic import BaseModel, UUID4
from pydantic_factories import ModelFactory
class Person(BaseModel):
id: UUID4
name: str
hobbies: List[str]
age: Union[float, int]
birthday: Union[datetime, date]
class PersonFactory(ModelFactory):
__model__ = Person
result = PersonFactory.build()
That's it - with almost no work, we are able to create a mock data object fitting the Person class model definition.
This is possible because of the typing information available on the pydantic model and model-fields, which are used as a
source of truth for data generation.
The factory parses the information stored in the pydantic model and generates a dictionary of kwargs that are passed to
the Person class' init method.
Features
✅ supports both built-in and pydantic types
✅ supports pydantic field constraints
✅ supports complex field types
✅ supports custom model fields
✅ supports dataclasses
✅ supports TypedDicts
Why This Library?
💯 powerful
💯 extensible
💯 simple
💯 rigorously tested
Contributing
This library is open to contributions - in fact we welcome it. Please see the contribution guide!
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.