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

Sponsors

Sponsors

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.24.0.tar.gz (28.4 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.24.0-py3-none-any.whl (30.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: model_bakery-1.24.0.tar.gz
  • Upload date:
  • Size: 28.4 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.24.0.tar.gz
Algorithm Hash digest
SHA256 6469223c9fb0eccb021d5c33667b914e9208dd2282d7dc1e55394c2310a7687d
MD5 416a17e88377959ce219a6a87f1c60cd
BLAKE2b-256 f9493e5b51d7af52bf39e348767c1feb16c97d18654a8e3f3306eb4b899e98cf

See more details on using hashes here.

Provenance

The following attestation bundles were made for model_bakery-1.24.0.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.24.0-py3-none-any.whl.

File metadata

  • Download URL: model_bakery-1.24.0-py3-none-any.whl
  • Upload date:
  • Size: 30.8 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.24.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d1f739cfc43e8d403d04734a18c73c8e677f655dd08719e35342c2f5ada1d7e9
MD5 245a045840f7871789f5b7669257e7fc
BLAKE2b-256 608e9108507501846c9ee2a1b277d35d1f92ae251852bbd1527f6dbf2665d94a

See more details on using hashes here.

Provenance

The following attestation bundles were made for model_bakery-1.24.0-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