[Toybox] hexdump tests.

Rob Landley rob at landley.net
Thu Mar 14 21:33:50 PDT 2024


Following up on commit cab0b6653827, the hexdump test suite is weird. For
example, the first test has "simple\\n" when it means "simple\n" (which
nevertheless somehow works for reasons I am loathe to examine at the moment, and
I have a todo item to convert the various test arguments needing escapes to
$'blah\n' arguments where the shell does it instead of washing it through echo
inside the function, but that is a giant flag day change for some point where
I'm facing a clean tree.)

But the bigger problem is that TEST_HOST doesn't pass because debian's hexdump
is doing something silly:

  $ echo -e 'simple\n' | hexdump | sed 's/$/./'
  0000000 6973 706d 656c 0a0a                    .
  0000008.

I.E. padding short lines with trailing spaces, because of course.

I could make ours do that, or I could export NOSPACE=1 at the start o the test
(since each one runs as a child process now meaning environment variable
assignments won't persist into other tests) but that weakens the test, or maybe
I could add a "NOTRAIL=1" that runs the output through sed 's/[ \t]*$//' or some
such?

Anyway, reviewing commands to promote them out of pending is a thing, and I'm
trying close tabs rather than open more just now.

Rob

P.S. In THEORY the chmod +x bit on tests/*.test is the equivalent of "pending",
where "make tests" only runs the ones marked executable but you can still run
them individually/standalone with "make test_commandname". In practice, the
pending status of commands and the pending status of TESTS isn't a 1-1 match up.


More information about the Toybox mailing list