dart-sdk/tests/corelib/double_round_to_double3_test.dart
Robert Nystrom a4d799c402 Migrate corelib/ tests starting with b-d to NNBD.
Note that cast_test.dart isn't migrated yet due to #39517.

First patch set is just copying the tests over. The second patchset has
the actual meaningful changes.

Change-Id: I89233f20187b4305a776f865cde09a984423fa4f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125920
Commit-Queue: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
Auto-Submit: Bob Nystrom <rnystrom@google.com>
2019-12-02 23:13:10 +00:00

35 lines
2 KiB
Dart

// Copyright (c) 2013, 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.
import 'package:expect/expect.dart';
main() {
// The following numbers are on the border of 52 bits.
// For example: 4503599627370499 + 0.5 => 4503599627370500.
Expect.equals(4503599627370496.0, 4503599627370496.0.roundToDouble());
Expect.equals(4503599627370497.0, 4503599627370497.0.roundToDouble());
Expect.equals(4503599627370498.0, 4503599627370498.0.roundToDouble());
Expect.equals(4503599627370499.0, 4503599627370499.0.roundToDouble());
Expect.equals(9007199254740991.0, 9007199254740991.0.roundToDouble());
Expect.equals(9007199254740992.0, 9007199254740992.0.roundToDouble());
Expect.equals(-4503599627370496.0, (-4503599627370496.0).roundToDouble());
Expect.equals(-4503599627370497.0, (-4503599627370497.0).roundToDouble());
Expect.equals(-4503599627370498.0, (-4503599627370498.0).roundToDouble());
Expect.equals(-4503599627370499.0, (-4503599627370499.0).roundToDouble());
Expect.equals(-9007199254740991.0, (-9007199254740991.0).roundToDouble());
Expect.equals(-9007199254740992.0, (-9007199254740992.0).roundToDouble());
Expect.isTrue(4503599627370496.0.roundToDouble() is double);
Expect.isTrue(4503599627370497.0.roundToDouble() is double);
Expect.isTrue(4503599627370498.0.roundToDouble() is double);
Expect.isTrue(4503599627370499.0.roundToDouble() is double);
Expect.isTrue(9007199254740991.0.roundToDouble() is double);
Expect.isTrue(9007199254740992.0.roundToDouble() is double);
Expect.isTrue((-4503599627370496.0).roundToDouble() is double);
Expect.isTrue((-4503599627370497.0).roundToDouble() is double);
Expect.isTrue((-4503599627370498.0).roundToDouble() is double);
Expect.isTrue((-4503599627370499.0).roundToDouble() is double);
Expect.isTrue((-9007199254740991.0).roundToDouble() is double);
Expect.isTrue((-9007199254740992.0).roundToDouble() is double);
}