Skip to main content

Smart object creation facility for Django.

Project description

Model Bakery: Smart fixtures for better tests

Build Coverage Latest PyPI version Documentation Status

Model Bakery offers you a smart way to create fixtures for testing in Django. With a simple and powerful API, you can create many objects with a single line of code.

Installation

pip install model-bakery

Supported Versions

Model Bakery follows the Python and Django release and support cycles. We drop support for Python and Django versions when they reach end-of-life.

Basic usage

# models.py
from django.db import models

class Customer(models.Model):
    name = models.CharField(max_length=30)
    email = models.EmailField()
    age = models.IntegerField()
    is_jards_macale_fan = models.BooleanField()
    bio = models.TextField()
    birthday = models.DateField()
    last_shopping = models.DateTimeField()

# test_models.py
from django.test import TestCase
from model_bakery import baker

class TestCustomerModel(TestCase):
    def setUp(self):
        self.customer = baker.make('shop.Customer')
        print(self.customer.__dict__)

"""
{'_state': <django.db.models.base.ModelState object at 0x1129a3240>,
 'age': 3841,
 'bio': 'vUFzMUMyKzlnTyiCxfgODIhrnkjzgQwHtzIbtnVDKflqevczfnaOACkDNqvCHwvtWdLwoiKrCqfppAlogSLECtMmfleeveyqefkGyTGnpbkVQTtviQVDESpXascHAluGHYEotSypSiHvHzFteKIcUebrzUVigiOacfnGdvijEPrZdSCIIBjuXZMaWLrMXyrsUCdKPLRBRYklRdtZhgtxuASXdhNGhDsrnPHrYRClhrSJSVFojMkUHBvSZhoXoCrTfHsAjenCEHvcLeCecsXwXgWJcnJPSFdOmOpiHRnhSgRF',
 'birthday': datetime.date(2019, 12, 3),
 'email': 'rpNATNsxoj@example.com',
 'is_jards_macale_fan': True,
 'id': 1,
 'last_shopping': datetime.datetime(2019, 12, 3, 21, 42, 34, 77019),
 'name': 'qiayYnESvqcYLLBzxpFOcGBIfnQEPx'}
"""

Documentation

For more detailed information, check out the full documentation.

Contributing

As an open-source project, Model Bakery welcomes contributions of many forms:

  • Code patches
  • Documentation improvements
  • Bug reports

Take a look at our contribution guidelines for instructions on how to set up your local environment.

Maintainers

Creator

License

Model Bakery is licensed under Apache License 2.0. See the LICENSE file for more information.

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

model_bakery-1.23.5.tar.gz (27.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

model_bakery-1.23.5-py3-none-any.whl (30.3 kB view details)

Uploaded Python 3

File details

Details for the file model_bakery-1.23.5.tar.gz.

File metadata

  • Download URL: model_bakery-1.23.5.tar.gz
  • Upload date:
  • Size: 27.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for model_bakery-1.23.5.tar.gz
Algorithm Hash digest
SHA256 20d5cb84d4e46d010b83bb6c06f6a5df381105981030534ff3213aabae42cffd
MD5 c55a9f0551dcacee18f6564395b59833
BLAKE2b-256 100581985c4e1cc90e88a3518baa3f9df4662286483195e26fd981f9ffa22575

See more details on using hashes here.

Provenance

The following attestation bundles were made for model_bakery-1.23.5.tar.gz:

Publisher: release.yml on model-bakers/model_bakery

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file model_bakery-1.23.5-py3-none-any.whl.

File metadata

  • Download URL: model_bakery-1.23.5-py3-none-any.whl
  • Upload date:
  • Size: 30.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for model_bakery-1.23.5-py3-none-any.whl
Algorithm Hash digest
SHA256 2fa5acab266209d50a4cf54f8338b4984b952d58553d35b5bd8b717e974bb6ae
MD5 f34eed48bf9fec1ad79a27d4f0414e2d
BLAKE2b-256 13b387dad1129e6ec7300bb9aba7a17a7d0ad7d79d7c3e57ff42b021660ccf59

See more details on using hashes here.

Provenance

The following attestation bundles were made for model_bakery-1.23.5-py3-none-any.whl:

Publisher: release.yml on model-bakers/model_bakery

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page