| case | dash | bash | mksh | osh | description |
| 0 | pass | pass | pass | pass | Env value with equals |
| 1 | pass | pass | BUG | pass | Env value using preceding Env binding |
| details | |||||
| 2 | pass | pass | pass | pass | Env value with two quotes |
| 3 | pass | pass | pass | FAIL | Env value with escaped < |
| details | |||||
| 4 | pass | pass | pass | FAIL | Escaped = in command name |
| details | |||||
| 5 | BUG | pass | ok | FAIL | Env binding not allowed before compound command |
| details | details | details | |||
| 6 | pass | pass | pass | pass | Trying to run keyword 'for' |
| 7 | pass | pass | pass | pass | Empty env binding |
| 8 | pass | pass | pass | pass | Assignment doesn't do word splitting |
| 9 | pass | pass | pass | pass | Assignment doesn't do glob expansion |
| 10 | ok | ok | ok | pass | Env binding in readonly/declare disallowed |
| details | details | details | |||
| 11 | pass | pass | pass | pass | Dependent export setting |
39 passed, 4 ok, 0 known unimplemented, 2 known bugs, 3 failed, 0 skipped
| mksh | 1 Env value using preceding Env binding stdout: foo []stderr: |
| osh | 3 Env value with escaped < [osh stdout] Expected b'foo<foo\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, cflow = ex.Execute(node)
File "/home/andy/git/oil/bin/../core/cmd_exec.py", line 664, in Execute
more_env = self.ev.EvalEnv(node.more_env)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 820, in EvalEnv
ok, val = self.EvalCompoundWord(val)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 580, in EvalCompoundWord
ok, val = self.EvalWordPart(p, quoted=False)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 685, in EvalWordPart
val = self.token.val
AttributeError: 'NormalEvaluator' object has no attribute 'token'
|
| osh | 4 Escaped = in command name [osh stdout] Expected b'HI\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, cflow = ex.Execute(node)
File "/home/andy/git/oil/bin/../core/cmd_exec.py", line 659, in Execute
argv = self.ev.EvalWords(node.words)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 791, in EvalWords
ok, val = self.EvalCompoundWord(w, ifs=ifs, do_glob=do_glob)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 580, in EvalCompoundWord
ok, val = self.EvalWordPart(p, quoted=False)
File "/home/andy/git/oil/bin/../core/word_eval.py", line 685, in EvalWordPart
val = self.token.val
AttributeError: 'NormalEvaluator' object has no attribute 'token'
|
| dash | 5 Env binding not allowed before compound command stdout: stderr: /bin/dash: 1: for: not found |
| mksh | 5 Env binding not allowed before compound command stdout: stderr: /bin/mksh: <stdin>[1]: syntax error: 'do' unexpected |
| osh | 5 Env binding not allowed before compound command [osh status] Expected 2, got 127 stdout: stderr: Unexpected error in execvpe('for', ['for', 'i', 'in', 'a', 'b'], ...): [Errno 2] No such file or directory: b'/home/andy/bin/for'
|
| dash | 10 Env binding in readonly/declare disallowed stdout: v=Nonestderr: |
| bash | 10 Env binding in readonly/declare disallowed stdout: v=Nonestderr: |
| mksh | 10 Env binding in readonly/declare disallowed stdout: v=Nonestderr: |