spec test index / oilshell.org
status | osh | osh-cpp | |
pass | 1 | 1 | |
FAIL | 6 | 6 | |
total | 7 | 7 | |
case | osh | osh-cpp | description |
0 | pass | pass | TODO: SETUP should be shared |
1 | FAIL | FAIL | retrieve key |
details | details | ||
2 | FAIL | FAIL | set key |
details | details | ||
3 | FAIL | FAIL | iterate over keys |
details | details | ||
4 | FAIL | FAIL | iterate over both keys and values |
details | details | ||
5 | FAIL | FAIL | get length |
details | details | ||
6 | FAIL | FAIL | index by integer does not work |
details | details |
2 passed, 0 OK, 0 not implemented, 0 BUG, 6 failed, 0 timeouts, 0 cases skipped 6 failed under osh
osh | 1 retrieve key [osh stdout] Expected 'b\n', got 'aa\n' stdout: aastderr: |
osh-cpp | 1 retrieve key [osh-cpp stdout] Expected 'b\n', got 'aa\n' stdout: aastderr: |
osh | 2 set key [osh stdout] Expected "['bar', 'b', 'c', 'XX']\n", got "['XX', 'b', 'foo', 'bar', 'a+1', 'c']\n" stdout: ['XX', 'b', 'foo', 'bar', 'a+1', 'c']stderr: |
osh-cpp | 2 set key [osh-cpp stdout] Expected "['bar', 'b', 'c', 'XX']\n", got "['XX', 'b', 'foo', 'bar', 'a+1', 'c']\n" stdout: ['XX', 'b', 'foo', 'bar', 'a+1', 'c']stderr: |
osh | 3 iterate over keys [osh stdout] Expected u'k1: v1\nk2: v2\nk3: v3\n', got '' [osh status] Expected 0, got 1 [osh 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 140, in AppBundleMain return shell.Main('osh', 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 2052, in ParseCompoundCommand return self.ParseFor() File "/home/uke/oil/osh/cmd_parse.py", line 1596, in ParseFor n2 = self._ParseForEachLoop(for_kw) File "/home/uke/oil/osh/cmd_parse.py", line 1535, in _ParseForEachLoop iter_words, semi_tok = self.ParseForWords() File "/home/uke/oil/osh/cmd_parse.py", line 1378, in ParseForWords self._GetWord() File "/home/uke/oil/osh/cmd_parse.py", line 648, in _GetWord w = self.w_parser.ReadWord(self.next_lex_mode) File "/home/uke/oil/osh/word_parse.py", line 2172, in ReadWord w = self._ReadWord(word_mode) File "/home/uke/oil/osh/word_parse.py", line 2099, in _ReadWord return self._ReadCompoundWord(lex_mode) File "/home/uke/oil/osh/word_parse.py", line 1784, in _ReadCompoundWord return self._ReadCompoundWord3(lex_mode, Id.Undefined_Tok, True) File "/home/uke/oil/osh/word_parse.py", line 1879, in _ReadCompoundWord3 part = self._ReadUnquotedLeftParts(is_triple_quoted) File "/home/uke/oil/osh/word_parse.py", line 839, in _ReadUnquotedLeftParts dq_part = self._ReadDoubleQuoted(self.cur_token) File "/home/uke/oil/osh/word_parse.py", line 1101, in _ReadDoubleQuoted self._ReadLikeDQ(left_token, False, parts) File "/home/uke/oil/osh/word_parse.py", line 1044, in _ReadLikeDQ part = self._ReadDoubleQuotedLeftParts() File "/home/uke/oil/osh/word_parse.py", line 778, in _ReadDoubleQuotedLeftParts raise AssertionError(self.cur_token) AssertionError: (Token id: Id.Left_DollarBraceZsh length: 6 col: 10 line: (SourceLine line_num: 3 content: "for k in \"${(@k)assoc}\"; do\n" src: (source.Stdin comment:"") ) ) |
osh-cpp | 3 iterate over keys [osh-cpp stdout] Expected u'k1: v1\nk2: v2\nk3: v3\n', got '' [osh-cpp status] Expected 0, got -6 stdout: stderr: osh: _gen/bin/oils_for_unix.mycpp.cc:46935: syntax_asdl::word_part_t* word_parse::WordParser::_ReadDoubleQuotedLeftParts(): Assertion `0' failed. timeout: the monitored command dumped core |
osh | 4 iterate over both keys and values [osh stdout] Expected u'k1: v1\nk2: v2\nk3: v3\n', got '' [osh status] Expected 0, got 2 stdout: stderr: for k v ("${(@kv)assoc}"); do ^ [ stdin ]:3: Unexpected word after for loop variable |
osh-cpp | 4 iterate over both keys and values [osh-cpp stdout] Expected u'k1: v1\nk2: v2\nk3: v3\n', got '' [osh-cpp status] Expected 0, got 2 stdout: stderr: for k v ("${(@kv)assoc}"); do ^ [ stdin ]:3: Unexpected word after for loop variable |
osh | 5 get length [osh stdout] Expected '3 2\n', got '2 2\n' stdout: 2 2stderr: |
osh-cpp | 5 get length [osh-cpp stdout] Expected '3 2\n', got '2 2\n' stdout: 2 2stderr: |
osh | 6 index by integer does not work [osh stdout] Expected "['']\n", got "['v1']\n" stdout: ['v1']stderr: |
osh-cpp | 6 index by integer does not work [osh-cpp stdout] Expected "['']\n", got "['v1']\n" stdout: ['v1']stderr: |