Results for background.test.sh

statusdashbashmkshosh
pass 12151314
ok 2110
N-I 2010
BUG 0010
FAIL 0002
total16161616
casedashbashmkshoshdescription
0pass pass pass pass wait with nothing to wait for
1ok pass ok pass wait -n with nothing to wait for
detailsdetails
2ok pass pass FAIL wait with jobspec syntax %nonexistent
detailsdetails
3pass pass pass pass wait with invalid PID
4pass ok BUG pass wait with invalid arg
detailsdetails
5pass pass pass pass Builtin in background
6pass pass pass pass External command in background
7pass pass pass pass Pipeline in Background
8N-I pass pass FAIL Wait for job doesn't support PIPESTATUS
detailsdetails
9pass pass pass pass Brace group in background, wait all
10pass pass pass pass Wait on background process PID
11pass pass pass pass Wait on multiple specific IDs returns last status
12N-I pass N-I pass wait -n
detailsdetails
13pass pass pass pass Async for loop
14pass pass pass pass Background process doesn't affect parent
15pass pass pass pass Background process and then a singleton pipeline
54 passed, 4 OK, 3 not implemented, 1 BUG, 2 failed, 0 timeouts, 0 cases skipped
2 failed under osh

Details on runs that didn't PASS

dash1 wait -n with nothing to wait for

stdout:
stderr: 
dash: 1: wait: Illegal option -n
mksh1 wait -n with nothing to wait for

stdout:
stderr: 
mksh: <stdin>[1]: wait: -n: unknown option
dash2 wait with jobspec syntax %nonexistent

stdout:
stderr: 
dash: 1: wait: No such job: %nonexistent
osh2 wait with jobspec syntax %nonexistent

[osh status] Expected 127, got 2

stdout:
stderr: 
  wait %nonexistent
       ^
[ stdin ]:1: 'wait' doesn't support bash-style jobspecs (got '%nonexistent')
bash4 wait with invalid arg

stdout:
stderr: 
bash: line 1: wait: `zzz': not a pid or valid job spec
mksh4 wait with invalid arg

stdout:
stderr: 
mksh: <stdin>[1]: wait: zzz: argument must be %job or process id
dash8 Wait for job doesn't support PIPESTATUS

stdout:
stderr: 
dash: 2: Bad substitution
osh8 Wait for job doesn't support PIPESTATUS

[osh stdout] Expected 'status=1 pipestatus=55 1\nstatus=0 pipestatus=0\nstatus=1 pipestatus=1\n', got 'status=1 pipestatus=141 1\nstatus=0 pipestatus=141 1\nstatus=2 pipestatus=141 1\n'

stdout:
status=1 pipestatus=141 1
status=0 pipestatus=141 1
status=2 pipestatus=141 1
stderr:
  wait %+
       ^
[ stdin ]:7: 'wait' doesn't support bash-style jobspecs (got '%+')
dash12 wait -n

stdout:
status=2
status=2
stderr:
dash: 3: wait: Illegal option -n
dash: 5: wait: Illegal option -n
mksh12 wait -n

stdout:
status=1
status=1
stderr:
mksh: <stdin>[3]: wait: -n: unknown option
mksh: <stdin>[5]: wait: -n: unknown option