65 votes

tester admin.ModelAdmin dans Django

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.

61voto

Udi Points 6298

Consultez les ModelAdminTests de Django pour des exemples.

6voto

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())
        # ...

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X