Results for builtin-process.test.sh

statusdashbashmkshzshosh
pass 1418161723
ok 21101
N-I 21110
BUG 75770
FAIL 00001
total2525252525
casedashbashmkshzshoshdescription
0pass pass pass pass pass exec builtin
1pass pass pass pass pass exec builtin with redirects
2pass pass pass pass pass exec builtin with here doc
3BUG pass pass pass pass exec builtin accepts --
details
4BUG pass BUG pass pass exec -- 2>&1
detailsdetails
5pass pass pass pass pass Exit out of function
6ok ok pass BUG pass Exit builtin with invalid arg
detailsdetailsdetails
7BUG BUG ok BUG pass Exit builtin with too many args
detailsdetailsdetailsdetails
8N-I pass pass BUG pass time with brace group argument
detailsdetails
9pass pass pass pass pass ulimit with no flags is like -f
10pass BUG pass BUG pass ulimit too many args
detailsdetails
11pass pass pass pass pass ulimit negative flag
12pass pass BUG pass pass ulimit negative arg
details
13pass BUG pass pass pass ulimit -a doesn't take arg
details
14BUG BUG BUG BUG pass ulimit doesn't accept multiple flags - reduce confusion between shells
detailsdetailsdetailsdetails
15N-I N-I N-I N-I pass YSH readability: ulimit --all the same as ulimit -a
detailsdetailsdetailsdetails
16pass pass pass pass pass ulimit accepts 'unlimited'
17pass pass BUG pass pass ulimit of 2**32, 2**31 (int overflow)
details
18pass pass BUG pass pass ulimit that is 64 bits
details
19BUG pass BUG BUG pass arg that would overflow 64 bits is detected
detailsdetailsdetails
20pass BUG pass pass pass ulimit -f 1 prevents files larger 512 bytes
details
21pass pass pass pass ok write big file with ulimit
details
22BUG pass pass BUG pass ulimit -S for soft limit (default), -H for hard limit
detailsdetails
23BUG pass BUG pass pass Changing resource limit is denied
detailsdetails
24ok pass pass pass FAIL ulimit -n limits file descriptors
detailsdetails
88 passed, 5 OK, 5 not implemented, 26 BUG, 1 failed, 0 timeouts, 0 cases skipped
1 failed under osh

Details on runs that didn't PASS

dash3 exec builtin accepts --

stdout:
stderr: 
dash: 1: exec: --: not found
dash4 exec -- 2>&1

stdout:
stderr: 
dash: 1: exec: --: not found
mksh4 exec -- 2>&1

stdout:
stderr: 
dash6 Exit builtin with invalid arg

stdout:
stderr: 
dash: 1: exit: Illegal number: invalid
bash6 Exit builtin with invalid arg

stdout:
stderr: 
bash: line 1: exit: invalid: numeric argument required
zsh6 Exit builtin with invalid arg

stdout:
stderr: 
dash7 Exit builtin with too many args

stdout:
stderr: 
bash7 Exit builtin with too many args

stdout:
status=1
stderr:
bash: line 1: exit: too many arguments
mksh7 Exit builtin with too many args

stdout:
stderr: 
mksh: <stdin>[1]: exit: too many arguments
zsh7 Exit builtin with too many args

stdout:
status=1
stderr:
exit: too many arguments
dash8 time with brace group argument

stdout:
stderr: 
time: cannot run {: No such file or directory
Command exited with non-zero status 127
0.00user 0.00system 0:00.00elapsed 78%CPU (0avgtext+0avgdata 1152maxresident)k
0inputs+0outputs (0major+38minor)pagefaults 0swaps
dash: 7: Syntax error: "}" unexpected
zsh8 time with brace group argument

stdout:
result=1
stderr:
bash10 ulimit too many args

stdout:
fail
stderr:
zsh10 ulimit too many args

stdout:
fail
stderr:
mksh12 ulimit negative arg

stdout:
unlimited
fail
stderr:
bash13 ulimit -a doesn't take arg

stdout:
stderr: 
dash14 ulimit doesn't accept multiple flags - reduce confusion between shells

stdout:
status=0
status=0
status=0
stderr:
bash14 ulimit doesn't accept multiple flags - reduce confusion between shells

stdout:
status=0
status=0
status=0
stderr:
mksh14 ulimit doesn't accept multiple flags - reduce confusion between shells

stdout:
status=0
status=0
status=0
stderr:
zsh14 ulimit doesn't accept multiple flags - reduce confusion between shells

stdout:
status=1
status=0
status=0
stderr:
ulimit: no limits allowed with -a
dash15 YSH readability: ulimit --all the same as ulimit -a

stdout:
stderr: 
bash15 YSH readability: ulimit --all the same as ulimit -a

stdout:
stderr: 
mksh15 YSH readability: ulimit --all the same as ulimit -a

stdout:
stderr: 
zsh15 YSH readability: ulimit --all the same as ulimit -a

stdout:
stderr: 
mksh17 ulimit of 2**32, 2**31 (int overflow)

stdout:
one unlimited
two 1
three 1
stderr:
mksh: <stdin>[9]: ulimit: -2: unknown option
mksh: <stdin>[9]: ulimit: usage: ulimit [-acdefHilnpqrSstv] [value]
mksh18 ulimit that is 64 bits

stdout:
stderr: 
dash19 arg that would overflow 64 bits is detected

stdout:
before unlimited
after 1
stderr:
mksh19 arg that would overflow 64 bits is detected

stdout:
stderr: 
zsh19 arg that would overflow 64 bits is detected

stdout:
before unlimited
after 1
stderr:
bash20 ulimit -f 1 prevents files larger 512 bytes

stdout:
512 status=0
513 status=0

 512 ok.txt
 513 too-big.txt
1025 total

stderr:
osh21 write big file with ulimit

stdout:
inner=1
outer=0
stderr:
big.sh:2: echo builtin I/O error: File too large
dash22 ulimit -S for soft limit (default), -H for hard limit

stdout:
stderr: 
zsh22 ulimit -S for soft limit (default), -H for hard limit

stdout:
stderr: 
dash23 Changing resource limit is denied

stdout:
stderr: 
mksh23 Changing resource limit is denied

stdout:
stderr: 
dash24 ulimit -n limits file descriptors

stdout:
status=0
status=2
stderr:
dash: 1: cannot create out: Too many open files
osh24 ulimit -n limits file descriptors

[osh stdout] Expected 'status=0\nstatus=1\n' Got 'status=1\nstatus=1\n'

stdout:
status=1
status=1
stderr:
[ -c flag ]:1: I/O error applying redirect: Invalid argument
  ulimit -n 0; echo hi >out
                       ^
[ -c flag ]:1: Can't open 'out': Too many open files
[ -c flag ]:1: I/O error applying redirect: Too many open files