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("int32test"); | 5 #library("int32test"); |
6 #import('../fixnum.dart'); | 6 #import('../fixnum.dart'); |
7 | 7 |
8 void main() { | 8 void main() { |
9 Expect.equals("0", new int32.fromInt(0).toString()); | 9 Expect.equals("0", new int32.fromInt(0).toString()); |
10 Expect.equals("1", new int32.fromInt(1).toString()); | 10 Expect.equals("1", new int32.fromInt(1).toString()); |
(...skipping 14 matching lines...) Expand all Loading... |
25 Expect.equals("ffffff", | 25 Expect.equals("ffffff", |
26 new int32.fromInt(-1).shiftRightUnsigned(8).toHexString()); | 26 new int32.fromInt(-1).shiftRightUnsigned(8).toHexString()); |
27 | 27 |
28 Expect.equals("123456789", new int32.fromInt(123456789).toString()); | 28 Expect.equals("123456789", new int32.fromInt(123456789).toString()); |
29 Expect.equals("75bcd15", new int32.fromInt(123456789).toHexString()); | 29 Expect.equals("75bcd15", new int32.fromInt(123456789).toHexString()); |
30 Expect.equals("223101104124", new int32.fromInt(123456789).toRadixString(5)); | 30 Expect.equals("223101104124", new int32.fromInt(123456789).toRadixString(5)); |
31 | 31 |
32 try { | 32 try { |
33 new int32.fromInt(17) >> -1; | 33 new int32.fromInt(17) >> -1; |
34 Expect.fail("x >> -1 should throw IllegalArgumentException"); | 34 Expect.fail("x >> -1 should throw IllegalArgumentException"); |
35 } catch (IllegalArgumentException e) { | 35 } on IllegalArgumentException catch (e) { |
36 } | 36 } |
37 | 37 |
38 try { | 38 try { |
39 new int32.fromInt(17) << -1; | 39 new int32.fromInt(17) << -1; |
40 Expect.fail("x >> -1 should throw IllegalArgumentException"); | 40 Expect.fail("x >> -1 should throw IllegalArgumentException"); |
41 } catch (IllegalArgumentException e) { | 41 } on IllegalArgumentException catch (e) { |
42 } | 42 } |
43 | 43 |
44 try { | 44 try { |
45 new int32.fromInt(17).shiftRightUnsigned(-1); | 45 new int32.fromInt(17).shiftRightUnsigned(-1); |
46 Expect.fail("x >> -1 should throw IllegalArgumentException"); | 46 Expect.fail("x >> -1 should throw IllegalArgumentException"); |
47 } catch (IllegalArgumentException e) { | 47 } on IllegalArgumentException catch (e) { |
48 } | 48 } |
49 | 49 |
50 // wraparound | 50 // wraparound |
51 Expect.equals("-67153019", (new int32.fromInt(123456789) * | 51 Expect.equals("-67153019", (new int32.fromInt(123456789) * |
52 new int32.fromInt(987654321)).toString()); | 52 new int32.fromInt(987654321)).toString()); |
53 Expect.equals("121932631112635269", (new int64.fromInt(123456789) * | 53 Expect.equals("121932631112635269", (new int64.fromInt(123456789) * |
54 new int32.fromInt(987654321)).toString()); | 54 new int32.fromInt(987654321)).toString()); |
55 Expect.equals("121932631112635269", (new int32.fromInt(123456789) * | 55 Expect.equals("121932631112635269", (new int32.fromInt(123456789) * |
56 new int64.fromInt(987654321)).toString()); | 56 new int64.fromInt(987654321)).toString()); |
57 Expect.equals("121932631112635269", (new int64.fromInt(123456789) * | 57 Expect.equals("121932631112635269", (new int64.fromInt(123456789) * |
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
122 new int32.fromInt(0x12345678) ~/ new int32.fromInt(0x22)); | 122 new int32.fromInt(0x12345678) ~/ new int32.fromInt(0x22)); |
123 Expect.equals(new int32.fromInt(0x12345678 ~/ 0x22), | 123 Expect.equals(new int32.fromInt(0x12345678 ~/ 0x22), |
124 new int32.fromInt(0x12345678) ~/ new int64.fromInt(0x22)); | 124 new int32.fromInt(0x12345678) ~/ new int64.fromInt(0x22)); |
125 | 125 |
126 Expect.equals(new int32.fromInt(0x12345678 >> 7), | 126 Expect.equals(new int32.fromInt(0x12345678 >> 7), |
127 new int32.fromInt(0x12345678) >> 7); | 127 new int32.fromInt(0x12345678) >> 7); |
128 Expect.equals(new int32.fromInt(0x12345678 << 7), | 128 Expect.equals(new int32.fromInt(0x12345678 << 7), |
129 new int32.fromInt(0x12345678) << 7); | 129 new int32.fromInt(0x12345678) << 7); |
130 Expect.equals(new int32.fromInt(0x12345678 >> 7), | 130 Expect.equals(new int32.fromInt(0x12345678 >> 7), |
131 new int32.fromInt(0x12345678).shiftRightUnsigned(7)); | 131 new int32.fromInt(0x12345678).shiftRightUnsigned(7)); |
132 | 132 |
133 try { | 133 try { |
134 new int32.fromInt(17) < null; | 134 new int32.fromInt(17) < null; |
135 Expect.fail("x < null should throw NullPointerException"); | 135 Expect.fail("x < null should throw NullPointerException"); |
136 } catch (NullPointerException e) { | 136 } on NullPointerException catch (e) { |
137 } | 137 } |
138 | 138 |
139 try { | 139 try { |
140 new int32.fromInt(17) <= null; | 140 new int32.fromInt(17) <= null; |
141 Expect.fail("x <= null should throw NullPointerException"); | 141 Expect.fail("x <= null should throw NullPointerException"); |
142 } catch (NullPointerException e) { | 142 } on NullPointerException catch (e) { |
143 } | 143 } |
144 | 144 |
145 try { | 145 try { |
146 new int32.fromInt(17) > null; | 146 new int32.fromInt(17) > null; |
147 Expect.fail("x > null should throw NullPointerException"); | 147 Expect.fail("x > null should throw NullPointerException"); |
148 } catch (NullPointerException e) { | 148 } on NullPointerException catch (e) { |
149 } | 149 } |
150 | 150 |
151 try { | 151 try { |
152 new int32.fromInt(17) < null; | 152 new int32.fromInt(17) < null; |
153 Expect.fail("x >= null should throw NullPointerException"); | 153 Expect.fail("x >= null should throw NullPointerException"); |
154 } catch (NullPointerException e) { | 154 } on NullPointerException catch (e) { |
155 } | 155 } |
156 | 156 |
157 Expect.isFalse(new int32.fromInt(17) == null); | 157 Expect.isFalse(new int32.fromInt(17) == null); |
158 } | 158 } |
OLD | NEW |