spec test index / oilshell.org
status | osh | |
pass | 10 | |
FAIL | 2 | |
total | 12 | |
case | osh | description |
0 | pass | Exact equality with === and !== |
1 | pass | Approximate equality of Str x {Str, Int, Bool} with ~== |
2 | pass | Wrong Types with ~== |
3 | FAIL | Equality of ~== with Float (deferred) |
details | ||
4 | pass | Comparison of Int |
5 | pass | Comparison of Str does conversion to Int |
6 | pass | Mixed Type Comparison does conversion to Int |
7 | pass | Invalid String is an error |
8 | pass | Bool conversion -- explicit allowed, implicit not allowed |
9 | pass | Chained Comparisons |
10 | FAIL | Tuple comparison is not allowed |
details | ||
11 | pass | Collection membership |
10 passed, 0 OK, 0 not implemented, 0 BUG, 2 failed, 0 timeouts, 0 cases skipped 2 failed under osh
osh | 3 Equality of ~== with Float (deferred) [osh status] Expected 0, got 1 stdout: stderr: if (42 ~== 42.0) { ^~~ [ stdin ]:3: fatal: ~== expects a string on the left |
osh | 10 Tuple comparison is not allowed [osh stdout] Expected 'yes1\nyes2\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 224, in <module> sys.exit(main(sys.argv)) File "/home/uke/oil/bin/oils_for_unix.py", line 199, in main return AppBundleMain(argv) File "/home/uke/oil/bin/oils_for_unix.py", line 146, in AppBundleMain return shell.Main('osh', arg_r, environ, login_shell, loader, readline) File "/home/uke/oil/core/shell.py", line 883, in Main cmd_flags=cmd_eval.IsMainProgram) File "/home/uke/oil/core/main_loop.py", line 347, in Batch is_return, is_fatal = cmd_ev.ExecuteAndCatch(node, cmd_flags=cmd_flags) File "/home/uke/oil/osh/cmd_eval.py", line 1694, in ExecuteAndCatch status = self._Execute(node) File "/home/uke/oil/osh/cmd_eval.py", line 1519, in _Execute status = self._Dispatch(node, cmd_st) File "/home/uke/oil/osh/cmd_eval.py", line 1399, in _Dispatch b = self._EvalCondition(if_arm.cond, if_arm.keyword) File "/home/uke/oil/osh/cmd_eval.py", line 618, in _EvalCondition obj = self.expr_ev.EvalExpr(cond.e, blame_tok) File "/home/uke/oil/oil_lang/expr_eval.py", line 561, in EvalExpr return self._EvalExpr(node) File "/home/uke/oil/oil_lang/expr_eval.py", line 1352, in _EvalExpr return _ValueToPyObj(self._EvalCompare(node)) File "/home/uke/oil/oil_lang/expr_eval.py", line 1073, in _EvalCompare left = _PyObjToValue(self._EvalExpr(node.left)) File "/home/uke/oil/oil_lang/expr_eval.py", line 141, in _PyObjToValue raise NotImplementedError() NotImplementedError |