Unobtrusive test models creation for django
Ivelum's repo is a friendly fork of the django-any
package written by Mikhail Podgurskiy (kmmbvnr) and the original django-whatever
repository created and maintained by Ilya Baryshev (coagulant)
The purpose of the fork is to fix most annoying bugs and add some features To remain compatible with original package django-whatever
retains same namespace: django_any
.
django-whatever
is explicit replacement for old-style, big and error-prone implicit fixture files.
django-whatever
allows you to specify only fields important for tests and fills the rest randomly with acceptable values.
It makes tests clean and easy to understand, without reading fixture files.:
from django_any import any_model
class TestMyShop(TestCase):
def test_order_updates_user_account(self):
account = any_model(Account, amount=25, user__is_active=True)
order = any_model(Order, user=account.user, amount=10)
order.proceed()
account = Account.objects.get(pk=account.pk)
self.assertEquals(15, account.amount)
Read more at the docs: http://django-whatever.readthedocs.org/