Results for ysh-expr-compare.test.sh

statusosh
pass 15
FAIL 1
total16
caseoshdescription
0pass Exact equality with === and !==
1pass Approximate equality of Str x {Str, Int, Bool} with ~==
2pass Wrong Types with ~==
3pass === on float not allowed
4FAIL ~== on Float - TODO floatEquals()
details
5pass Comparison converts from Str -> Int or Float
6pass Comparison of Int
7pass Comparison of Str does conversion to Int
8pass Mixed Type Comparison does conversion to Int
9pass Invalid String is an error
10pass Bool conversion -- explicit allowed, implicit not allowed
11pass Chained Comparisons
12pass List / "Tuple" comparison is not allowed
13pass Ternary op behaves like if statement
14pass Undefined comparisons
15pass Non-comparable types in case arms
15 passed, 0 OK, 0 not implemented, 0 BUG, 1 failed, 0 timeouts, 0 cases skipped
1 failed under osh

Details on runs that didn't PASS

osh4 ~== 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