spec test index / oilshell.org
status | ysh | ysh_ALT | |
pass | 9 | 9 | |
FAIL | 4 | 4 | |
total | 13 | 13 | |
case | ysh | ysh_ALT | description |
0 | pass | pass | fastlex: NUL byte not allowed inside char literal #' ' |
1 | pass | pass | fastlex: NUL byte inside shebang line |
2 | pass | pass | Tea keywords don't interfere with YSH expressions |
3 | pass | pass | Catch AttributeError |
4 | pass | pass | Command sub paren parsing bug (#1387) |
5 | pass | pass | More Command sub paren parsing |
6 | pass | pass | don't execute empty command |
7 | FAIL | FAIL | Do && || with YSH constructs make sense/ |
details | details | ||
8 | pass | pass | shvar then replace - bug #1986 context manager crash |
9 | pass | pass | Parsing crash - bug #2003 |
10 | FAIL | FAIL | proc with IFS= read -r line - dynamic scope - issue #2012 |
details | details | ||
11 | FAIL | FAIL | func call inside proc call - error message attribution |
details | details | ||
12 | FAIL | FAIL | Crash in parsing case - issue #2037 |
details | details |
18 passed, 0 OK, 0 not implemented, 0 BUG, 8 failed, 0 timeouts, 0 cases skipped 4 failed under osh
ysh | 7 Do && || with YSH constructs make sense/ [ysh stdout] Expected '', got '(List) [42]\n(Int) 42\n(Int) 42\n' stdout: (List) [42] (Int) 42 (Int) 42stderr: |
ysh_ALT | 7 Do && || with YSH constructs make sense/ [ysh_ALT stdout] Expected '', got '(List) [42]\n(Int) 42\n(Int) 42\n' stdout: (List) [42] (Int) 42 (Int) 42stderr: |
ysh | 10 proc with IFS= read -r line - dynamic scope - issue #2012 [ysh stdout] Expected 'zz\nyy\n', got 'zz\n' [ysh status] Expected 0, got 1 stdout: zzstderr: write $line ^~~~~ [ stdin ]:8: fatal: Undefined variable 'line' echo yy | p-ifs ^~~~~ [ stdin ]:14: errexit PID 32000: command.Pipeline failed with status 1 |
ysh_ALT | 10 proc with IFS= read -r line - dynamic scope - issue #2012 [ysh_ALT stdout] Expected 'zz\nyy\n', got 'zz\n' [ysh_ALT status] Expected 0, got 1 stdout: zzstderr: write $line ^~~~~ [ stdin ]:8: fatal: Undefined variable 'line' echo yy | p-ifs ^~~~~ [ stdin ]:14: errexit PID 32005: command.Pipeline failed with status 1 |
ysh | 11 func call inside proc call - error message attribution [ysh stdout] Expected '', got ' eval (ident([1,2,3]))\n ^\n[ -c flag ]:11: fatal: Arg 1 should be a Command, got List\n' stdout: eval (ident([1,2,3])) ^ [ -c flag ]:11: fatal: Arg 1 should be a Command, got Liststderr: |
ysh_ALT | 11 func call inside proc call - error message attribution [ysh_ALT stdout] Expected '', got ' eval (ident([1,2,3]))\n ^\n[ -c flag ]:11: fatal: Arg 1 should be a Command, got List\n' stdout: eval (ident([1,2,3])) ^ [ -c flag ]:11: fatal: Arg 1 should be a Command, got Liststderr: |
ysh | 12 Crash in parsing case - issue #2037 [ysh status] Expected 0, got 1 [ysh stderr] Found 'Traceback (most recent' stdout: stderr: Traceback (most recent call last): File "/home/uke/oil/bin/oils_for_unix.py", line 198, in <module> sys.exit(main(sys.argv)) File "/home/uke/oil/bin/oils_for_unix.py", line 170, in main return AppBundleMain(argv) File "/home/uke/oil/bin/oils_for_unix.py", line 137, in AppBundleMain return shell.Main('ysh', arg_r, environ, login_shell, loader, readline) File "/home/uke/oil/core/shell.py", line 1138, in Main cmd_flags=cmd_eval.IsMainProgram) File "/home/uke/oil/core/main_loop.py", line 340, in Batch node = c_parser.ParseLogicalLine() # can raise ParseError File "/home/uke/oil/osh/cmd_parse.py", line 2774, in ParseLogicalLine node = self._ParseCommandLine() File "/home/uke/oil/osh/cmd_parse.py", line 2633, in _ParseCommandLine child = self.ParseAndOr() File "/home/uke/oil/osh/cmd_parse.py", line 2557, in ParseAndOr return self._ParseAndOr() File "/home/uke/oil/osh/cmd_parse.py", line 2568, in _ParseAndOr child = self.ParsePipeline() File "/home/uke/oil/osh/cmd_parse.py", line 2516, in ParsePipeline child = self.ParseCommand() File "/home/uke/oil/osh/cmd_parse.py", line 2434, in ParseCommand return self.ParseCompoundCommand() File "/home/uke/oil/osh/cmd_parse.py", line 2063, in ParseCompoundCommand n5 = self.ParseCase() File "/home/uke/oil/osh/cmd_parse.py", line 1854, in ParseCase return self.ParseYshCase(case_kw) File "/home/uke/oil/osh/cmd_parse.py", line 1779, in ParseYshCase discriminant = self.w_parser.NewlineOkForYshCase() File "/home/uke/oil/osh/word_parse.py", line 1422, in NewlineOkForYshCase next_id = self.lexer.LookAheadOne(lex_mode_e.Expr) File "/home/uke/oil/frontend/lexer.py", line 337, in LookAheadOne return self.line_lexer.LookAheadOne(lex_mode) File "/home/uke/oil/frontend/lexer.py", line 178, in LookAheadOne line_str = self.src_line.content AttributeError: 'NoneType' object has no attribute 'content' |
ysh_ALT | 12 Crash in parsing case - issue #2037 [ysh_ALT status] Expected 0, got 1 [ysh_ALT stderr] Found 'Traceback (most recent' stdout: stderr: Traceback (most recent call last): File "/home/uke/oil/bin/oil.py", line 34, in _cpython_main_hook sys.exit(oils_for_unix.main(sys.argv)) File "/home/uke/oil/bin/oils_for_unix.py", line 170, in main return AppBundleMain(argv) File "/home/uke/oil/bin/oils_for_unix.py", line 137, in AppBundleMain return shell.Main('ysh', arg_r, environ, login_shell, loader, readline) File "/home/uke/oil/core/shell.py", line 1138, in Main cmd_flags=cmd_eval.IsMainProgram) File "/home/uke/oil/core/main_loop.py", line 340, in Batch node = c_parser.ParseLogicalLine() # can raise ParseError File "/home/uke/oil/osh/cmd_parse.py", line 2774, in ParseLogicalLine node = self._ParseCommandLine() File "/home/uke/oil/osh/cmd_parse.py", line 2633, in _ParseCommandLine child = self.ParseAndOr() File "/home/uke/oil/osh/cmd_parse.py", line 2557, in ParseAndOr return self._ParseAndOr() File "/home/uke/oil/osh/cmd_parse.py", line 2568, in _ParseAndOr child = self.ParsePipeline() File "/home/uke/oil/osh/cmd_parse.py", line 2516, in ParsePipeline child = self.ParseCommand() File "/home/uke/oil/osh/cmd_parse.py", line 2434, in ParseCommand return self.ParseCompoundCommand() File "/home/uke/oil/osh/cmd_parse.py", line 2063, in ParseCompoundCommand n5 = self.ParseCase() File "/home/uke/oil/osh/cmd_parse.py", line 1854, in ParseCase return self.ParseYshCase(case_kw) File "/home/uke/oil/osh/cmd_parse.py", line 1779, in ParseYshCase discriminant = self.w_parser.NewlineOkForYshCase() File "/home/uke/oil/osh/word_parse.py", line 1422, in NewlineOkForYshCase next_id = self.lexer.LookAheadOne(lex_mode_e.Expr) File "/home/uke/oil/frontend/lexer.py", line 337, in LookAheadOne return self.line_lexer.LookAheadOne(lex_mode) File "/home/uke/oil/frontend/lexer.py", line 178, in LookAheadOne line_str = self.src_line.content AttributeError: 'NoneType' object has no attribute 'content' FATAL: couldn't import from app bundle '/home/uke/oil/_tmp/oil-tar-test/oil-0.22.0/_bin/ysh' (1) Stripping the oil.ovm binary may cause this error. See https://github.com/oilshell/oil/issues/47 |