spec test index / oilshell.org
status | osh | osh_.py | osh_.cc | |
pass | 10 | 10 | 10 | |
ok | 3 | 1 | 1 | |
FAIL | 1 | 3 | 3 | |
total | 14 | 14 | 14 | |
case | osh | osh_.py | osh_.cc | description |
0 | pass | pass | pass | echo keyword |
1 | pass | pass | pass | if/else |
2 | pass | pass | pass | Turn an array into an integer. |
3 | pass | pass | pass | assign readonly -- one line |
4 | pass | pass | pass | assign readonly -- multiple lines |
5 | pass | pass | pass | assign readonly -- multiple lines -- set -o posix |
6 | pass | pass | pass | unset readonly -- one line |
7 | pass | pass | pass | unset readonly -- multiple lines |
8 | ok | FAIL | FAIL | First word like foo$x() and foo$[1+2] (regression) |
details | details | details | ||
9 | ok | FAIL | FAIL | Function names |
details | details | details | ||
10 | ok | ok | ok | file with NUL byte |
details | details | details | ||
11 | pass | pass | pass | fastlex: PS1 format string that's incomplete / with NUL byte |
12 | FAIL | FAIL | FAIL | 'echo' and printf to disk full |
details | details | details | ||
13 | pass | pass | pass | subshell while running a script (regression) |
30 passed, 5 OK, 0 not implemented, 0 BUG, 7 failed, 0 timeouts, 0 cases skipped 1 failed under osh
osh | 8 First word like foo$x() and foo$[1+2] (regression) stdout: DONEstderr: foo$identity('z') ^~~ [ stdin ]:1: 'fooz' not found foo$[1+2] ^~~ [ stdin ]:3: 'foo3' not found |
osh_.py | 8 First word like foo$x() and foo$[1+2] (regression) [osh_.py stdout] Expected 'DONE\n', got '' [osh_.py status] Expected 0, got 1 [osh_.py stderr] Found 'Traceback (most recent' stdout: stderr: Traceback (most recent call last): File "/home/andy/git/oilshell/oil/bin/osh_eval.py", line 68, in <module> sys.exit(main(sys.argv)) File "/home/andy/git/oilshell/oil/bin/osh_eval.py", line 36, in main None) File "/home/andy/git/oilshell/oil/core/shell_native.py", line 503, in Main cmd_flags=cmd_eval.IsMainProgram) File "/home/andy/git/oilshell/oil/core/main_loop.py", line 317, in Batch node = c_parser.ParseLogicalLine() # can raise ParseError File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 2362, in ParseLogicalLine self._NewlineOk() File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 586, in _NewlineOk self._Peek() File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 544, in _Peek w = self.w_parser.ReadWord(self.next_lex_mode) File "/home/andy/git/oilshell/oil/osh/word_parse.py", line 1806, in ReadWord w, need_more = self._ReadWord(lex_mode) File "/home/andy/git/oilshell/oil/osh/word_parse.py", line 1725, in _ReadWord w = self._ReadCompoundWord(lex_mode) File "/home/andy/git/oilshell/oil/osh/word_parse.py", line 1458, in _ReadCompoundWord return self._ReadCompoundWord3(lex_mode, Id.Undefined_Tok, True) File "/home/andy/git/oilshell/oil/osh/word_parse.py", line 1518, in _ReadCompoundWord3 self._ParseInlineCallArgs(arglist) File "/home/andy/git/oilshell/oil/osh/word_parse.py", line 1365, in _ParseInlineCallArgs self.parse_ctx.ParseOilArgList(self.lexer, arglist) File "/home/andy/git/oilshell/oil/frontend/parse_lib.py", line 363, in ParseOilArgList pnode, last_token = self._ParseOil(lexer, grammar_nt.oil_arglist) File "/home/andy/git/oilshell/oil/frontend/parse_lib.py", line 329, in _ParseOil return e_parser.Parse(lexer, start_symbol) File "/home/andy/git/oilshell/oil/oil_lang/expr_parse.py", line 318, in Parse self.push_parser.setup(start_symbol) File "/home/andy/git/oilshell/oil/pgen2/parse.py", line 111, in setup self.stack = [_StackItem(self.grammar.dfas[start], 0, newnode)] AttributeError: 'NoneType' object has no attribute 'dfas' |
osh_.cc | 8 First word like foo$x() and foo$[1+2] (regression) [osh_.cc stdout] Expected 'DONE\n', got '' [osh_.cc status] Expected 0, got -6 stdout: stderr: osh_eval.stripped: cpp/leaky_pgen2.cc:8: void parse::Parser::setup(int): Assertion `0' failed. timeout: the monitored command dumped core |
osh | 9 Function names stdout: stderr: foo$x() { ^~~ [ stdin ]:1: fatal: Expected function named 'x', got (value.Undef) |
osh_.py | 9 Function names [osh_.py stderr] Found 'Traceback (most recent' stdout: stderr: Traceback (most recent call last): File "/home/andy/git/oilshell/oil/bin/osh_eval.py", line 68, in <module> sys.exit(main(sys.argv)) File "/home/andy/git/oilshell/oil/bin/osh_eval.py", line 36, in main None) File "/home/andy/git/oilshell/oil/core/shell_native.py", line 503, in Main cmd_flags=cmd_eval.IsMainProgram) File "/home/andy/git/oilshell/oil/core/main_loop.py", line 317, in Batch node = c_parser.ParseLogicalLine() # can raise ParseError File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 2362, in ParseLogicalLine self._NewlineOk() File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 586, in _NewlineOk self._Peek() File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 544, in _Peek w = self.w_parser.ReadWord(self.next_lex_mode) File "/home/andy/git/oilshell/oil/osh/word_parse.py", line 1806, in ReadWord w, need_more = self._ReadWord(lex_mode) File "/home/andy/git/oilshell/oil/osh/word_parse.py", line 1725, in _ReadWord w = self._ReadCompoundWord(lex_mode) File "/home/andy/git/oilshell/oil/osh/word_parse.py", line 1458, in _ReadCompoundWord return self._ReadCompoundWord3(lex_mode, Id.Undefined_Tok, True) File "/home/andy/git/oilshell/oil/osh/word_parse.py", line 1518, in _ReadCompoundWord3 self._ParseInlineCallArgs(arglist) File "/home/andy/git/oilshell/oil/osh/word_parse.py", line 1365, in _ParseInlineCallArgs self.parse_ctx.ParseOilArgList(self.lexer, arglist) File "/home/andy/git/oilshell/oil/frontend/parse_lib.py", line 363, in ParseOilArgList pnode, last_token = self._ParseOil(lexer, grammar_nt.oil_arglist) File "/home/andy/git/oilshell/oil/frontend/parse_lib.py", line 329, in _ParseOil return e_parser.Parse(lexer, start_symbol) File "/home/andy/git/oilshell/oil/oil_lang/expr_parse.py", line 318, in Parse self.push_parser.setup(start_symbol) File "/home/andy/git/oilshell/oil/pgen2/parse.py", line 111, in setup self.stack = [_StackItem(self.grammar.dfas[start], 0, newnode)] AttributeError: 'NoneType' object has no attribute 'dfas' |
osh_.cc | 9 Function names [osh_.cc status] Expected 1, got -6 stdout: stderr: osh_eval.stripped: cpp/leaky_pgen2.cc:8: void parse::Parser::setup(int): Assertion `0' failed. timeout: the monitored command dumped core |
osh | 10 file with NUL byte stdout: onestderr: |
osh_.py | 10 file with NUL byte stdout: onestderr: |
osh_.cc | 10 file with NUL byte stdout: onestderr: |
osh | 12 'echo' and printf to disk full [osh stdout] Expected 'status=1\nstatus=1\n', got 'status=0\nstatus=0\n' stdout: status=0 status=0stderr: |
osh_.py | 12 'echo' and printf to disk full [osh_.py stdout] Expected 'status=1\nstatus=1\n', got 'status=0\nstatus=0\n' stdout: status=0 status=0stderr: |
osh_.cc | 12 'echo' and printf to disk full [osh_.cc stdout] Expected 'status=1\nstatus=1\n', got 'status=0\nstatus=0\n' stdout: status=0 status=0stderr: |