Results for builtin-process.test.sh

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

Details on runs that didn't PASS

osh11 set umask symbolically

[osh stdout] Expected '664\n644\n', got '664\n664\n'
[osh stderr] Expected u'', got "oils warning: umask with symbolic input isn't implemented\n"

stdout:
664
664
stderr:
oils warning: umask with symbolic input isn't implemented
osh-cpp11 set umask symbolically

[osh-cpp stdout] Expected '664\n644\n', got '664\n664\n'
[osh-cpp stderr] Expected u'', got "oils warning: umask with symbolic input isn't implemented\n"

stdout:
664
664
stderr:
oils warning: umask with symbolic input isn't implemented
osh27 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
osh-cpp27 ulimit -n limits file descriptors

[osh-cpp 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
==11148==Can't open /proc/11146/task for reading.
==11146==LeakSanitizer has encountered a fatal error.
==11146==HINT: For debugging, try setting environment variable LSAN_OPTIONS=verbosity=1:log_threads=1
==11146==HINT: LeakSanitizer does not work under ptrace (strace, gdb, etc)