Can you please give a bit more info, specifically what command you used (
rtest.py I am getting some failures now. Here’s the summary:
******** SUMMARY *************
Passed 450/478 tests;
Failed 20/478 tests;
Errors 8/478 tests.
I checked out the errors and see this:
2 tests have no gold profile checked in:
These should be easy enough to fix, assuming the creator of this test has the gold profile on their computer and it passes the test. Hint,
rtest.py --list -v lists all the tests and inspects if they have all the files. Run that and look for red "no"s.
6 tests have carriage returns (
\r) in the
i-input field of the
Since Python reads files with “universal newlines” by default, these
\r characters count as newlines and it effectively breaks each item record into two, so it looks like there are not enough fields in a record. TSDB’s specification only provides an escape for
\n and not
\r, so part of this can be fixed by PyDelphin not using Python’s universal newlines when reading these files (I filed an issue to fix it), but also they should have been stripped out when the skeleton was created. I suspect the user was on Windows, which uses the
\r\n sequence for newlines, and the script that created the skeleton only stripped off the
\n, leaving the
\r in place. If
rtest.py --add or
rtest.py --mkskel were used, then PyDelphin handled the creation of the skeleton and the universal newlines thing should have helped here. Perhaps they were created with some other method?
The 20 failures mean that the MRSs differ, so they require someone to inspect the gold and current output.
However none of these problems sound like the one you were having, @trimblet. I tried running the
matrix.py regression-test command and I’m getting errors for all, as you say. The
tsdb.$date.log files say:
read_tuple(): non-integer `' as `i-wf' in `item' (1).
Any column with an
:integer datatype must have
-1 if it is not set, but the
i-wf field is obligatory and must have a value of
2. This is funny, though, because I do see proper
i-wf values in both the gold and current profiles (for at least one test I checked). The old
run_regression_tests.sh script does some direct editing of files, and for some reason it tries to pipe in input sentences to
art. Basically, I don’t recommend using the old regression testing code at all because it is hacky, outdated, and brittle.