Results for ysh-expr-compare.test.sh

statusoshosh_ALT
pass 99
FAIL 22
total1111
caseoshosh_ALTdescription
0pass pass Exact equality with === and !==
1pass pass Approximate equality of Str x {Str, Int, Bool} with ~==
2pass pass Wrong Types with ~==
3FAIL FAIL Equality of ~== with Float (deferred)
detailsdetails
4pass pass Comparison of Int
5pass pass Comparison of Str does conversion to Int
6pass pass Mixed Type Comparison does conversion to Int
7pass pass Invalid String is an error
8pass pass Bool conversion -- explicit allowed, implicit not allowed
9pass pass Chained Comparisons
10FAIL FAIL Tuple comparison is not allowed
detailsdetails
18 passed, 0 OK, 0 not implemented, 0 BUG, 2 failed, 0 timeouts, 0 cases skipped
2 failed under osh

Details on runs that didn't PASS

osh3 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_ALT3 Equality of ~== with Float (deferred)

[osh_ALT status] Expected 0, got 1

stdout:
stderr: 
  if (42 ~== 42.0) {
         ^~~
[ stdin ]:3: fatal: ~== expects a string on the left
osh10 Tuple comparison is not allowed

[osh stdout] Expected 'yes1\nyes2\n', got ''
[osh status] Expected 0, got 3

stdout:
stderr: 
  var t3 = 3, 1
  ^~~
[ stdin ]:5: fatal: Expected Int or Float operands
osh_ALT10 Tuple comparison is not allowed

[osh_ALT stdout] Expected 'yes1\nyes2\n', got ''
[osh_ALT status] Expected 0, got 3

stdout:
stderr: 
  var t3 = 3, 1
  ^~~
[ stdin ]:5: fatal: Expected Int or Float operands