Results for builtin-process.test.sh

statusoshosh-cpp
pass 4040
ok 10
FAIL 45
total4545
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
11pass pass set umask symbolically
12FAIL FAIL umask -p
detailsdetails
13FAIL FAIL umask -S
detailsdetails
14pass pass umask symbolic parsing
15pass pass umask symbolic parsing with spaces
16pass pass umask bad symbolic input
17FAIL FAIL umask octal number out of range
detailsdetails
18pass pass umask allow overwriting and duplicates
19pass pass umask a is valid who
20pass pass umask X perm
21pass pass umask s perm
22pass pass umask t perm
23pass pass umask default who
24pass pass umask bare op
25pass pass umask bare op -
26pass pass umask permcopy
27pass pass umask permcopy running value
28pass pass umask sequential actions
29pass pass ulimit with no flags is like -f
30pass pass ulimit too many args
31pass pass ulimit negative flag
32pass pass ulimit negative arg
33pass pass ulimit -a doesn't take arg
34pass pass ulimit doesn't accept multiple flags - reduce confusion between shells
35pass pass YSH readability: ulimit --all the same as ulimit -a
36pass pass ulimit accepts 'unlimited'
37pass pass ulimit of 2**32, 2**31 (int overflow)
38pass pass ulimit that is 64 bits
39pass pass arg that would overflow 64 bits is detected
40pass pass ulimit -f 1 prevents files larger 512 bytes
41ok FAIL write big file with ulimit
detailsdetails
42pass pass ulimit -S for soft limit (default), -H for hard limit
43pass pass Changing resource limit is denied
44FAIL FAIL ulimit -n limits file descriptors
detailsdetails
80 passed, 1 OK, 0 not implemented, 0 BUG, 4 failed, 0 timeouts, 0 cases skipped
4 failed under osh

Details on runs that didn't PASS

osh12 umask -p

[osh status] Expected 0 Got 1

stdout:
stderr: 
oils warning: expected one of `+-=` at start of action instead of `p`
osh-cpp12 umask -p

[osh-cpp status] Expected 0 Got 1

stdout:
stderr: 
oils warning: expected one of `+-=` at start of action instead of `p`
osh13 umask -S

[osh status] Expected 0 Got 1

stdout:
stderr: 
oils warning: expected one of `+-=` at start of action instead of `S`
osh-cpp13 umask -S

[osh-cpp status] Expected 0 Got 1

stdout:
stderr: 
oils warning: expected one of `+-=` at start of action instead of `S`
osh17 umask octal number out of range

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

stdout:
status=0
567
stderr:
osh-cpp17 umask octal number out of range

[osh-cpp stdout] Expected 'status=1\n022\n' Got 'status=0\n567\n'

stdout:
status=0
567
stderr:
osh41 write big file with ulimit

stdout:
inner=1
outer=0
stderr:
big.sh:2: echo builtin I/O error: File too large
osh-cpp41 write big file with ulimit

[osh-cpp stdout] Expected 'inner=1\nouter=0\n' Got 'outer=153\n'

stdout:
outer=153
stderr:
osh44 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-cpp44 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
==12549==Can't open /proc/12546/task for reading.
==12546==LeakSanitizer has encountered a fatal error.
==12546==HINT: For debugging, try setting environment variable LSAN_OPTIONS=verbosity=1:log_threads=1
==12546==HINT: LeakSanitizer does not work under ptrace (strace, gdb, etc)