/home/uke/oil/bin/osh
37 passed, 0 OK, 1 not implemented, 0 BUG, 1 failed, 0 timeouts, 0 cases skipped 1 failed under osh
| osh | 0 $- with -c stdout: ustderr: |
| osh | 1 $- with pipefail stdout: ustderr: |
| osh | 2 $- and more options stdout: yes yes yes yesstderr: |
| osh | 3 $- with interactive shell stdout: FALSE TRUEstderr: |
| osh | 4 pass short options like sh -e stdout: stderr: |
| osh | 5 pass long options like sh -o errexit stdout: stderr: |
| osh | 6 pass shopt options like sh -O nullglob stdout: foo *.nonexistent bar foo barstderr: |
| osh | 7 set -o vi/emacs stdout: 0 0stderr: |
| osh | 8 vi and emacs are mutually exclusive stdout: set +o emacs set +o vi ___ set -o emacs set +o vi ___ set +o emacs set -o vi ___stderr: |
| osh | 9 interactive shell starts with emacs mode on stdout: non-interactive 1 1 interactive 0 1stderr: osh warning: --rcfile ignored in non-interactive shell |
| osh | 10 nounset stdout: []stderr: echo "[$unset]"
^~~~~~
[ stdin ]:3: fatal: Undefined variable 'unset'
|
| osh | 11 -u is nounset stdout: []stderr: echo "[$unset]"
^~~~~~
[ stdin ]:3: fatal: Undefined variable 'unset'
|
| osh | 12 -n for no execution (useful with --ast-output) [osh stdout] Expected '1\n' Got '1\n2\n3\n' stdout: 1 2 3stderr: |
| osh | 13 pipefail stdout: 0 2stderr: |
| osh | 14 shopt -p -o prints 'set' options stdout: set +o nounset set -o nounset -- errexit noglob nounsetstderr: |
| osh | 15 shopt -o prints 'set' options stdout: errexit noglob nounset --stderr: |
| osh | 16 shopt -p prints 'shopt' options stdout: shopt -u nullglob shopt -s nullglobstderr: |
| osh | 17 shopt with no flags prints options stdout: 2 one.txt nullglob failglob 1stderr: |
| osh | 18 noclobber off stdout: status=0 status=0 status=0 foostderr: |
| osh | 19 noclobber on stdout: create=0 overwrite=1 force=0 forcestderr: [ stdin ]:7: I/O error applying redirect: File exists |
| osh | 20 noclobber on <> stdout: f.ostderr: |
| osh | 21 noclobber on >> stdout: status=0 foostderr: |
| osh | 22 noclobber on &> > stdout: stdout=0 again=1 foo both=0 again=1 bazstderr: [ stdin ]:8: I/O error applying redirect: File exists [ stdin ]:15: I/O error applying redirect: File exists |
| osh | 23 noclobber on &>> >> stdout: stdout=0 again=0 foo bar both=0 again=0 baz foostderr: |
| osh | 24 set without args lists variables stdout: __GLOBAL=mutated __OTHERLOCAL=L __mylocal=L __var_in_parent_scope=Dstderr: |
| osh | 25 set without args and array variables stdout: __array=(1 2 '3 4')stderr: |
| osh | 26 set without args and assoc array variables (not in OSH) stdout: stderr: __assoc[a]=b ^~~~~~~~ [ stdin ]:3: fatal: Assoc array keys must be strings: $x 'x' "$x" etc. (OILS-ERR-101) |
| osh | 27 shopt -q stdout: nullglob=1 nullglob=0 nullglob,failglob=1 nullglob,failglob=0stderr: |
| osh | 28 shopt -q invalid stdout: invalidZZ=2stderr: |
| osh | 29 shopt -s strict:all stdout: shopt -u strict_arg_parse shopt -u strict_argv - shopt -s strict_arg_parse shopt -s strict_argv - shopt -s strict_arg_parse shopt -u strict_argv -stderr: |
| osh | 30 shopt allows for backward compatibility like bash stdout: shopt -u nullglob status=0 shopt -s nullglobstderr: |
| osh | 31 shopt -p validates option names stdout: status=2 status=2stderr: shopt -p nullglob invalid failglob ^~~~~ [ stdin ]:1: 'shopt' got invalid option 'invalid' shopt nullglob invalid failglob > $TMP/out.txt ^~~~~ [ stdin ]:3: 'shopt' got invalid option 'invalid' |
| osh | 32 shopt -p -o validates option names stdout: set +o errexit status=2stderr: shopt -p -o errexit invalid nounset ^~~~~ [ stdin ]:1: 'shopt' got invalid option 'invalid' |
| osh | 33 stubbed out bash options stdout: 2 0 0 0stderr: shopt -s $name
^~~~~
[ stdin ]:3: 'shopt' got invalid option 'foo'
|
| osh | 34 shopt -s nounset works in YSH, not in bash stdout: status=0 set -o nounsetstderr: |
| osh | 35 Unimplemented options - print, query, set, unset stdout: q=2 p=2 noflag=2 set=1stderr: shopt -p xpg_echo ^~~~~ [ stdin ]:5: 'shopt' got invalid option 'xpg_echo' shopt -s xpg_echo ^~~~~ [ stdin ]:8: 'shopt' got invalid option 'xpg_echo' shopt -p xpg_echo ^~~~~ [ stdin ]:9: 'shopt' got invalid option 'xpg_echo' shopt -u xpg_echo ^~~~~ [ stdin ]:11: 'shopt' got invalid option 'xpg_echo' shopt -p xpg_echo ^~~~~ [ stdin ]:12: 'shopt' got invalid option 'xpg_echo' shopt xpg_echo >/dev/null ^~~~~ [ stdin ]:15: 'shopt' got invalid option 'xpg_echo' |
| osh | 36 Unimplemented options - OSH shopt -s ignore_shopt_not_impl stdout: shopt -u xpg_echo q=1 shopt -s xpg_echo shopt -u xpg_echo p=1 noflag=1 set=1stderr: |
| osh | 37 shopt -p exit code (regression) stdout: status=0stderr: |
| osh | 38 no-ops not shown by shopt -p stdout: --stderr: |