Chromium Code Reviews| 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 'package:fixnum/fixnum.dart'; | 6 import 'package:fixnum/fixnum.dart'; |
| 7 import 'package:unittest/unittest.dart'; | 7 import 'package:unittest/unittest.dart'; |
| 8 | 8 |
| 9 void main() { | 9 void main() { |
| 10 group("is-tests", () { | 10 group("is-tests", () { |
| (...skipping 616 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 627 return new Int64(1); | 627 return new Int64(1); |
| 628 } else { | 628 } else { |
| 629 return n * _factorial(n - new Int64(1)); | 629 return n * _factorial(n - new Int64(1)); |
| 630 } | 630 } |
| 631 } | 631 } |
| 632 Int64 fact18 = _factorial(new Int64(18)); | 632 Int64 fact18 = _factorial(new Int64(18)); |
| 633 Int64 fact17 = _factorial(new Int64(17)); | 633 Int64 fact17 = _factorial(new Int64(17)); |
| 634 expect(fact18 ~/ fact17, new Int64(18)); | 634 expect(fact18 ~/ fact17, new Int64(18)); |
| 635 }); | 635 }); |
| 636 | 636 |
| 637 test("min, max values", () { | 637 test("min, max values", () { expect(new Int64(1) << 63, Int64.MIN_VALUE); |
|
sra1
2013/10/23 04:09:11
Put the first statement of the block back on its o
Chris Bracken
2013/10/23 23:34:12
Done.
| |
| 638 expect(new Int64(1) << 63, Int64.MIN_VALUE); | |
| 639 expect(-(Int64.MIN_VALUE + new Int64(1)), Int64.MAX_VALUE); | 638 expect(-(Int64.MIN_VALUE + new Int64(1)), Int64.MAX_VALUE); |
| 640 }); | 639 }); |
| 641 | 640 |
| 642 group("parse", () { | 641 group("parse", () { |
| 643 test("parseRadix10", () { | 642 test("parseRadix10", () { |
| 644 checkInt(int x) { | 643 checkInt(int x) { |
| 645 expect(Int64.parseRadix('$x', 10), new Int64(x)); | 644 expect(Int64.parseRadix('$x', 10), new Int64(x)); |
| 646 } | 645 } |
| 647 checkInt(0); | 646 checkInt(0); |
| 648 checkInt(1); | 647 checkInt(1); |
| 649 checkInt(-1); | 648 checkInt(-1); |
| 650 checkInt(1000); | 649 checkInt(1000); |
| 651 checkInt(12345678); | 650 checkInt(12345678); |
| 652 checkInt(-12345678); | 651 checkInt(-12345678); |
| 653 checkInt(2147483647); | 652 checkInt(2147483647); |
| 654 checkInt(2147483648); | 653 checkInt(2147483648); |
| 655 checkInt(-2147483647); | 654 checkInt(-2147483647); |
| 656 checkInt(-2147483648); | 655 checkInt(-2147483648); |
| 657 checkInt(4294967295); | 656 checkInt(4294967295); |
| 658 checkInt(4294967296); | 657 checkInt(4294967296); |
| 659 checkInt(-4294967295); | 658 checkInt(-4294967295); |
| 660 checkInt(-4294967296); | 659 checkInt(-4294967296); |
| 660 expect(() => Int64.parseRadix('xyzzy', -1), throwsArgumentError); | |
| 661 expect(() => Int64.parseRadix('plugh', 10), | |
| 662 throwsA(new isInstanceOf<FormatException>())); | |
| 661 }); | 663 }); |
| 662 | 664 |
| 663 test("parseRadix", () { | 665 test("parseRadix", () { |
| 664 check(String s, int r, String x) { | 666 check(String s, int r, String x) { |
| 665 expect(Int64.parseRadix(s, r).toString(), x); | 667 expect(Int64.parseRadix(s, r).toString(), x); |
| 666 } | 668 } |
| 667 check('ghoul', 36, '27699213'); | 669 check('ghoul', 36, '27699213'); |
| 668 check('ghoul', 35, '24769346'); | 670 check('ghoul', 35, '24769346'); |
| 669 // Min and max value. | 671 // Min and max value. |
| 670 check("-9223372036854775808", 10, "-9223372036854775808"); | 672 check("-9223372036854775808", 10, "-9223372036854775808"); |
| (...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 742 expect(Int64.MAX_VALUE.toRadixString(10), "9223372036854775807"); | 744 expect(Int64.MAX_VALUE.toRadixString(10), "9223372036854775807"); |
| 743 expect(Int64.MAX_VALUE.toRadixString(11), "1728002635214590697"); | 745 expect(Int64.MAX_VALUE.toRadixString(11), "1728002635214590697"); |
| 744 expect(Int64.MAX_VALUE.toRadixString(12), "41a792678515120367"); | 746 expect(Int64.MAX_VALUE.toRadixString(12), "41a792678515120367"); |
| 745 expect(Int64.MAX_VALUE.toRadixString(13), "10b269549075433c37"); | 747 expect(Int64.MAX_VALUE.toRadixString(13), "10b269549075433c37"); |
| 746 expect(Int64.MAX_VALUE.toRadixString(14), "4340724c6c71dc7a7"); | 748 expect(Int64.MAX_VALUE.toRadixString(14), "4340724c6c71dc7a7"); |
| 747 expect(Int64.MAX_VALUE.toRadixString(15), "160e2ad3246366807"); | 749 expect(Int64.MAX_VALUE.toRadixString(15), "160e2ad3246366807"); |
| 748 expect(Int64.MAX_VALUE.toRadixString(16), "7fffffffffffffff"); | 750 expect(Int64.MAX_VALUE.toRadixString(16), "7fffffffffffffff"); |
| 749 }); | 751 }); |
| 750 }); | 752 }); |
| 751 } | 753 } |
| OLD | NEW |