OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 #library('int64test'); | 5 #library('int64test'); |
6 #import('../fixnum.dart'); | 6 #import('../fixnum.dart'); |
7 | 7 |
8 void main() { | 8 void main() { |
9 testAdditive(); | 9 testAdditive(); |
10 testBitOps(); | 10 testBitOps(); |
(...skipping 249 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
260 | 260 |
261 Expect.equals(new int64.fromInts(0x708, 0x002E9501), | 261 Expect.equals(new int64.fromInts(0x708, 0x002E9501), |
262 int64.MAX_VALUE ~/ new int64.fromInt(0x123456)); | 262 int64.MAX_VALUE ~/ new int64.fromInt(0x123456)); |
263 Expect.equals(new int64.fromInt(0x3BDA9), | 263 Expect.equals(new int64.fromInt(0x3BDA9), |
264 int64.MAX_VALUE % new int64.fromInt(0x123456)); | 264 int64.MAX_VALUE % new int64.fromInt(0x123456)); |
265 } | 265 } |
266 | 266 |
267 void testFactorial() { | 267 void testFactorial() { |
268 | 268 |
269 int64 _fact(int64 n) { | 269 int64 _fact(int64 n) { |
270 if (n.isZero()) { | 270 if (n.isZero) { |
271 return new int64.fromInt(1); | 271 return new int64.fromInt(1); |
272 } else { | 272 } else { |
273 return n * _fact(n - new int64.fromInt(1)); | 273 return n * _fact(n - new int64.fromInt(1)); |
274 } | 274 } |
275 } | 275 } |
276 | 276 |
277 int64 fact18 = _fact(new int64.fromInt(18)); | 277 int64 fact18 = _fact(new int64.fromInt(18)); |
278 int64 fact17 = _fact(new int64.fromInt(17)); | 278 int64 fact17 = _fact(new int64.fromInt(17)); |
279 Expect.equals(new int64.fromInt(18), fact18 ~/ fact17); | 279 Expect.equals(new int64.fromInt(18), fact18 ~/ fact17); |
280 } | 280 } |
(...skipping 316 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
597 Expect.equals("777777777777777777777", int64.MAX_VALUE.toRadixString(8)); | 597 Expect.equals("777777777777777777777", int64.MAX_VALUE.toRadixString(8)); |
598 Expect.equals("67404283172107811827", int64.MAX_VALUE.toRadixString(9)); | 598 Expect.equals("67404283172107811827", int64.MAX_VALUE.toRadixString(9)); |
599 Expect.equals("9223372036854775807", int64.MAX_VALUE.toRadixString(10)); | 599 Expect.equals("9223372036854775807", int64.MAX_VALUE.toRadixString(10)); |
600 Expect.equals("1728002635214590697", int64.MAX_VALUE.toRadixString(11)); | 600 Expect.equals("1728002635214590697", int64.MAX_VALUE.toRadixString(11)); |
601 Expect.equals("41A792678515120367", int64.MAX_VALUE.toRadixString(12)); | 601 Expect.equals("41A792678515120367", int64.MAX_VALUE.toRadixString(12)); |
602 Expect.equals("10B269549075433C37", int64.MAX_VALUE.toRadixString(13)); | 602 Expect.equals("10B269549075433C37", int64.MAX_VALUE.toRadixString(13)); |
603 Expect.equals("4340724C6C71DC7A7", int64.MAX_VALUE.toRadixString(14)); | 603 Expect.equals("4340724C6C71DC7A7", int64.MAX_VALUE.toRadixString(14)); |
604 Expect.equals("160E2AD3246366807", int64.MAX_VALUE.toRadixString(15)); | 604 Expect.equals("160E2AD3246366807", int64.MAX_VALUE.toRadixString(15)); |
605 Expect.equals("7FFFFFFFFFFFFFFF", int64.MAX_VALUE.toRadixString(16)); | 605 Expect.equals("7FFFFFFFFFFFFFFF", int64.MAX_VALUE.toRadixString(16)); |
606 } | 606 } |
OLD | NEW |