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 // Dart test program for testing params. | 4 // Dart test program for testing params. |
5 // VMOptions=--optimization-counter-threshold=10 --no-background-compilation | 5 // VMOptions=--optimization-counter-threshold=10 --no-background-compilation |
6 | 6 |
7 import "package:expect/expect.dart"; | 7 import "package:expect/expect.dart"; |
8 | 8 |
9 main() { | 9 main() { |
10 for (int i = 0; i < 20; i++) testNumberIdentity(); | 10 for (int i = 0; i < 20; i++) testNumberIdentity(); |
11 } | 11 } |
12 | 12 |
13 | 13 testNumberIdentity() { |
14 testNumberIdentity () { | |
15 const int smi = 8; | 14 const int smi = 8; |
16 const int mint = 9223372036854775806; | 15 const int mint = 9223372036854775806; |
17 const int bigint = 22107138293752210713829375; | 16 const int bigint = 22107138293752210713829375; |
18 const double dbl = 8.0; | 17 const double dbl = 8.0; |
19 | 18 |
20 var a = smi; | 19 var a = smi; |
21 var b = a + 0; | 20 var b = a + 0; |
22 Expect.isTrue(identical(a, b)); | 21 Expect.isTrue(identical(a, b)); |
23 Expect.isFalse(identical(b, mint)); | 22 Expect.isFalse(identical(b, mint)); |
24 Expect.isFalse(identical(b, bigint)); | 23 Expect.isFalse(identical(b, bigint)); |
(...skipping 11 matching lines...) Expand all Loading... |
36 Expect.isFalse(identical(b, smi)); | 35 Expect.isFalse(identical(b, smi)); |
37 Expect.isFalse(identical(b, mint)); | 36 Expect.isFalse(identical(b, mint)); |
38 Expect.isFalse(identical(b, dbl)); | 37 Expect.isFalse(identical(b, dbl)); |
39 | 38 |
40 a = dbl; | 39 a = dbl; |
41 b = a + 0.0; | 40 b = a + 0.0; |
42 Expect.isTrue(identical(a, b)); | 41 Expect.isTrue(identical(a, b)); |
43 Expect.isFalse(identical(b, mint)); | 42 Expect.isFalse(identical(b, mint)); |
44 Expect.isFalse(identical(b, bigint)); | 43 Expect.isFalse(identical(b, bigint)); |
45 } | 44 } |
OLD | NEW |