History log of /external/toybox/tests/expr.test
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
6aba814b28cddd45c7301c39dccd65b316eb5c82 21-Mar-2016 Rob Landley <rob@landley.net> Posix requires "" to be false, and 00 should be false, and -0 should be false.
Fix memory leaks in regex. Simplify regex check (if we matched, subexpression
had to match). Don't exit() from a command, set exitval and return.
/external/toybox/tests/expr.test
1af3bad8b63b2b6886123d9e681782781a62efca 16-Mar-2016 Rob Landley <rob@landley.net> Move whitespace and curly brackets around, move reference URLs to top of file,
eliminate syntax_error() function (just call error_exit() directly),
eliminate advance() wrapper, pipe expected error messages in test to /dev/null
/external/toybox/tests/expr.test
e6912f90d663120b32b894d1f10a0d8cd530e2e7 15-Mar-2016 Andy Chu <andychu@google.com> Fix type coercion bugs in expr.

All tests pass now; this fixes the 2 remaining failures, including a
segfault.

The structure of the code has changed a lot -- instead of having a tiny
function per operator, we have eval_op() which does common type coercion
and then evaluates the operator. I tried writing it a couple different
ways, and this was the cleanest.

The OPS table now contains the operator string, precedence level,
signature for type coercion, and operator ID.
/external/toybox/tests/expr.test
14c91c1ebd68daacce9794cf8894dcfea68efd7b 15-Mar-2016 Andy Chu <andychu@google.com> Fix the operator precedence in expr.

expr now uses the precedence table specified by POSIX, implemented using
the "precedence climbing" algorithm. See the references at the top of
eval_expr().

This fixes 3 of 4 failing tests.

I also added more tests for correct behavior and for syntax errors.
This includes a new test exposing a segfault, related to type coercion.
/external/toybox/tests/expr.test
336c44adca1768ada1e1e2f4d7dbbc33e994e582 02-Mar-2016 Rob Landley <rob@landley.net> Factor out command name at the start of test name, have runtest.sh print it.
/external/toybox/tests/expr.test
dec4669fa1285945910ffd47ff5830f250e1c1ed 12-May-2015 Rob Landley <rob@landley.net> Set the executable bits on all the *.test files. (Wasn't consistent, is now.)
/external/toybox/tests/expr.test
ef6a773198040a05a56dec2261516fb149823cf6 01-Dec-2014 Rob Landley <rob@landley.net> Refactor expr and add another test entry that works with TEST_HOST=1 but not with the one in pending.
/external/toybox/tests/expr.test
de211e0288bd2cd8e27ab23252ec2e4077b3d589 30-Nov-2014 Rob Landley <rob@landley.net> Tests for operator priority groupings.
/external/toybox/tests/expr.test
387edf547eb09b27ca6d49772eb048d729f09cf4 20-Sep-2014 Rob Landley <rob@landley.net> Move testsuite out of scripts/test into its own top level tests directory, and make ctrl-c kill "make test" more reliably.
/external/toybox/tests/expr.test