Results for smoosh.test.sh

statusdashbashmkshosh
pass 99118117100
FAIL 38202139
TIME 13121211
total150150150150
casedashbashmkshoshdescription
0pass pass pass FAIL benchmark.fact5.test
details
1pass pass pass FAIL benchmark.while.test
details
2FAIL pass pass FAIL builtin.alias.empty.test
detailsdetails
3FAIL pass pass FAIL builtin.break.lexical.test
detailsdetails
4FAIL FAIL FAIL FAIL builtin.break.nonlexical.test
detailsdetailsdetailsdetails
5pass pass pass pass builtin.cd.pwd.test
6pass pass pass FAIL builtin.command.ec.test
details
7pass pass pass pass builtin.command.exec.test
8pass pass pass FAIL builtin.command.keyword.test
details
9FAIL pass FAIL pass builtin.command.nospecial.test
detailsdetails
10pass pass pass pass builtin.command.special.assign.test
11FAIL pass pass FAIL builtin.continue.lexical.test
detailsdetails
12FAIL FAIL FAIL FAIL builtin.continue.nonlexical.test
detailsdetailsdetailsdetails
13FAIL FAIL pass FAIL builtin.dot.break.test
detailsdetailsdetails
14FAIL pass pass pass builtin.dot.nonexistent.test
details
15FAIL pass pass FAIL builtin.dot.path.test
detailsdetails
16pass pass pass pass builtin.dot.return.test
17pass pass pass pass builtin.dot.unreadable.test
18pass pass FAIL FAIL builtin.eval.break.test
detailsdetails
19pass pass pass pass builtin.eval.test
20FAIL pass pass pass builtin.exec.badredir.test
details
21pass pass pass pass builtin.exec.modernish.mkfifo.loop.test
22pass pass pass pass builtin.exec.noargs.ec.test
23pass pass pass pass builtin.exec.true.test
24pass pass pass pass builtin.exit0.test
25pass pass pass pass builtin.export.override.test
26pass pass pass pass builtin.export.test
27pass pass pass FAIL builtin.export.unset.test
details
28pass pass pass pass builtin.falsetrue.test
29TIME TIME TIME TIME builtin.jobs.test
30pass pass pass pass builtin.kill0_+5.test
31pass pass pass pass builtin.kill0.test
32TIME TIME TIME TIME builtin.kill.jobs.test
33pass pass pass pass builtin.kill.signame.test
34pass pass pass FAIL builtin.printf.repeat.test
details
35FAIL pass FAIL pass builtin.readonly.assign.noninteractive.test
detailsdetails
36TIME pass pass pass builtin.set.-m.test
37pass pass pass pass builtin.set.quoted.test
38FAIL pass pass FAIL builtin.source.nonexistent.earlyexit.test
detailsdetails
39FAIL pass pass pass builtin.source.nonexistent.test
details
40FAIL pass pass pass builtin.source.setvar.test
details
41FAIL pass pass pass builtin.special.redir.error.test
details
42pass pass pass pass builtin.test.bigint.test
43TIME TIME TIME TIME builtin.test.nonposix.test
44FAIL pass pass pass builtin.test.-nt.-ot.absent.test
details
45pass pass pass pass builtin.test.numeric.spaces.nonposix.test
46pass pass pass pass builtin.test.symlink.test
47TIME TIME TIME TIME builtin.times.ioerror.test
48pass pass FAIL FAIL builtin.trap.chained.test
detailsdetails
49pass pass pass pass builtin.trap.exit3.test
50FAIL FAIL FAIL pass builtin.trap.exitcode.test
detailsdetailsdetails
51pass pass pass pass builtin.trap.exit.subshell.test
52pass pass pass pass builtin.trap.false.test
53pass pass pass FAIL builtin.trap.kill.undef.test
details
54FAIL FAIL pass FAIL builtin.trap.nested.test
detailsdetailsdetails
55pass pass pass pass builtin.trap.noexit.test
56pass FAIL FAIL pass builtin.trap.return.test
detailsdetails
57FAIL FAIL FAIL FAIL builtin.trap.subshell.false.exit.test
detailsdetailsdetailsdetails
58pass pass pass pass builtin.trap.subshell.false.test
59FAIL FAIL FAIL FAIL builtin.trap.subshell.loud2.test
detailsdetailsdetailsdetails
60FAIL FAIL FAIL FAIL builtin.trap.subshell.loud.test
detailsdetailsdetailsdetails
61FAIL pass pass pass builtin.trap.subshell.quiet.test
details
62FAIL FAIL FAIL FAIL builtin.trap.subshell.true.ec1.test
detailsdetailsdetailsdetails
63pass pass pass pass builtin.trap.subshell.truefalse.test
64FAIL FAIL FAIL FAIL builtin.trap.supershell.test
detailsdetailsdetailsdetails
65FAIL pass pass pass builtin.unset.test
details
66pass FAIL pass FAIL parse.eval.error.test
detailsdetails
67pass pass pass pass semantics.arith.assign.multi.test
68pass pass pass pass semantics.arithmetic.bool_to_num.test
69pass pass pass pass semantics.arithmetic.tilde.test
70pass pass pass pass semantics.arith.modernish.test
71pass pass pass pass semantics.arith.pos.test
72pass pass pass pass semantics.arith.var.space.test
73pass pass pass pass semantics.assign.noglob.test
74pass pass pass pass semantics.assign.visible.test
75pass pass pass pass semantics.background.nojobs.stdin.test
76TIME TIME TIME TIME semantics.background.pid.test
77TIME TIME TIME TIME semantics.background.pipe.pid.test
78TIME TIME TIME TIME semantics.background.test
79pass pass pass pass semantics.backtick.fds.test
80pass pass pass FAIL semantics.backtick.ppid.test
details
81FAIL pass pass pass semantics.case.ec.test
details
82pass pass pass pass semantics.case.escape.modernish.test
83pass pass pass pass semantics.command.argv0.test
84FAIL pass pass pass semantics.command-subst.newline.test
details
85pass pass pass pass semantics.command-subst.test
86pass pass pass FAIL semantics.-C.test
details
87pass pass pass pass semantics.defun.ec.test
88pass FAIL FAIL pass semantics.dot.glob.test
detailsdetails
89pass pass pass FAIL semantics.errexit.trap.test
details
90FAIL FAIL FAIL pass semantics.error.noninteractive.test
detailsdetailsdetails
91pass pass pass pass semantics.escaping.backslash.modernish.test
92pass pass pass pass semantics.escaping.backslash.test
93pass pass pass pass semantics.escaping.heredoc.dollar.test
94pass pass pass pass semantics.escaping.newline.test
95FAIL FAIL FAIL FAIL semantics.escaping.quote.test
detailsdetailsdetailsdetails
96pass pass pass pass semantics.escaping.single.test
97pass pass pass pass semantics.eval.makeadder.test
98FAIL FAIL FAIL pass semantics.evalorder.fun.test
detailsdetailsdetails
99pass pass pass pass semantics.expansion.heredoc.backslash.test
100pass pass pass pass semantics.expansion.quotes.adjacent.test
101pass pass pass pass semantics.for.readonly.test
102pass pass pass pass semantics.fun.error.restore.test
103pass pass pass FAIL semantics.ifs.combine.ws.test
details
104TIME TIME TIME TIME semantics.kill.traps.test
105pass pass pass pass semantics.length.test
106pass pass pass pass semantics.no-command-subst.test
107FAIL pass pass pass semantics.noninteractive.expansion.exit.test
details
108pass pass pass pass semantics.pattern.bracket.quoted.test
109FAIL pass FAIL pass semantics.pattern.hyphen.test
detailsdetails
110pass pass pass pass semantics.pattern.modernish.test
111FAIL pass FAIL pass semantics.pattern.rightbracket.test
detailsdetails
112pass pass pass pass semantics.quote.backslash.test
113pass pass pass pass semantics.quote.tilde.test
114FAIL FAIL pass pass semantics.redir.close.test
detailsdetails
115pass pass pass pass semantics.redir.fds.test
116pass pass pass pass semantics.redir.from.test
117pass pass pass pass semantics.redir.nonregular.test
118pass pass pass pass semantics.redir.to.test
119pass pass pass pass semantics.simple.link.test
120pass pass pass FAIL semantics.special.assign.visible.nonposix.test
details
121pass pass FAIL pass semantics.splitting.ifs.test
details
122TIME TIME TIME TIME semantics.subshell.background.traps.test
123FAIL FAIL pass pass semantics.subshell.break.test
detailsdetails
124pass pass pass FAIL semantics.tilde.colon.test
details
125pass pass pass pass semantics.tilde.quoted.prefix.test
126pass pass pass pass semantics.tilde.quoted.test
127pass FAIL pass FAIL semantics.tilde.sep.test
detailsdetails
128pass pass pass pass semantics.tilde.test
129pass pass pass FAIL semantics.traps.async.test
details
130FAIL FAIL pass FAIL semantics.traps.inherit.test
detailsdetailsdetails
131pass pass pass pass semantics.var.alt.nullifs.test
132pass pass pass pass semantics.var.alt.null.test
133pass pass pass pass semantics.varassign.test
134pass pass pass pass semantics.var.builtin.nonspecial.test
135FAIL pass FAIL pass semantics.var.dashu.test
detailsdetails
136pass pass pass FAIL semantics.var.format.tilde.test
details
137pass pass pass pass semantics.variable.escape.length.test
138pass pass pass pass semantics.var.ifs.sep.test
139FAIL pass pass FAIL semantics.var.star.emptyifs.test
detailsdetails
140pass pass pass FAIL semantics.var.star.format.test
details
141pass pass pass pass semantics.var.unset.nofield.test
142TIME TIME TIME TIME semantics.wait.alreadydead.test
143pass pass pass pass semantics.while.test
144pass pass pass pass sh.-c.arg0.test
145pass pass pass pass sh.env.ppid.test
146pass pass pass pass sh.file.weirdness.test
147TIME TIME TIME FAIL sh.monitor.bg.test
detailsdetailsdetailsdetails
148TIME TIME TIME TIME sh.monitor.fg.test
149pass pass pass FAIL sh.set.ifs.test
details
434 passed, 0 OK, 0 not implemented, 0 BUG, 118 failed, 48 timeouts, 0 cases skipped
39 failed under osh

Details on runs that didn't PASS

osh0 benchmark.fact5.test

[osh status] Expected 0, got 2

stdout:
120
stderr:
  timing=$(times | head -n 1)
           ^~~~~
[ stdin ]:9: 'times' not found
  [ "$minutes" -eq 0 ] && [ "$seconds" -eq 0 ] && [ 1"$fractional" -lt 1001000 ]
    ^
[ stdin ]:13: (test) Invalid integer constant ''
osh1 benchmark.while.test

[osh status] Expected 0, got 2

stdout:
500
stderr:
  timing=$(times | head -n 1)
           ^~~~~
[ stdin ]:7: 'times' not found
  [ "$minutes" -eq 0 ] && [ "$seconds" -eq 0 ] && [ 1"$fractional" -lt 1001000 ]
    ^
[ stdin ]:11: (test) Invalid integer constant ''
dash2 builtin.alias.empty.test

[dash status] Expected 0, got 2

stdout:
stderr: 
/home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 4: Syntax error: end of file unexpected
osh2 builtin.alias.empty.test

[osh status] Expected 0, got 2

stdout:
stderr: 
  
   ^
[ expansion of alias 'empty' ]:1: Unexpected EOF while parsing command
dash3 builtin.break.lexical.test

[dash stdout] Expected '0\npost\n1\npost\n2\npost\n3\npost\n4\npost\n', got '0\n'

stdout:
0
stderr:
osh3 builtin.break.lexical.test

[osh stdout] Expected '0\npost\n1\npost\n2\npost\n3\npost\n4\npost\n', got ''
[osh status] Expected 0, got 2

stdout:
stderr: 
  brk() { break 5 2>/dev/null; echo post; }
          ^~~~~
[ stdin ]:1: Control flow shouldn't have redirects
dash4 builtin.break.nonlexical.test

[dash stdout] Expected '0\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
bash4 builtin.break.nonlexical.test

[bash stdout] Expected '0\n', got ''
[bash status] Expected 0, got 2

stdout:
stderr: 
mksh4 builtin.break.nonlexical.test

[mksh stdout] Expected '0\n', got ''
[mksh status] Expected 0, got 1

stdout:
stderr: 
osh4 builtin.break.nonlexical.test

[osh stdout] Expected '0\n', got ''
[osh status] Expected 0, got 2

stdout:
stderr: 
  brk() { break 5 2>/dev/null; echo post; }
          ^~~~~
[ stdin ]:2: Control flow shouldn't have redirects
osh6 builtin.command.ec.test

[osh stdout] Expected '0\n0\n', got '2\n'
[osh status] Expected 0, got 1

stdout:
2
stderr:
  command -V alias >/dev/null
          ^~
[ stdin ]:2: 'command' doesn't accept flag -V
osh8 builtin.command.keyword.test

[osh status] Expected 0, got 2

stdout:
!
while
stderr:
  command -V while >/dev/null 2>&1
  ^~~~~~~
[ stdin ]:4: fatal: Exiting with status 2 (command in PID 19924)
dash9 builtin.command.nospecial.test

[dash stdout] Expected '?=1\n', got '?=2\n'

stdout:
?=2
stderr:
/home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 2: readonly: x: is read only
mksh9 builtin.command.nospecial.test

[mksh stdout] Expected '?=1\n', got ''
[mksh status] Expected 0, got 2

stdout:
stderr: 
/bin/mksh: <stdin>[2]: read-only: x
dash11 builtin.continue.lexical.test

[dash stdout] Expected '0\npost\nafter\n1\npost\nafter\n2\npost\nafter\n3\npost\nafter\n4\npost\nafter\n', got '0\n1\n2\n3\n4\n'

stdout:
0
1
2
3
4
stderr:
osh11 builtin.continue.lexical.test

[osh stdout] Expected '0\npost\nafter\n1\npost\nafter\n2\npost\nafter\n3\npost\nafter\n4\npost\nafter\n', got ''
[osh status] Expected 0, got 2

stdout:
stderr: 
  cnt() { continue 5 2>/dev/null; echo post; }
          ^~~~~~~~
[ stdin ]:1: Control flow shouldn't have redirects
dash12 builtin.continue.nonlexical.test

[dash stdout] Expected '0\n1\n2\n3\n4\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
bash12 builtin.continue.nonlexical.test

[bash stdout] Expected '0\n1\n2\n3\n4\n', got ''
[bash status] Expected 0, got 2

stdout:
stderr: 
mksh12 builtin.continue.nonlexical.test

[mksh stdout] Expected '0\n1\n2\n3\n4\n', got ''
[mksh status] Expected 0, got 1

stdout:
stderr: 
osh12 builtin.continue.nonlexical.test

[osh stdout] Expected '0\n1\n2\n3\n4\n', got ''
[osh status] Expected 0, got 2

stdout:
stderr: 
  cnt() { continue 2>/dev/null; echo post; }
          ^~~~~~~~
[ stdin ]:2: Control flow shouldn't have redirects
dash13 builtin.dot.break.test

[dash stdout] Expected 'a\nb\nc\n', got 'a\n'

stdout:
a
stderr:
bash13 builtin.dot.break.test

[bash stdout] Expected 'a\nb\nc\n', got 'a\n'

stdout:
a
stderr:
osh13 builtin.dot.break.test

[osh status] Expected 0, got 1

stdout:
a
b
c
stderr:
  break
  ^~~~~
./scr:1: Loop and control flow can't be in different processes
  break
  ^~~~~
./scr:1: Loop and control flow can't be in different processes
  break
  ^~~~~
./scr:1: Loop and control flow can't be in different processes
dash14 builtin.dot.nonexistent.test

[dash status] Expected 1, got 2

stdout:
stderr: 
/home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 1: .: Can't open ./nonesuch
dash15 builtin.dot.path.test

[dash stdout] Expected 'yep\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
scr1: 2: .: Can't open /home/andy/git/oilshell/oil/_tmp/spec-tmp/smoosh.test.sh/p1/scr2
osh15 builtin.dot.path.test

[osh stdout] Expected 'yep\n', got ''
[osh status] Expected 0, got 1

stdout:
stderr: 
  . scr2
    ^~~~
scr1:2: source 'scr2' failed: Permission denied
  $TEST_SHELL scr1
  ^~~~~~~~~~~
[ stdin ]:12: fatal: Exiting with status 1 (command in PID 20025)
mksh18 builtin.eval.break.test

[mksh stdout] Expected 'a\n', got 'a\nb\nc\n'

stdout:
a
b
c
stderr:
/bin/mksh: break: can't break
/bin/mksh: break: can't break
/bin/mksh: break: can't break
osh18 builtin.eval.break.test

[osh stdout] Expected 'a\n', got 'a\nb\nc\n'
[osh status] Expected 0, got 1

stdout:
a
b
c
stderr:
  break
  ^~~~~
[ eval at line 1 of (source.Stdin comment:'') ]:1: Loop and control flow can't be in different processes
  break
  ^~~~~
[ eval at line 1 of (source.Stdin comment:'') ]:1: Loop and control flow can't be in different processes
  break
  ^~~~~
[ eval at line 1 of (source.Stdin comment:'') ]:1: Loop and control flow can't be in different processes
dash20 builtin.exec.badredir.test

[dash status] Expected 1, got 2

stdout:
stderr: 
/home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 1: cannot open -: No such file
/home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 1: exec: 9: not found
osh27 builtin.export.unset.test

[osh stdout] Expected 'export x\nok\n', got ''
[osh status] Expected 0, got 1

stdout:
stderr: 
  export -p | grep 'export x'
         ^~
[ stdin ]:4: 'export' doesn't accept flag -p
  export -p | grep 'export x'
  ^~~~~~
[ stdin ]:4: fatal: Exiting with status 2 (command in PID 20263)
  export -p | grep 'export x'
              ^~~~
[ stdin ]:4: fatal: Exiting with status 1 (command in PID 20259)
  export -p | grep 'export x'
            ^
[ stdin ]:4: fatal: Exiting with status 1 (pipeline invoked from PID 20259)
osh34 builtin.printf.repeat.test

[osh stdout] Expected '1 2\n3 4\n5 6\n7 8\n9 0\n', got ''
[osh status] Expected 0, got 1

stdout:
stderr: 
  %d %d\n
      ^
(source.ArgvWord word_spid:2):1: printf got invalid number '' for this substitution
dash35 builtin.readonly.assign.noninteractive.test

[dash status] Expected 1, got 2

stdout:
stderr: 
/home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 2: export: a: is read only
mksh35 builtin.readonly.assign.noninteractive.test

[mksh status] Expected 1, got 2

stdout:
stderr: 
/bin/mksh: <stdin>[2]: read-only: a
dash38 builtin.source.nonexistent.earlyexit.test

[dash stdout] Expected u'', got 'hi\n'
[dash status] Expected 1, got 0

stdout:
hi
stderr:
/home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 1: source: not found
osh38 builtin.source.nonexistent.earlyexit.test

[osh stdout] Expected u'', got 'hi\n'
[osh status] Expected 1, got 0

stdout:
hi
stderr:
  source not_a_thing
         ^~~~~~~~~~~
[ stdin ]:1: source 'not_a_thing' failed: No such file or directory
dash39 builtin.source.nonexistent.test

[dash status] Expected 1, got 2

stdout:
stderr: 
/home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 1: source: not found
/home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 2: .: nonesuch: not found
dash40 builtin.source.setvar.test

[dash stdout] Expected '5\n', got ''
[dash status] Expected 0, got 127

stdout:
stderr: 
/home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 3: source: not found
dash41 builtin.special.redir.error.test

[dash status] Expected 1, got 2

stdout:
stderr: 
dash44 builtin.test.-nt.-ot.absent.test

[dash status] Expected 0, got 1

stdout:
stderr: 
mksh48 builtin.trap.chained.test

[mksh status] Expected 0, got 1

stdout:
stderr: 
osh48 builtin.trap.chained.test

[osh status] Expected 0, got 1

stdout:
stderr: 
dash50 builtin.trap.exitcode.test

[dash status] Expected 0, got 2

stdout:
stderr: 
/home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 1: set: Illegal option -o bad@option
bash50 builtin.trap.exitcode.test

[bash status] Expected 0, got 2

stdout:
stderr: 
/home/andy/git/oilshell/oil/_tmp/spec-bin/bash: line 1: set: bad@option: invalid option name
mksh50 builtin.trap.exitcode.test

[mksh status] Expected 0, got 1

stdout:
stderr: 
/bin/mksh: set: bad@option: bad option
osh53 builtin.trap.kill.undef.test

[osh status] Expected 0, got 1

stdout:
stderr: 
  trap 'echo derp' KILL
                   ^~~~
[ stdin ]:1: Signal 'KILL' can't be handled
  trap 'echo nevah' 9
                    ^
[ stdin ]:2: Signal '9' can't be handled
dash54 builtin.trap.nested.test

[dash stdout] Expected 'exit\n', got ''

stdout:
stderr: 
bash54 builtin.trap.nested.test

[bash stdout] Expected 'exit\n', got ''

stdout:
stderr: 
osh54 builtin.trap.nested.test

[osh stdout] Expected 'exit\n', got ''

stdout:
stderr: 
bash56 builtin.trap.return.test

[bash stdout] Expected '1\n', got '0\n'

stdout:
0
stderr:
mksh56 builtin.trap.return.test

[mksh stdout] Expected '1\n', got '0\n'

stdout:
0
stderr:
dash57 builtin.trap.subshell.false.exit.test

[dash status] Expected 1, got 0

stdout:
stderr: 
bash57 builtin.trap.subshell.false.exit.test

[bash status] Expected 1, got 0

stdout:
stderr: 
mksh57 builtin.trap.subshell.false.exit.test

[mksh status] Expected 1, got 0

stdout:
stderr: 
osh57 builtin.trap.subshell.false.exit.test

[osh status] Expected 1, got 0

stdout:
stderr: 
dash59 builtin.trap.subshell.loud2.test

[dash stdout] Expected 'HUH\nWEIRD\n', got ''
[dash status] Expected 0, got 2

stdout:
stderr: 
/home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 1: set: Illegal option -o bad@option
bash59 builtin.trap.subshell.loud2.test

[bash stdout] Expected 'HUH\nWEIRD\n', got ''
[bash status] Expected 0, got 2

stdout:
stderr: 
/home/andy/git/oilshell/oil/_tmp/spec-bin/bash: line 1: set: bad@option: invalid option name
mksh59 builtin.trap.subshell.loud2.test

[mksh stdout] Expected 'HUH\nWEIRD\n', got ''
[mksh status] Expected 0, got 1

stdout:
stderr: 
/bin/mksh: set: bad@option: bad option
osh59 builtin.trap.subshell.loud2.test

[osh status] Expected 0, got 1

stdout:
HUH
WEIRD
stderr:
  set -o bad@option
         ^~~
[ trap ]:1: 'set' got invalid option 'bad@option'
dash60 builtin.trap.subshell.loud.test

[dash status] Expected 0, got 1

stdout:
WEIRD
stderr:
bash60 builtin.trap.subshell.loud.test

[bash stdout] Expected 'WEIRD\n', got ''
[bash status] Expected 0, got 1

stdout:
stderr: 
mksh60 builtin.trap.subshell.loud.test

[mksh stdout] Expected 'WEIRD\n', got ''
[mksh status] Expected 0, got 1

stdout:
stderr: 
osh60 builtin.trap.subshell.loud.test

[osh status] Expected 0, got 1

stdout:
WEIRD
stderr:
dash61 builtin.trap.subshell.quiet.test

[dash stdout] Expected u'', got 'BUG3\nBUG4\n'

stdout:
BUG3
BUG4
stderr:
/home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 1: foo: is read only
/home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 1: set: Illegal option -o bad@option
dash62 builtin.trap.subshell.true.ec1.test

[dash status] Expected 0, got 1

stdout:
stderr: 
bash62 builtin.trap.subshell.true.ec1.test

[bash status] Expected 0, got 1

stdout:
stderr: 
mksh62 builtin.trap.subshell.true.ec1.test

[mksh status] Expected 0, got 1

stdout:
stderr: 
osh62 builtin.trap.subshell.true.ec1.test

[osh status] Expected 0, got 1

stdout:
stderr: 
dash64 builtin.trap.supershell.test

[dash stdout] Expected "trap -- 'echo bye' EXIT\ntrap -- 'echo so long' EXIT\nso long\ntrap -- 'echo bye' EXIT\nbye\n", got "trap -- 'echo so long' EXIT\nso long\nbye\n"

stdout:
trap -- 'echo so long' EXIT
so long
bye
stderr:
bash64 builtin.trap.supershell.test

[bash stdout] Expected "trap -- 'echo bye' EXIT\ntrap -- 'echo so long' EXIT\nso long\ntrap -- 'echo bye' EXIT\nbye\n", got "trap -- 'echo bye' EXIT\ntrap -- '' PIPE\ntrap -- '' XFSZ\ntrap -- 'echo so long' EXIT\ntrap -- '' PIPE\ntrap -- '' XFSZ\nso long\ntrap -- 'echo bye' EXIT\ntrap -- '' PIPE\ntrap -- '' XFSZ\nbye\n"

stdout:
trap -- 'echo bye' EXIT
trap -- '' PIPE
trap -- '' XFSZ
trap -- 'echo so long' EXIT
trap -- '' PIPE
trap -- '' XFSZ
so long
trap -- 'echo bye' EXIT
trap -- '' PIPE
trap -- '' XFSZ
bye
stderr:
mksh64 builtin.trap.supershell.test

[mksh stdout] Expected "trap -- 'echo bye' EXIT\ntrap -- 'echo so long' EXIT\nso long\ntrap -- 'echo bye' EXIT\nbye\n", got "trap -- 'echo so long' EXIT\nso long\nbye\n"

stdout:
trap -- 'echo so long' EXIT
so long
bye
stderr:
osh64 builtin.trap.supershell.test

[osh stdout] Expected "trap -- 'echo bye' EXIT\ntrap -- 'echo so long' EXIT\nso long\ntrap -- 'echo bye' EXIT\nbye\n", got 'bye\n'
[osh status] Expected 0, got 2

stdout:
bye
stderr:
  (trap)
   ^~~~
[ stdin ]:2: 'trap' requires a code string
  (trap 'echo so long' EXIT; trap)
                             ^~~~
[ stdin ]:3: 'trap' requires a code string
  (trap)
   ^~~~
[ stdin ]:4: 'trap' requires a code string
dash65 builtin.unset.test

[dash status] Expected 1, got 2

stdout:
unset
foo
unset
stderr:
/home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 8: unset: x: is read only
bash66 parse.eval.error.test

[bash stdout] Expected u'', got 'lived\n'
[bash status] Expected 0, got 1

stdout:
lived
stderr:
scr: eval: line 2: syntax error: unexpected end of file
osh66 parse.eval.error.test

[osh stdout] Expected u'', got 'lived\n'
[osh status] Expected 0, got 1

stdout:
lived
stderr:
  if
    ^
[ eval at line 1 of scr ]:1: Unexpected EOF while parsing command
osh80 semantics.backtick.ppid.test

[osh stdout] Expected 'pid1=pid2\nppid=subshell\n', got ''
[osh status] Expected 0, got 2

stdout:
stderr: 
dash81 semantics.case.ec.test

[dash stdout] Expected '3\n0\n0\nvisible 1\n0\n', got '3\n0\n0\nvisible 0\n0\n'

stdout:
3
0
0
visible 0
0
stderr:
dash84 semantics.command-subst.newline.test

[dash stdout] Expected '1\n\n2\n', got '1\n2\n'

stdout:
1
2
stderr:
osh86 semantics.-C.test

[osh status] Expected 0, got 2

stdout:
stderr: 
bash88 semantics.dot.glob.test

[bash stdout] Expected '../foo ./foo\n', got './foo ../foo\n'

stdout:
./foo ../foo
stderr:
mksh88 semantics.dot.glob.test

[mksh stdout] Expected '../foo ./foo\n', got '.*/foo\n'

stdout:
.*/foo
stderr:
osh89 semantics.errexit.trap.test

[osh status] Expected 1, got 0

stdout:
stderr: 
dash90 semantics.error.noninteractive.test

[dash status] Expected 1, got 127

stdout:
stderr: 
/home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 1: x: z
chmod: cannot access 'script': No such file or directory
/home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 0: Can't open script
bash90 semantics.error.noninteractive.test

[bash status] Expected 1, got 126

stdout:
stderr: 
/home/andy/git/oilshell/oil/_tmp/spec-bin/bash: line 1: x: z
chmod: cannot access 'script': No such file or directory
/usr/bin/script: /usr/bin/script: cannot execute binary file
mksh90 semantics.error.noninteractive.test

[mksh status] Expected 1, got 127

stdout:
stderr: 
/bin/mksh: <stdin>[6]: x: z
chmod: cannot access 'script': No such file or directory
/bin/mksh: script: No such file or directory
dash95 semantics.escaping.quote.test

[dash stdout] Expected '"\n%\n&\n\'\n(\n)\n*\n+\n,\n-\n.\n/\n:\n;\n<\n=\n>\n?\n@\n[\n]\n^\n_\n{\n|\n}\n~\n \ndone\n', got '"\n#\n%\n&\n\'\n(\n)\n*\n+\n,\n-\n.\n/\n:\n;\n<\n=\n>\n?\n@\n[\n]\n^\n_\n{\n|\n}\n~\n \ndone\n'

stdout:
"
#
%
&
'
(
)
*
+
,
-
.
/
:
;
<
=
>
?
@
[
]
^
_
{
|
}
~
 
done
stderr:
bash95 semantics.escaping.quote.test

[bash stdout] Expected '"\n%\n&\n\'\n(\n)\n*\n+\n,\n-\n.\n/\n:\n;\n<\n=\n>\n?\n@\n[\n]\n^\n_\n{\n|\n}\n~\n \ndone\n', got '"\n#\n%\n&\n\'\n(\n)\n*\n+\n,\n-\n.\n/\n:\n;\n<\n=\n>\n?\n@\n[\n]\n^\n_\n{\n|\n}\n~\n \ndone\n'

stdout:
"
#
%
&
'
(
)
*
+
,
-
.
/
:
;
<
=
>
?
@
[
]
^
_
{
|
}
~
 
done
stderr:
mksh95 semantics.escaping.quote.test

[mksh stdout] Expected '"\n%\n&\n\'\n(\n)\n*\n+\n,\n-\n.\n/\n:\n;\n<\n=\n>\n?\n@\n[\n]\n^\n_\n{\n|\n}\n~\n \ndone\n', got '"\n#\n%\n&\n\'\n(\n)\n*\n+\n,\n-\n.\n/\n:\n;\n<\n=\n>\n?\n@\n[\n]\n^\n_\n{\n|\n}\n~\n \ndone\n'

stdout:
"
#
%
&
'
(
)
*
+
,
-
.
/
:
;
<
=
>
?
@
[
]
^
_
{
|
}
~
 
done
stderr:
osh95 semantics.escaping.quote.test

[osh stdout] Expected '"\n%\n&\n\'\n(\n)\n*\n+\n,\n-\n.\n/\n:\n;\n<\n=\n>\n?\n@\n[\n]\n^\n_\n{\n|\n}\n~\n \ndone\n', got '"\n'
[osh status] Expected 0, got 2

stdout:
"
stderr:
  printf '%s' "
              ^
[ backticks at ... ]:1: Unexpected EOF reading double-quoted string that began here
          $TEST_SHELL script >out
          ^~~~~~~~~~~
[ stdin ]:9: fatal: Exiting with status 2 (command in PID 21818)
dash98 semantics.evalorder.fun.test

[dash stdout] Expected 'got redir\nunset after function call\nredir exists\n', got 'got redir\nredir\nredir exists\n'

stdout:
got redir
redir
redir exists
stderr:
bash98 semantics.evalorder.fun.test

[bash stdout] Expected 'got redir\nunset after function call\nredir exists\n', got 'got assign\nassign\nassign exists\n'
[bash status] Expected 0, got 1

stdout:
got assign
assign
assign exists
stderr:
mksh98 semantics.evalorder.fun.test

[mksh stdout] Expected 'got redir\nunset after function call\nredir exists\n', got 'got redir\nredir\nredir exists\n'

stdout:
got redir
redir
redir exists
stderr:
osh103 semantics.ifs.combine.ws.test

[osh stdout] Expected 'x 5 12\nx 5 12\n', got '5\n\n\n 5\n'

stdout:
5


          5
stderr:
  %b
   ^
(source.ArgvWord word_spid:13):1: osh printf doesn't support backslash escaping (try $'\n')
  %b
   ^
(source.ArgvWord word_spid:45):1: osh printf doesn't support backslash escaping (try $'\n')
  %b
   ^
(source.ArgvWord word_spid:73):1: osh printf doesn't support backslash escaping (try $'\n')
dash107 semantics.noninteractive.expansion.exit.test

[dash status] Expected 1, got 2

stdout:
stderr: 
/home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 2: x: alas, poor yorick
dash109 semantics.pattern.hyphen.test

[dash stdout] Expected 'file-\nfile-\nfile-\nfile-\nfilea\nfilea\nfilea\n', got 'file-\nfile-\nfile[[.-.]]\nfile[[=-=]]\nfilea\nfilea\nfilea\n'

stdout:
file-
file-
file[[.-.]]
file[[=-=]]
filea
filea
filea
stderr:
mksh109 semantics.pattern.hyphen.test

[mksh stdout] Expected 'file-\nfile-\nfile-\nfile-\nfilea\nfilea\nfilea\n', got 'file-\nfile-\nfile[[.-.]]\nfile[[=-=]]\nfilea\nfile[[:alpha:]]\nfilea\n'

stdout:
file-
file-
file[[.-.]]
file[[=-=]]
filea
file[[:alpha:]]
filea
stderr:
dash111 semantics.pattern.rightbracket.test

[dash stdout] Expected 'file]\nfile]\nfile]\nfilea\nfilea\nfilea\n', got 'file]\nfile[[.].]]\nfile[[=]=]]\nfilea\nfilea\nfilea\n'

stdout:
file]
file[[.].]]
file[[=]=]]
filea
filea
filea
stderr:
mksh111 semantics.pattern.rightbracket.test

[mksh stdout] Expected 'file]\nfile]\nfile]\nfilea\nfilea\nfilea\n', got 'file]\nfile[[.].]]\nfile[[=]=]]\nfilea\nfile[[:alpha:]]\nfilea\n'

stdout:
file]
file[[.].]]
file[[=]=]]
filea
file[[:alpha:]]
filea
stderr:
dash114 semantics.redir.close.test

[dash stdout] Expected u'', got 'oops, still open\n'
[dash status] Expected 1, got 0

stdout:
oops, still open
stderr:
bash114 semantics.redir.close.test

[bash stdout] Expected u'', got 'oops, still open\n'
[bash status] Expected 1, got 0

stdout:
oops, still open
stderr:
osh120 semantics.special.assign.visible.nonposix.test

[osh stdout] Expected '5 7\n', got '\n'

stdout:
stderr: 
mksh121 semantics.splitting.ifs.test

[mksh stdout] Expected ' 1 2 3 \n', got ' 1 2 3 \n'

stdout:
 1   2   3 
stderr:
dash123 semantics.subshell.break.test

[dash stdout] Expected 'a\nb\n', got ''

stdout:
stderr: 
bash123 semantics.subshell.break.test

[bash stdout] Expected 'a\nb\n', got ''

stdout:
stderr: 
osh124 semantics.tilde.colon.test

[osh status] Expected 0, got 1

stdout:
stderr: 
bash127 semantics.tilde.sep.test

[bash stdout] Expected 'ok\n', got ''
[bash status] Expected 0, got 1

stdout:
stderr: 
osh127 semantics.tilde.sep.test

[osh stdout] Expected 'ok\n', got ''
[osh status] Expected 0, got 4

stdout:
stderr: 
osh129 semantics.traps.async.test

[osh stdout] Expected 'done\n', got ''
[osh status] Expected 0, got 1

stdout:
stderr: 
[%1] Started PID 22508
dash130 semantics.traps.inherit.test

[dash stdout] Expected 'got SIGINT\nsending SIGQUIT\n131\n', got 'sending SIGQUIT\n0\n'

stdout:
sending SIGQUIT
0
stderr:
bash130 semantics.traps.inherit.test

[bash stdout] Expected 'got SIGINT\nsending SIGQUIT\n131\n', got 'got SIGINT\nsending SIGQUIT\n0\n'

stdout:
got SIGINT
sending SIGQUIT
0
stderr:
osh130 semantics.traps.inherit.test

[osh stdout] Expected 'got SIGINT\nsending SIGQUIT\n131\n', got '4\n'

stdout:
4
stderr:
[%1] Started PID 22533
dash135 semantics.var.dashu.test

[dash stdout] Expected 'passed\n', got '1\n'
[dash status] Expected 0, got 1

stdout:
1
stderr:
/home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 1: nonesuch: parameter not set
/home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 1: 3: parameter not set
/home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 1: nonesuch: parameter not set
/home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 1: nonesuch: parameter not set
mksh135 semantics.var.dashu.test

[mksh stdout] Expected 'passed\n', got '1\n'
[mksh status] Expected 0, got 1

stdout:
1
stderr:
/bin/mksh: nonesuch: parameter not set
/bin/mksh: 3: parameter not set
/bin/mksh: nonesuch: parameter not set
/bin/mksh: nonesuch: parameter not set
osh136 semantics.var.format.tilde.test

[osh status] Expected 0, got 1

stdout:
stderr: 
dash139 semantics.var.star.emptyifs.test

[dash stdout] Expected '<a>\n<b e e>\n<c>\n<HIa>\n<b e e>\n<cBYE>\n', got '<ab e ec>\n<HIab e ecBYE>\n'

stdout:
<ab  e   ec>
<HIab  e   ecBYE>
stderr:
osh139 semantics.var.star.emptyifs.test

[osh stdout] Expected '<a>\n<b e e>\n<c>\n<HIa>\n<b e e>\n<cBYE>\n', got '<ab e ec>\n<HIab e ecBYE>\n'

stdout:
<ab  e   ec>
<HIab  e   ecBYE>
stderr:
osh140 semantics.var.star.format.test

[osh stdout] Expected '<a:s p aces:b:c:and\ttabs\n and newlines>\n<a s p aces b c and\ttabs\n and newlines>\n', got '<a:s p aces:b:c:>\n<a s p aces b c >\n'

stdout:
<a:s p  aces:b:c:>
<a s p  aces b c >
stderr:
  %b
   ^
(source.ArgvWord word_spid:9):1: osh printf doesn't support backslash escaping (try $'\n')
osh147 sh.monitor.bg.test

[osh status] Expected 0, got 3

stdout:
Jobs:
%1 3 <Process [subprog] command__Simple>

Processes:
22884 2 [subprog] command__CommandList
22886 3 [subprog] command__Simple
22887 2 [process] kill -TSTP 22886
1576734236 - 1576734236 = 0
Jobs:
%1 3 <Process [subprog] command__Simple>

Processes:
22888 2 [subprog] command__CommandList
22884 2 [subprog] command__CommandList
22886 3 [subprog] command__Simple
22887 2 [process] kill -TSTP 22886
1576734236 - 1576734236 = 0
stderr:
  set -m
      ^~
[ stdin ]:1: 'set' got invalid flag '-m'
[%1] Started PID 22886

[PID 22886] Stopped
  bg >output
  ^~
[ stdin ]:11: 'bg' isn't implemented
osh149 sh.set.ifs.test

[osh stdout] Expected ' \t\n \t\n \t\n', got ' \t\n \t\n'
[osh status] Expected 0, got 1

stdout:
 	
 	
stderr:
/home/andy/git/oilshell/oil/bin/osh: 2: cd: can't cd to /
ndy/git
/home/andy/git/oilshell/oil/bin/osh: 3: exec: /bin/oil.py: not found