Je voudrais transformer les avertissements RemovedInNextVersionWarning
en erreurs, comme décrit dans https://docs.pytest.org/en/latest/warnings.html
Malheureusement, lorsque j'ajoute à pytest.ini les lignes suivantes :
filterwarnings =
error::RemovedInDjango20Warning
Je me retrouve avec (il recherche strictement les avertissements internes Python) :
INTERNALERROR> File "/myfolder/python3.6/warnings.py", line 236, in _getcategory
INTERNALERROR> raise _OptionError("unknown warning category: %r" % (category,))
INTERNALERROR> warnings._OptionError: unknown warning category: 'RemovedInDjango20Warning'
Est-ce que pytest-django en tant que plugin devrait/pourrait-il informer pytest d'un plus grand nombre d'avertissements possibles à gérer ?
Question bonus (légèrement hors de portée) : Mieux encore serait une possibilité de filtrer les DjangoWarnings provenant du code écrit vers les avertissements provenant d'autres bibliothèques :-)
Utilisez le nom complet :
filterwarnings =
error::django.utils.deprecation.RemovedInDjango20Warning
Mieux encore serait une possibilité de filtrer les DjangoWarnings provenant du code écrit vers les avertissements provenant d'autres bibliothèques
Plus une fonctionnalité pour pytest je suppose ?!
Cela peut être réalisé en utilisant un filtre de journalisation, où vous le recherchez record.getMessage()
commence par votre chemin.
Doux @blueyed !!!
Merci pour l'astuce !
J'ai fini par éliminer les quelques problèmes spécifiquement, en utilisant ceci:
filterwarnings =
error::django.utils.deprecation.RemovedInNextVersionWarning
ignore::django.utils.deprecation.RemovedInNextVersionWarning:ajax_select.*
Dommage qu'il n'en soit pas fait mention dans la doc. Je suis prêt à soumettre un petit PR à ce sujet. Où devrait-il être ? Dans configuring_django peut-être ?
Un PR pour les docs serait bien en effet.
Je ne les connais pas vraiment, alors mettez-les là où vous vous attendiez.. ;)
Commentaire le plus utile
Utilisez le nom complet :
Plus une fonctionnalité pour pytest je suppose ?!
Cela peut être réalisé en utilisant un filtre de journalisation, où vous le recherchez
record.getMessage()
commence par votre chemin.