Re: Bug#1024971: pybuild: should fail when the result of running tests is "Ran 0 tests in 0.000s"
Re-sent, with the bug in CC
Hi Julian (2024.09.08_21:33:49_+0000)
> > I built 6440 packages build-depending on dh-python in one way or
> > another. 1483 failed, and 1124 of them say "NO TESTS RAN" in the logs.
>
> My guess is that most of these 1124 have no tests at all, rather than
> having a misconfigured setup. A unittest is the pybuild default test
> framework, unittest is used and fails to find any tests, hence all of
> these failures.
Yes, almost certainly.
> > 4. We could make this failure opt-in in dh-python. Maybe via an explicit
> > --test-unittest option that selects the unittest runner. If you don't
> > explicitly select this runner, you'd get an attempt to run tests by
> > with unittest, and no failure if no tests are found.
>
> I like option 4 for the above reason. But implementing this would
> mean that all of the packages that currently *do* use unittest
> (intentionally, but without having to code it explicitly as it's the
> default) would suddenly not have any tests running until they
> proactively add --test-unittest or set PYBUILD_TEST_UNITTEST = 1 or
> similar. This seems like an unfortunate consequence.
I would leave unittest as the default runner, but without missing test
detection.
That's a slightly unexpected behaviour, but it makes the default case
work.
Downside is that you have to opt-in to missing test detection. Maybe we
can have a lintian tag for that?
Stefano
--
Stefano Rivera
http://tumbleweed.org.za/
+1 415 683 3272
Reply to: