spec test index / oilshell.org
| status | osh | osh-cpp | |
| pass | 14 | 14 | |
| FAIL | 1 | 1 | |
| total | 15 | 15 | |
| case | osh | osh-cpp | description |
| 0 | pass | pass | Exact equality with === and !== |
| 1 | pass | pass | Approximate equality of Str x {Str, Int, Bool} with ~== |
| 2 | pass | pass | Wrong Types with ~== |
| 3 | FAIL | FAIL | ~== on Float - TODO floatEquals() |
| details | details | ||
| 4 | pass | pass | Comparison converts from Str -> Int or Float |
| 5 | pass | pass | Comparison of Int |
| 6 | pass | pass | Comparison of Str does conversion to Int |
| 7 | pass | pass | Mixed Type Comparison does conversion to Int |
| 8 | pass | pass | Invalid String is an error |
| 9 | pass | pass | Bool conversion -- explicit allowed, implicit not allowed |
| 10 | pass | pass | Chained Comparisons |
| 11 | pass | pass | List / "Tuple" comparison is not allowed |
| 12 | pass | pass | Ternary op behaves like if statement |
| 13 | pass | pass | Undefined comparisons |
| 14 | pass | pass | Non-comparable types in case arms |
28 passed, 0 OK, 0 not implemented, 0 BUG, 1 failed, 0 timeouts, 0 cases skipped 1 failed under osh
| osh | 3 ~== on Float - TODO floatEquals() [osh status] Expected 0, got 1 stdout: stderr: if (42 ~== 42.0) {
^~~
[ stdin ]:3: fatal: ~== expects a string on the left
|
| osh-cpp | 3 ~== on Float - TODO floatEquals() [osh-cpp status] Expected 0, got 1 stdout: stderr: if (42 ~== 42.0) {
^~~
[ stdin ]:3: fatal: ~== expects a string on the left
|