2013-04-28 3 views
5

Sto scrivendo una suite di test per un'app.Test di Django per modelli caricati tramite tag di modello

In un certo numero di posti io uso di Django a portata di mano "assertTemplateUsed". Funziona su tutti i modelli tranne, a mio avviso, per i modelli caricati tramite tag modello (come oggetti inclusione_tag).

C'è un modo alternativo affermo modello viene utilizzato, quando viene caricato tramite un tag modello? Posso ovviamente controllare le stringhe nel modello, ma verificare l'utilizzo del modello sarebbe una soluzione migliore.

risposta

2

Prova di prendere il template_rendered signal, che è disponibile durante il test.

Dalla documentazione:

django.test.signals.template_rendered 

Sent when the test system renders a template. This signal is not emitted during normal operation of a Django server – it is only available during testing. 

Arguments sent with this signal: 

sender 
    The Template object which was rendered. 
template 
    Same as sender 
context 
    The Context with which the template was rendered. 
+0

Grande, grazie Meir. – pwalsh