| // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| /// @assertion int compareTo(Comparable other) |
| /// ... |
| /// For ordering, the double NaN value is considered equal to itself, and greater |
| /// than any numeric value |
| /// @description Checks that NaN is greater than any other value |
| /// @author pagolubev |
| |
| import "../../../Utils/expect.dart"; |
| |
| |
| main() { |
| double nan = double.nan; |
| |
| List values = [ |
| 0.0, |
| double.infinity, |
| double.maxFinite, |
| 2.2250738585072014e-308, // min normal |
| 4.9406564584124654e-324 // min |
| ]; |
| |
| values.forEach((val) { |
| Expect.isTrue(nan.compareTo(val) > 0); |
| Expect.isTrue(val.compareTo(nan) < 0); |
| }); |
| |
| Expect.equals(nan.compareTo(nan), 0); |
| Expect.equals(nan.compareTo(-nan), 0); |
| } |