Hi Gabriele, On 02-06-2020 23:37, Gabriele wrote: > Many thanks for your reply. I have had a look at the logs linked on this page > > https://ci.debian.net/packages/a/austin/testing/amd64/ > > The only version that passes is v1.0.0 and by looking at the logs of > v0.7.0 and v1.0.1, which fail, it's a miracle that v1.0.0 even passes. > Indeed v0.7.0 and v1.0.1 fail for the very same reason: the binary > used for the tests, src/austin, is simply not there. Why it is there > for the v1.0.0 I don't know, so it looks like the problem is with > v1.0.0 paradoxically.
It's funny, the first tries of 1.0.0 also failed. And I believe they they only starting passing when python3.7 was not the default Python3 anymore. > This is the diff inside the debian/ folder between v1.0.0 and v1.0.1 > (TLDR: only debian/austin.1, debian/changelog and debian/copyright > have changed) Instead, I diffed the source and this struck my eye: diff -Nru austin-1.0.0/test/test_fork.bats austin-1.0.1/test/test_fork.bats --- austin-1.0.0/test/test_fork.bats 2019-10-19 10:37:23.000000000 +0000 +++ austin-1.0.1/test/test_fork.bats 2020-02-21 19:27:02.000000000 +0000 @@ -56,6 +56,12 @@ then skip "Test failed but marked as 'Ignore'" else + echo + echo "Collected Output" + echo "================" + echo + echo "$output" + echo false fi } @@ -109,6 +115,6 @@ invoke_austin "3.7" } -# @test "Test Austin with Python 3.8" { -# invoke_austin "3.8" -# } +@test "Test Austin with Python 3.8" { + invoke_austin "3.8" +} So, with 1.0.0 your tests were passing because all tests were skipped, and only with 1.0.1 your tests started testing the code again and failed because the required binary couldn't be found. > Hence, to the best of my knowledge, there are no changes in the > debian/ area that would cause the binary in src/ to be there unless it > accidentally ended up, say, in the source tarball. I think I've showed an alternative explanation. > My next question to you is then: where is the binary supposed to be > found during autopkgtest? Can I assume it will be on the PATH during > testing, so that I can invoke it simply with "austin"? Or do I need to > specify a precise path? The testbed is a clean Debian installation, created with debbootstrap and only your test dependencies installed. Everything is in it's regular location, so if austin is on the regular path for users, it on the regular path for the debci user in the testbed. Not specifying the precise path makes sure your testing that it's on the path for your users too, so better without path. Paul
signature.asc
Description: OpenPGP digital signature