* Fwd: Test Failure [not found] ` <20a807211001191445x5924b63frc6916febda023502@mail.gmail.com> @ 2010-01-19 22:46 ` Vin Shelton 2010-01-20 10:34 ` Peter Stephenson 0 siblings, 1 reply; 2+ messages in thread From: Vin Shelton @ 2010-01-19 22:46 UTC (permalink / raw) To: zsh-workers Dear zsh-workers, Since 2010-01-17, I've been getting a failure in the test suite: : build/zsh-2010-01-17 Tue 19 16:09; make check ************************************** 37 successful test scripts, 1 failure, 0 skipped ************************************** make[1]: *** [check] Error 1 make[1]: Leaving directory `/home/opt/build/zsh-2010-01-17/Test' make: *** [check] Error 2 C02 doesn't report an error, but it doesn't report a pass, either. Here is the tail of the test C02 run with verbosity = 2 (the entire trace bounced because the message was too big). Please let me know if you need more info. - Vin Running test: argument checking for test builtin ZTST_test: expecting status: 1 Input: /tmp/zsh.ztst.in.6558, output: /tmp/zsh.ztst.out.6558, error: /tmp/zsh.ztst.terr.6558 ZTST_execchunk: status 1 ZTST_test: test produced standard output: ZTST_test: and standard error: (eval):test:1: too many arguments Test successful. ZTST_test: looking for new test ZTST_test: examining line: ZTST_test: examining line: [ -n foo -a -n bar scrimble ] ZTST_getchunk: read code chunk: [ -n foo -a -n bar scrimble ] ZTST_test: examining line: ?(eval):[:1: too many arguments ZTST_getredir: read redir for '?': (eval):[:1: too many arguments ZTST_test: examining line: Running test: argument checking for [ builtin ZTST_test: expecting status: 1 Input: /tmp/zsh.ztst.in.6558, output: /tmp/zsh.ztst.out.6558, error: /tmp/zsh.ztst.terr.6558 ZTST_execchunk: status 1 ZTST_test: test produced standard output: ZTST_test: and standard error: (eval):[:1: too many arguments Test successful. ZTST_test: looking for new test ZTST_test: examining line: ZTST_test: examining line: test -n foo -a -z "" scramble ZTST_getchunk: read code chunk: test -n foo -a -z "" scramble ZTST_test: examining line: ?(eval):test:1: too many arguments ZTST_getredir: read redir for '?': (eval):test:1: too many arguments ZTST_test: examining line: Running test: argument checking for test builtin ZTST_test: expecting status: 1 Input: /tmp/zsh.ztst.in.6558, output: /tmp/zsh.ztst.out.6558, error: /tmp/zsh.ztst.terr.6558 ZTST_execchunk: status 1 ZTST_test: test produced standard output: ZTST_test: and standard error: (eval):test:1: too many arguments Test successful. ZTST_test: looking for new test ZTST_test: examining line: ZTST_test: examining line: fn() { ZTST_getchunk: read code chunk: fn() { # careful: first file must exist to trigger bug [[ -e unmodified ]] || print Where\'s my file\? [[ unmodified -nt NonExistentFile ]] print status = $? } fn ZTST_test: examining line: >status = 1 ZTST_getredir: read redir for '>': status = 1 ZTST_test: examining line: Running test: -nt shouldn't abort on non-existent files ZTST_test: expecting status: 0 Input: /tmp/zsh.ztst.in.6558, output: /tmp/zsh.ztst.out.6558, error: /tmp/zsh.ztst.terr.6558 ZTST_execchunk: status 0 ZTST_test: test produced standard output: status = 1 ZTST_test: and standard error: Test successful. ZTST_test: looking for new test ZTST_test: examining line: ZTST_test: examining line: if zmodload -i zsh/regex 2>/dev/null; then ZTST_getchunk: read code chunk: if zmodload -i zsh/regex 2>/dev/null; then echo >regex_test.sh 'if [[ $# = 1 ]]; then if [[ $1 =~ /?[^/]+:[0-9]+:$ ]]; then : fi fi exit 0' $ZTST_testdir/../Src/zsh -f ./regex_test.sh fi ZTST_test: examining line: Running test: regex tests shouldn't crash ZTST_test: expecting status: 0 Input: /tmp/zsh.ztst.in.6558, output: /tmp/zsh.ztst.out.6558, error: /tmp/zsh.ztst.terr.6558 ZTST_execchunk: status 0 ZTST_test: test produced standard output: ZTST_test: and standard error: Test successful. ZTST_test: looking for new test ZTST_test: examining line: ZTST_test: examining line: if zmodload -i zsh/regex 2>/dev/null; then ZTST_getchunk: read code chunk: if zmodload -i zsh/regex 2>/dev/null; then string="this has stuff in it" bad_regex=0 if [[ $string =~ "h([a-z]*) s([a-z]*) " ]]; then if [[ "$MATCH $MBEGIN $MEND" != "has stuff 6 15" ]]; then print -r "regex variables MATCH MBEGIN MEND: '$MATCH $MBEGIN $MEND' should be: 'has stuff 6 15'" >&2 bad_regex=1 else results=("as 7 8" "tuff 11 14") for i in 1 2; do if [[ "$match[$i] $mbegin[$i] $mend[$i]" != $results[i] ]]; then print -r "regex variables match[$i] mbegin[$i] mend[$i]: '$match[$i] $mbegin[$i] $mend[$i]' should be '$results[$i]'" >&2 break fi done fi else print -r "regex failed to match '$string'" >&2 fi (( bad_regex )) || print OK else # if it didn't load, tough, but not a test error print OK fi ZTST_test: examining line: >OK ZTST_getredir: read redir for '>': OK ZTST_test: examining line: Running test: MATCH, MBEGIN, MEND, match, mbegin, mend ZTST_test: expecting status: 0 Input: /tmp/zsh.ztst.in.6558, output: /tmp/zsh.ztst.out.6558, error: /tmp/zsh.ztst.terr.6558 ************************************** 0 successful test scripts, 1 failure, 0 skipped ************************************** make[1]: Leaving directory `/home/opt/build/zsh-2010-01-17/Test' Regards, Vin ^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: Fwd: Test Failure 2010-01-19 22:46 ` Fwd: Test Failure Vin Shelton @ 2010-01-20 10:34 ` Peter Stephenson 0 siblings, 0 replies; 2+ messages in thread From: Peter Stephenson @ 2010-01-20 10:34 UTC (permalink / raw) To: zsh-workers On Tue, 19 Jan 2010 17:46:43 -0500 Vin Shelton <acs@alumni.princeton.edu> wrote: > Since 2010-01-17, I've been getting a failure in the test suite: > > : build/zsh-2010-01-17 Tue 19 16:09; make check > ************************************** > 37 successful test scripts, 1 failure, 0 skipped > ************************************** > make[1]: *** [check] Error 1 > make[1]: Leaving directory `/home/opt/build/zsh-2010-01-17/Test' > make: *** [check] Error 2 > > C02 doesn't report an error, but it doesn't report a pass, either. Looks like I got the new test wrong. It's a bit complicated because it's not supposed to produce an error if the regex module isn't available. The failure is because I screwed up the size of the allocations for the new variables. Index: Src/Modules/pcre.c =================================================================== RCS file: /cvsroot/zsh/zsh/Src/Modules/pcre.c,v retrieving revision 1.17 diff -u -r1.17 pcre.c --- Src/Modules/pcre.c 17 Jan 2010 21:51:34 -0000 1.17 +++ Src/Modules/pcre.c 20 Jan 2010 10:33:49 -0000 @@ -194,8 +194,8 @@ char **mbegin, **mend, **bptr, **eptr; int i, *ipair; - bptr = mbegin = zalloc(nelem+1); - eptr = mend = zalloc(nelem+1); + bptr = mbegin = zalloc(sizeof(char*)*(nelem+1)); + eptr = mend = zalloc(sizeof(char*)*(nelem+1)); for (ipair = ovec + 2, i = 0; i < nelem; Index: Src/Modules/regex.c =================================================================== RCS file: /cvsroot/zsh/zsh/Src/Modules/regex.c,v retrieving revision 1.6 diff -u -r1.6 regex.c --- Src/Modules/regex.c 17 Jan 2010 21:51:36 -0000 1.6 +++ Src/Modules/regex.c 20 Jan 2010 10:33:49 -0000 @@ -135,11 +135,11 @@ setiparam("MEND", offs + !isset(KSHARRAYS) - 1); if (nelem) { char **mbegin, **mend, **bptr, **eptr; - bptr = mbegin = (char **)zalloc(nelem+1); - eptr = mend = (char **)zalloc(nelem+1); + bptr = mbegin = (char **)zalloc(sizeof(char *)*(nelem+1)); + eptr = mend = (char **)zalloc(sizeof(char *)*(nelem+1)); - for (m = matches + start, n = start; - n <= (int)re.re_nsub; + for (m = matches + start, n = 0; + n < nelem; ++n, ++m, ++bptr, ++eptr) { char buf[DIGBUFSIZE]; Index: Test/C02cond.ztst =================================================================== RCS file: /cvsroot/zsh/zsh/Test/C02cond.ztst,v retrieving revision 1.24 diff -u -r1.24 C02cond.ztst --- Test/C02cond.ztst 17 Jan 2010 21:51:36 -0000 1.24 +++ Test/C02cond.ztst 20 Jan 2010 10:33:49 -0000 @@ -251,7 +251,7 @@ fi 0:regex tests shouldn't crash - if zmodload -i zsh/regex 2>/dev/null; then + (if zmodload -i zsh/regex 2>/dev/null; then string="this has stuff in it" bad_regex=0 if [[ $string =~ "h([a-z]*) s([a-z]*) " ]]; then @@ -259,7 +259,7 @@ print -r "regex variables MATCH MBEGIN MEND: '$MATCH $MBEGIN $MEND' should be: - 'has stuff 6 15'" >&2 + 'has stuff 6 15'" bad_regex=1 else results=("as 7 8" "tuff 11 14") @@ -268,19 +268,20 @@ print -r "regex variables match[$i] mbegin[$i] mend[$i]: '$match[$i] $mbegin[$i] $mend[$i]' should be - '$results[$i]'" >&2 + '$results[$i]'" + bad_regex=1 break fi done fi + (( bad_regex )) || print OK else - print -r "regex failed to match '$string'" >&2 + print -r "regex failed to match '$string'" fi - (( bad_regex )) || print OK else # if it didn't load, tough, but not a test error print OK - fi + fi) 0:MATCH, MBEGIN, MEND, match, mbegin, mend >OK -- Peter Stephenson <pws@csr.com> Software Engineer Tel: +44 (0)1223 692070 Cambridge Silicon Radio Limited Churchill House, Cambridge Business Park, Cowley Road, Cambridge, CB4 0WZ, UK Member of the CSR plc group of companies. CSR plc registered in England and Wales, registered number 4187346, registered office Churchill House, Cambridge Business Park, Cowley Road, Cambridge, CB4 0WZ, United Kingdom ^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2010-01-20 11:12 UTC | newest] Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <20a807211001191316x79ce2ffeib91fdc59cdfcb189@mail.gmail.com> [not found] ` <20a807211001191342i4b1d8d63o9bede714f1831477@mail.gmail.com> [not found] ` <20a807211001191445x5924b63frc6916febda023502@mail.gmail.com> 2010-01-19 22:46 ` Fwd: Test Failure Vin Shelton 2010-01-20 10:34 ` Peter Stephenson
Code repositories for project(s) associated with this public inbox https://git.vuxu.org/mirror/zsh/ This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).