Hi Victor, > What about pytest-assume as a context manager around the assert line?
Yes, this could work with either a context manager or a function like pytest-check uses. But it couples the plugin to the tests; it's no longer possible to run the plugin on normal tests with a plain `assert`, which is some of the brilliant philosophy of pytest. Without such a hook, I think the function or context manager is the best path forward, and is a reasonable way to build a better prototype before adding hooks deep in pytest internals. Thank you! Max On Fri, 27 Mar 2020 at 09:26, Victor Maryama <victor.mary...@gmail.com> wrote: > What about pytest-assume as a context manager around the assert line? > That way you get the soft assertions feature and pytest still rewrites the > assertions. > > On Fri, Mar 27, 2020, 12:47 PM Bruno Oliveira <nicodde...@gmail.com> > wrote: > >> Hi Maximilian, >> >> On Thu, Mar 26, 2020 at 7:29 PM Maximilian Roos <m...@maximilianroos.com> >> wrote: >> >>> >>> To prefix: as a long time user and evangelizer of pytest, a big thank >>> you for the superb tool. >>> >> >> Thanks for the kind words, we appreciate it. >> >> >>> As per that README, it only works on the first failure, because the test >>> doesn't continue execution beyond that. *Is there any way of allowing >>> execution to continue, without ripping up the internals of pytest?* My >>> prior is "no", since the assertion rewrite still retains an assertion, and >>> there's no hook for changing that. >>> >> >> Not at the moment I'm afraid. >> >> I think it should be possible to implement a hook that transforms the >> AST, which our rewriter would then call. I think, with this hook in place, >> you would be able to rewrite assert statements into a function call of your >> plugin, which would then be free to do whatever it wanted. If you are >> interested, I suggest writing up a proposal in the issue tracker so it can >> be discussed. >> >> Cheers, >> Bruno >> >> >>> Ref: a similar question I asked @okken >>> https://github.com/okken/pytest-check/issues/32 >>> >>> Thank you, >>> Max >>> _______________________________________________ >>> pytest-dev mailing list >>> pytest-dev@python.org >>> https://mail.python.org/mailman/listinfo/pytest-dev >>> >> _______________________________________________ >> pytest-dev mailing list >> pytest-dev@python.org >> https://mail.python.org/mailman/listinfo/pytest-dev >> >
_______________________________________________ pytest-dev mailing list pytest-dev@python.org https://mail.python.org/mailman/listinfo/pytest-dev