dash tested against ash testsuite: 17 failures

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



ash-signals/savetrap.tests
While trying to port some fixes from dash,
one of them broke some signal handling testcases.

I guess some of things we test for are not tested
by dash developers.

I ran entire ash testsuite against dash, deleted failing
things which dash does not support (some bashisms),
and false positives caused by differences in error
messages.

What's left is:

ash-glob/glob2.tests:
    Evidently, dash supports \f -> ^L escape.
    This test uses \f as invalid backslash escape,
    hence differences.

ash-misc/echo_write_error.tests
    EPIPE errors in echo are not reported

ash-misc/func2.tests
    $((i++)) not supported

ash-misc/local1.tests
    Doesn't unset as described:
        local a
        # the above line unsets $a
        echo "A2:'$a'"

ash-misc/shift1.tests
    "shift N" fails if fewer than N argv[i] exists
    (likely not a bug, but bash does it differently)

ash-redir/redir.tests
    echo errors due to closed stdout are not reported

ash-redir/redir3.tests
    "echo foo >&9" correctly says "9: Bad file descriptor"
    and exitcode is 2 (in bash, it is 1).

ash-redir/redir7.tests
ash-redir/redir8.tests
    uni\x81code filename is not found by uni?code glob pattern.

ash-signals/reap1.tests
    Builtins never wait for children. This loop will not ever stop:
    sleep 1 &
    PID=$!
    while kill -0 $PID >/dev/null 2>&1; do
        true
    done

ash-signals/savetrap.tests
    `trap` does not work as expected

ash-signals/sigint1.tests
    trap "exit 0" SIGINT - does not like name "SIGINT". "INT" works.

ash-signals/signal4.tests
    trap "echo Trapped" BADNAME TERM - abort seeing BADNAME.
    bash complains, but sets the trap for the second signal.

ash-signals/signal8.tests
    "kill %1" in non-interactive shell does not find
    previously backgrounded task.

ash-vars/var-utf8-length.tests
    ${#VAR} counts unicode chars in bash

ash-vars/var_unbackslash.tests
    b=-$a-\t-\\-\"-\`-\--\z-\*-\?-
    b="-$a-\t-\\-\"-\`-\--\z-\*-\?-"
    b='-$a-\t-\\-\"-\`-\--\z-\*-\?-'
    b1=$b
    "b1=$b"
    You can imagine... not everything went well here...

ash-vars/var_unbackslash.tests
    echo Forty two:$\
    (\
    (\
    42\
    )\
    )
    dash says: Syntax error: Missing '))'


The tarball is attached. Unpack, add an ash -> /path/to/your/dash
symlink, then run ./run-all

Attachment: ash_test.tar.gz
Description: GNU Zip compressed data


[Index of Archives]     [LARTC]     [Bugtraq]     [Yosemite Forum]     [Photo]

  Powered by Linux