Closed suokko closed 4 years ago
It is disconcerting that with the buggy api.py it crashes so hard that it takes the python process down with it and so does not identify the name of the failing test, but I know of no way around that.
We could add SIGSEGV handler which prints out currently running test. But I wouldn't trust python to handle the job which means it should be likely written in cpython. (signal handler and printing part) Then unittests would have to call cpython module before each tests starts running.
Does that sounds like a useful feature considring it likely needs 20-50 lines of code plus a compiled python library. If it sounds like worth a effert we should have a feature request issue about it.
Your proposals made test look much cleaner and easier to read. I should have done a personal review before posting. My excuse to skip a personal review was tiredness (late evening) and frustration after hitting many small issues how to test flask correctly (the documentation of flask could be better).
There is still the question why importing api.py requires path. My python knowledge or searching skills can't figure out answer.
I do not think it worth the effort to add a SIGSEGV handler. I was just kvetching…
Data race from calling SetMaxThreads/SetResources multiple times got a simple fix. This is a test case testing we won't repeat same data race in future.
Signed-off-by: Pauli suokkos@gmail.com
-- The branch doesn't have fix so it can crash. This test requires two runs to have a chance to crash when I run test locally. I suspect there is some timing issues with a thread starting.