dart-sdk/tests/corelib_2/int_truncate_test.dart
Stephen Adams 7b13c45bcc Fix negation precedence and non-web-integers in corelib_2/int_xxx_tests
Change-Id: Ia464ac9c33e19483559abc600e8933aad0499fb5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/108163
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2019-07-05 14:23:56 +00:00

34 lines
1.3 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() {
const int big = 0x123456789AB0000 + 0xCDEF; // Slightly rounded on web.
Expect.equals(0, 0.truncate());
Expect.equals(1, 1.truncate());
Expect.equals(0x1234, 0x1234.truncate());
Expect.equals(0x12345678, 0x12345678.truncate());
Expect.equals(0x123456789AB, 0x123456789AB.truncate());
Expect.equals(big, big.truncate());
Expect.equals(-1, (-1).truncate());
Expect.equals(-0x1234, (-0x1234).truncate());
Expect.equals(-0x12345678, (-0x12345678).truncate());
Expect.equals(-0x123456789AB, (-0x123456789AB).truncate());
Expect.equals(-big, (-big).truncate());
Expect.isTrue(0.truncate() is int);
Expect.isTrue(1.truncate() is int);
Expect.isTrue(0x1234.truncate() is int);
Expect.isTrue(0x12345678.truncate() is int);
Expect.isTrue(0x123456789AB.truncate() is int);
Expect.isTrue(big.truncate() is int);
Expect.isTrue((-1).truncate() is int);
Expect.isTrue((-0x1234).truncate() is int);
Expect.isTrue((-0x12345678).truncate() is int);
Expect.isTrue((-0x123456789AB).truncate() is int);
Expect.isTrue((-big).truncate() is int);
}