Results for here-doc.test.sh

casedashbashmkshoshdescription
1pass pass pass FAIL Here doc from another input file descriptor
details
2pass pass pass FAIL Multiple here docs with different descriptors
details
3pass pass pass FAIL Here doc with bad var delimiter
details
4pass BUG ok pass Here doc with bad comsub delimiter
detailsdetails
5pass pass pass FAIL Here doc and < redirect -- last one wins
details
6pass pass pass pass < redirect and here doc -- last one wins
7pass pass pass pass Here doc with var sub, command sub, arith sub
8pass pass pass FAIL Here doc in middle. And redirects in the middle.
details
9pass pass pass pass Here doc line continuation
10pass pass pass pass Here doc with quote expansion in terminator
11pass pass pass pass Here doc with multiline double quoted string
12pass pass pass pass Two here docs -- first is ignored; second ones wins!
13pass pass ok pass Here doc with line continuation, then pipe. Syntax error.
details
14pass pass pass pass Here doc with pipe on first line
15pass pass pass pass Here doc with pipe continued on last line
16pass pass pass FAIL Here doc with builtin 'read'
details
17pass pass pass FAIL Compound command here doc
details
18pass pass pass pass Here doc in while condition and here doc in body
19pass pass pass pass Here doc in while condition and here doc in body on multiple lines
20pass pass pass pass Here doc in while loop split up more
21pass pass pass pass Mixing << and <<-
22pass pass pass FAIL Two compound commands with two here docs
details
23pass pass pass FAIL Function def and execution with here doc
details
24pass pass pass pass Here doc as command prefix
25pass pass pass pass Redirect after here doc
26pass pass pass pass here doc stripping tabs
27N-I pass pass pass Here doc within subshell with boolean
details

95 passed, 2 ok, 1 known unimplemented, 1 known bugs, 9 failed, 3 skipped

Details on runs that didn't PASS

osh1 Here doc from another input file descriptor

[osh stdout] Expected b'5: fd5\n', got b''

stdout:
stderr: 
FATAL: Error reading from fd 5: [Errno 9] Bad file descriptor
osh2 Multiple here docs with different descriptors

[osh stdout] Expected b'0: fd0\n3: fd3\n', got b'0: fd3\n'

stdout:
0: fd3
stderr:
FATAL: Error reading from fd 3: [Errno 9] Bad file descriptor
osh3 Here doc with bad var delimiter

[osh stdout] Expected b'here\n', got b''

stdout:
stderr: 
Line 1 of '<stdin>'
  cat <<${a}
        ^~
Error evaluating here doc delimiter: (CompoundWord parts:[(BracedVarSub token:(token id:VSub_Name val:a span_id:4) spids:[35])])
---
Line 0 of '<unknown>'
  <token had no position info>
NO COL
Error parsing AndOr in ParseCommandTerm
---
bash4 Here doc with bad comsub delimiter

stdout:
here
stderr:
mksh4 Here doc with bad comsub delimiter

stdout:
stderr: 
/bin/mksh: <stdin>[1]: syntax error: '(' unexpected
osh5 Here doc and < redirect -- last one wins

[osh stdout] Expected b'hello\n', got b''

stdout:
stderr: 
osh8 Here doc in middle. And redirects in the middle.

[osh stderr] Expected b'foo\nhere\nbar\n', got b'Traceback (most recent call last):\n File "bin/osh", line 378, in <module>\n sys.exit(main(sys.argv))\n File "bin/osh", line 368, in main\n return OshMain(main_argv)\n File "bin/osh", line 327, in OshMain\n status = ex.Execute(node)\n File "/home/andy/git/oil/bin/../core/cmd_exec.py", line 937, in Execute\n status = self._Execute(node)\n File "/home/andy/git/oil/bin/../core/cmd_exec.py", line 828, in _Execute\n status = self._Execute(child) # last status wins\n File "/home/andy/git/oil/bin/../core/cmd_exec.py", line 754, in _Execute\n self.fd_state.RestoreAll()\n File "/home/andy/git/oil/bin/../core/process.py", line 73, in RestoreAll\n os.close(fd)\nOSError: [Errno 9] Bad file descriptor\n'

stdout:
stderr: 
Traceback (most recent call last):
  File "bin/osh", line 378, in <module>
    sys.exit(main(sys.argv))
  File "bin/osh", line 368, in main
    return OshMain(main_argv)
  File "bin/osh", line 327, in OshMain
    status = ex.Execute(node)
  File "/home/andy/git/oil/bin/../core/cmd_exec.py", line 937, in Execute
    status = self._Execute(node)
  File "/home/andy/git/oil/bin/../core/cmd_exec.py", line 828, in _Execute
    status = self._Execute(child)  # last status wins
  File "/home/andy/git/oil/bin/../core/cmd_exec.py", line 754, in _Execute
    self.fd_state.RestoreAll()
  File "/home/andy/git/oil/bin/../core/process.py", line 73, in RestoreAll
    os.close(fd)
OSError: [Errno 9] Bad file descriptor
mksh13 Here doc with line continuation, then pipe. Syntax error.

stdout:
stderr: 
/bin/mksh: <stdin>[5]: cat: 1: No such file or directory
/bin/mksh: <stdin>[6]: syntax error: '|' unexpected
osh16 Here doc with builtin 'read'

[osh stdout] Expected b'=val1= =val2=\n', got b'=val1 val2= ==\n'

stdout:
=val1 val2= ==
stderr:
osh17 Compound command here doc

[osh stdout] Expected b'X 1\nX 2\nX 3\n', got b''

stdout:
stderr: 
osh22 Two compound commands with two here docs

[osh stdout] Expected b'X 1\nX 2\n==\nY 3\nY 4\n', got b'==\n'

stdout:
==
stderr:
osh23 Function def and execution with here doc

[osh stdout] Expected b'before\n1\n2\nafter\n', got b'before\nafter\n'

stdout:
before
after
stderr:
dash27 Here doc within subshell with boolean

stdout:
127
stderr:
/bin/dash: 1: [[: not found