85 passed, 8 ok, 8 known unimplemented, 6 known bugs, 21 failed, 0 skipped
| dash | 1 Substring stdout: stderr: /bin/dash: 2: Bad substitution |
| osh | 1 Substring [osh stdout] Expected b'bcd\n', got b'' 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 716, in _Execute
argv = self.ev.EvalWordSequence(words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 962, in EvalWordSequence
return self._EvalWordSequence(words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 945, in _EvalWordSequence
args = self._EvalWordAndReframe(w)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 906, in _EvalWordAndReframe
part_vals = self._EvalParts(word)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 799, in _EvalParts
for v in self.part_ev._EvalWordPart(p, quoted=quoted):
File "/home/andy/git/oil/bin/../core/word_eval.py", line 687, in _EvalWordPart
if part.suffix_op and LookupKind(part.suffix_op.op_id) == Kind.VTest:
AttributeError: 'Slice' object has no attribute 'op_id'
|
| dash | 2 Cannot take length of substring stdout: 5stderr: |
| osh | 2 Cannot take length of substring [osh status] Expected 1, got 2 stdout: stderr: Line 2 of '<stdin>'
echo ${#v:1:3}
^
Expected } after length expression, got (token id:VOp2_Colon val:":" span_id:8)
---
Line 2 of '<stdin>'
echo ${#v:1:3}
^
Error reading command word
---
Line 0 of '<unknown>'
<token had no position info>
NO COL
Error parsing AndOr in ParseCommandTerm
---
|
| dash | 3 Pattern replacement stdout: stderr: /bin/dash: 2: Bad substitution |
| osh | 3 Pattern replacement [osh stdout] Expected b'abXX\n', got b'' 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 716, in _Execute
argv = self.ev.EvalWordSequence(words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 962, in EvalWordSequence
return self._EvalWordSequence(words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 945, in _EvalWordSequence
args = self._EvalWordAndReframe(w)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 906, in _EvalWordAndReframe
part_vals = self._EvalParts(word)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 799, in _EvalParts
for v in self.part_ev._EvalWordPart(p, quoted=quoted):
File "/home/andy/git/oil/bin/../core/word_eval.py", line 687, in _EvalWordPart
if part.suffix_op and LookupKind(part.suffix_op.op_id) == Kind.VTest:
AttributeError: 'PatSub' object has no attribute 'op_id'
|
| osh | 4 Remove smallest suffix [osh stdout] Expected b'aabbc\n', got b'aabbccdd\n' stdout: aabbccddstderr: |
| osh | 5 Remove longest suffix [osh stdout] Expected b'aabb\n', got b'aabbccdd\n' stdout: aabbccddstderr: |
| osh | 6 Remove smallest prefix [osh stdout] Expected b'bccdd\n', got b'aabbccdd\n' stdout: aabbccddstderr: |
| osh | 7 Remove longest prefix [osh stdout] Expected b'ccdd\n', got b'aabbccdd\n' stdout: aabbccddstderr: |
| osh | 10 Assign default value when empty [osh stdout] Expected b'is empty\n', got b'' 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 716, in _Execute
argv = self.ev.EvalWordSequence(words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 962, in EvalWordSequence
return self._EvalWordSequence(words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 945, in _EvalWordSequence
args = self._EvalWordAndReframe(w)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 906, in _EvalWordAndReframe
part_vals = self._EvalParts(word)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 799, in _EvalParts
for v in self.part_ev._EvalWordPart(p, quoted=quoted):
File "/home/andy/git/oil/bin/../core/word_eval.py", line 689, in _EvalWordPart
quoted)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 441, in _ApplyTestOp
raise NotImplementedError
NotImplementedError
|
| osh | 11 Assign default value when unset [osh stdout] Expected b'is unset\n', got b'' 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 716, in _Execute
argv = self.ev.EvalWordSequence(words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 962, in EvalWordSequence
return self._EvalWordSequence(words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 945, in _EvalWordSequence
args = self._EvalWordAndReframe(w)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 906, in _EvalWordAndReframe
part_vals = self._EvalParts(word)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 799, in _EvalParts
for v in self.part_ev._EvalWordPart(p, quoted=quoted):
File "/home/andy/git/oil/bin/../core/word_eval.py", line 689, in _EvalWordPart
quoted)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 441, in _ApplyTestOp
raise NotImplementedError
NotImplementedError
|
| osh | 12 Alternative value when empty [osh stdout] Expected b'v is not empty\n', got b'' 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 716, in _Execute
argv = self.ev.EvalWordSequence(words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 962, in EvalWordSequence
return self._EvalWordSequence(words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 945, in _EvalWordSequence
args = self._EvalWordAndReframe(w)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 906, in _EvalWordAndReframe
part_vals = self._EvalParts(word)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 799, in _EvalParts
for v in self.part_ev._EvalWordPart(p, quoted=quoted):
File "/home/andy/git/oil/bin/../core/word_eval.py", line 689, in _EvalWordPart
quoted)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 436, in _ApplyTestOp
raise NotImplementedError
NotImplementedError
|
| osh | 13 Alternative value when unset [osh stdout] Expected b'v is not unset\n', got b'' 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 716, in _Execute
argv = self.ev.EvalWordSequence(words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 962, in EvalWordSequence
return self._EvalWordSequence(words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 945, in _EvalWordSequence
args = self._EvalWordAndReframe(w)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 906, in _EvalWordAndReframe
part_vals = self._EvalParts(word)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 799, in _EvalParts
for v in self.part_ev._EvalWordPart(p, quoted=quoted):
File "/home/andy/git/oil/bin/../core/word_eval.py", line 689, in _EvalWordPart
quoted)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 436, in _ApplyTestOp
raise NotImplementedError
NotImplementedError
|
| dash | 14 Error when empty stdout: stderr: /bin/dash: 2: empty: is empty |
| dash | 15 Error when unset stdout: stderr: /bin/dash: 1: unset: is empty |
| osh | 16 Error when unset [osh stdout] Expected b'v is not unset\n', got b'' 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 716, in _Execute
argv = self.ev.EvalWordSequence(words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 962, in EvalWordSequence
return self._EvalWordSequence(words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 945, in _EvalWordSequence
args = self._EvalWordAndReframe(w)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 906, in _EvalWordAndReframe
part_vals = self._EvalParts(word)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 799, in _EvalParts
for v in self.part_ev._EvalWordPart(p, quoted=quoted):
File "/home/andy/git/oil/bin/../core/word_eval.py", line 689, in _EvalWordPart
quoted)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 436, in _ApplyTestOp
raise NotImplementedError
NotImplementedError
|
| dash | 17 String slice stdout: stderr: /bin/dash: 2: Bad substitution |
| osh | 17 String slice [osh stdout] Expected b'bcd\n', got b'' 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 716, in _Execute
argv = self.ev.EvalWordSequence(words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 962, in EvalWordSequence
return self._EvalWordSequence(words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 945, in _EvalWordSequence
args = self._EvalWordAndReframe(w)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 906, in _EvalWordAndReframe
part_vals = self._EvalParts(word)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 799, in _EvalParts
for v in self.part_ev._EvalWordPart(p, quoted=quoted):
File "/home/andy/git/oil/bin/../core/word_eval.py", line 687, in _EvalWordPart
if part.suffix_op and LookupKind(part.suffix_op.op_id) == Kind.VTest:
AttributeError: 'Slice' object has no attribute 'op_id'
|
| dash | 18 Negative string slice stdout: stderr: /bin/dash: 2: Bad substitution |
| osh | 18 Negative string slice [osh stdout] Expected b'def\n', got b'' 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 716, in _Execute
argv = self.ev.EvalWordSequence(words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 962, in EvalWordSequence
return self._EvalWordSequence(words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 945, in _EvalWordSequence
args = self._EvalWordAndReframe(w)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 906, in _EvalWordAndReframe
part_vals = self._EvalParts(word)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 799, in _EvalParts
for v in self.part_ev._EvalWordPart(p, quoted=quoted):
File "/home/andy/git/oil/bin/../core/word_eval.py", line 687, in _EvalWordPart
if part.suffix_op and LookupKind(part.suffix_op.op_id) == Kind.VTest:
AttributeError: 'Slice' object has no attribute 'op_id'
|
| dash | 19 String slice with math stdout: stderr: /bin/dash: 3: Bad substitution |
| osh | 19 String slice with math [osh stdout] Expected b'def\n', got b'' 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 716, in _Execute
argv = self.ev.EvalWordSequence(words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 962, in EvalWordSequence
return self._EvalWordSequence(words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 945, in _EvalWordSequence
args = self._EvalWordAndReframe(w)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 906, in _EvalWordAndReframe
part_vals = self._EvalParts(word)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 799, in _EvalParts
for v in self.part_ev._EvalWordPart(p, quoted=quoted):
File "/home/andy/git/oil/bin/../core/word_eval.py", line 687, in _EvalWordPart
if part.suffix_op and LookupKind(part.suffix_op.op_id) == Kind.VTest:
AttributeError: 'Slice' object has no attribute 'op_id'
|
| dash | 20 Var ref with ${!a} stdout: stderr: /bin/dash: 3: Bad substitution |
| mksh | 20 Var ref with ${!a} stdout: ref astderr: |
| osh | 20 Var ref with ${!a} [osh stdout] Expected b'ref c\n', got b'' 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 716, in _Execute
argv = self.ev.EvalWordSequence(words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 962, in EvalWordSequence
return self._EvalWordSequence(words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 945, in _EvalWordSequence
args = self._EvalWordAndReframe(w)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 906, in _EvalWordAndReframe
part_vals = self._EvalParts(word)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 799, in _EvalParts
for v in self.part_ev._EvalWordPart(p, quoted=quoted):
File "/home/andy/git/oil/bin/../core/word_eval.py", line 657, in _EvalWordPart
val = self._ApplyPrefixOp(val, part.prefix_op)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 466, in _ApplyPrefixOp
raise NotImplementedError(op_id)
NotImplementedError: VSub_Bang
|
| dash | 21 Bad var ref with ${!a} stdout: stderr: /bin/dash: 2: Bad substitution |
| mksh | 21 Bad var ref with ${!a} stdout: ref astderr: |
| osh | 21 Bad var ref with ${!a} [osh stdout] Expected b'ref\n', got b'' 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 716, in _Execute
argv = self.ev.EvalWordSequence(words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 962, in EvalWordSequence
return self._EvalWordSequence(words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 945, in _EvalWordSequence
args = self._EvalWordAndReframe(w)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 906, in _EvalWordAndReframe
part_vals = self._EvalParts(word)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 799, in _EvalParts
for v in self.part_ev._EvalWordPart(p, quoted=quoted):
File "/home/andy/git/oil/bin/../core/word_eval.py", line 657, in _EvalWordPart
val = self._ApplyPrefixOp(val, part.prefix_op)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 466, in _ApplyPrefixOp
raise NotImplementedError(op_id)
NotImplementedError: VSub_Bang
|
| bash | 24 Braced block inside ${} stdout: stderr: /bin/bash: line 1: syntax error near unexpected token `)'
/bin/bash: line 1: `echo ${foo:-$({ which ls; })}'
|
| dash | 25 Assigning $@ to var stdout: stderr: /bin/dash: 2: local: 2: bad variable name |
| dash | 26 Assigning "$@" to var stdout: stderr: /bin/dash: 2: local: 2 3: bad variable name |
| osh | 26 Assigning "$@" to var [osh stdout] Expected b"['1', '2', '3']\n", got b"['1', '2 3']\n" stdout: ['1', '2 3']stderr: |
| dash | 27 Assigning "$@" to var, then showing it quoted stdout: stderr: /bin/dash: 2: local: 2 3: bad variable name |
| osh | 27 Assigning "$@" to var, then showing it quoted [osh stdout] Expected b"['1 2 3']\n", got b"['1', '2 3']\n" stdout: ['1', '2 3']stderr: |
| dash | 28 Filename redirect with "$@" stdout: stderr: /bin/dash: 2: cannot create _tmp/var-sub1 _tmp/var-sub2: Directory nonexistent |
| dash | 29 Filename redirect with split word stdout: histderr: |
| mksh | 29 Filename redirect with split word stdout: histderr: rm: cannot remove '_tmp/1 2': No such file or directory |
| osh | 29 Filename redirect with split word [osh status] Expected 1, got 0 stdout: histderr: |
| bash | 30 Descriptor redirect to bad "$@" stdout: stderr: /bin/bash: line 2: "$@": ambiguous redirect |
| mksh | 30 Descriptor redirect to bad "$@" stdout: stderr: /bin/mksh: <stdin>[2]: >&'2 3 c d' : illegal file descriptor name |
| osh | 30 Descriptor redirect to bad "$@" [osh status] Expected 2, got 1 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 711, in _Execute
redirects = self._EvalRedirects(node)
File "/home/andy/git/oil/bin/../core/cmd_exec.py", line 617, in _EvalRedirects
ok, val = self.ev.EvalWordToString(n.arg_word)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 821, in EvalWordToString
self._AddErrorContext("Only string parts are allowed", word=word)
TypeError: _AddErrorContext() got an unexpected keyword argument 'word'
|
| mksh | 31 Here doc with bad "$@" delimiter stdout: stderr: /bin/mksh: <stdin>[7]: here document '$@' unclosed |