J'essaie de trouver le meilleur moyen de tester admin.ModelAdmin
dans admin.py
. Plus précisément, je remplace la fonction save_model()
que je veux tester. D'après les recherches que j'ai effectuées, la seule solution que j'ai trouvée était d'écrire un test de demande/réponse, puis d'interroger la base de données.
Réponses
Trop de publicités?Consultez les ModelAdminTests
de Django pour des exemples.
madzohan
Points
7404
Vous pouvez spécifier un modelform personnalisé pour modeladmin puis simplement tester ce modelform ;)
https://docs.djangoproject.com/en/1.8/ref/contrib/admin/#django.contrib.admin.ModelAdmin.form
formes
class SomeModelForm(forms.ModelForm):
class Meta:
model = SomeModel
administrateur
class SomeModelAdmin(admin.ModelAdmin):
form = SomeModelForm
admin.site.register(SomeModel, SomeModelAdmin)
essais
class TestSomeModel(TestCase):
def test_form(self):
form = SomeModelForm(**kwargs)
self.assertTrue(form.is_valid())
# ...