<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Oct 2, 2020 at 9:37 PM Rob Landley <<a href="mailto:rob@landley.net">rob@landley.net</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 10/2/20 4:13 PM, enh via Toybox wrote:<br>
> bonus question: why didn't the toybox CI catch this? looks like the tar tests<br>
> aren't being run there for some reason, despite the `make<br>
> defconfig`? <a href="https://github.com/landley/toybox/runs/1196859091" rel="noreferrer" target="_blank">https://github.com/landley/toybox/runs/1196859091</a><br>
> <br>
> ah, it's the "missing execute permission on the .test file" issue again. isn't<br>
> that a bug for everything not in pending?<br>
<br>
Yes and no. I was using +x to indicate the test itself is essentially in<br>
pending, and a lot of TESTS need work even when the command itself has been<br>
promoted. For example, tar.tests has a big "if false" block at the end with a<br>
bunch of TODO comments on tests I should add, but haven't yet.<br>
<br>
That said, at this point I need to do a full pass over all the tests again, it<br>
looks like I've commited other people's patches that changed permissions for<br>
tests that aren't remotely complete. (Maybe someday somebody will want to<br>
sponsor me putting time into the test suite, until then it's a todo item for<br>
somewhere post-1.0. Right now I'm trying to get a release out before I fly to<br>
Japan on the 14th, at which point I probably ignore this project entirely for a<br>
few months because I expect to be busy with paying work.)<br>
<br>
Anyway, the tests that aren't +x even though their commands aren't in pending are:<br>
<br>
for i in $(ls -l tests/*.test | grep '[-] ' | sed 's@.*tests/@@;s/[.]test//');<br>
do echo toys/*/$i.c; done | grep -v pending<br>
<br>
And I guess I can just chmod +x all of the ones that pass their tests and go<br>
"test_kill has two tests, and that's it for the foreseeable future I guess, oh<br>
well, I no longer have an obvious way to track what needs work"...<br></blockquote><div><br></div><div>you can always add a TODO in the .test files for the ones you're not happy with? the current setup seems like the cure is worse than the disease: "these tests aren't perfect ... so let's not run any of them" :-)</div><div><br></div><div>this gets caught eventually because i run all the tests on Android (and have a "if actual tool not a symlink to toybox, report but ignore test failures" hack). but it does mean that it's easier to miss things when developing on the host (which is how i usually work for anything that's not Android-specific), and it means that the github continuous build isn't running these tests and letting us know after the fact that we've missed something.<br><br></div><div>i'm happy to send you a "+x and add TODO" patch, but i'm assuming you have something more specific to add about _what_ you think is missing from the tests currently? (otherwise it would just be the default assumption of "of course we could do more testing", even for something like chromium: <a href="https://analysis.chromium.org/p/chromium/coverage">https://analysis.chromium.org/p/chromium/coverage</a> !)</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Rob<br>
</blockquote></div></div>