Add `addCleanup` to `unittest.subTest`
Personne n'a encore pris cette issue.
- Langage dominant
- Python
- Étoiles
- 77.2k
- Forks
- 35.9k
- Métriques de merge des PR
- Métriques de PR en attente
Description
Feature or enhancement
Proposal:
The unittest.subTest context (i.e. the object you get using with's as clause, currently None) should get methods to manage cleanups:
addCleanupenterContextdoCleanups
And similar ones for IsolatedAsyncIOTestCase.
They should do the same thing as the same methods on TestCase, but with subtest scope.
Example usage:
for param in 'a', 'b', 'c':
with self.subTest() as sub:
tempfile = make_tempfile()
sub.addCleanup(os.unlink, tempfile)
do_actual_test(tempfile, param)
See Discuss thread for motivation/discussion.
Has this already been discussed elsewhere?
I have already discussed this feature proposal on Discourse
Links to previous discussion of this feature:
https://discuss.python.org/t/unittest-add-addcleanup-to-subtest/91827
Linked PRs
- gh-134318
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par les méthodes de nettoyage existantes de unittest.TestCase et le contexte unittest.subTest, puis comparez le comportement correspondant de IsolatedAsyncIOTestCase. Lisez le fil Discourse et la PR liée gh-134318 pour comprendre la portée proposée. C'est terminé lorsque les méthodes de nettoyage demandées fonctionnent avec la portée du sous-test pour les cas synchrones comme pour les cas asynchrones isolés.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- python
- Domaine
- testing-qa
- Type d'issue
- Fonctionnalité
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 25/100