OLD | NEW |
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, 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 to test integer div by zero. | 4 // Dart test program to test integer div by zero. |
5 | 5 |
| 6 import "package:expect/expect.dart"; |
| 7 |
6 class DivByZeroTest { | 8 class DivByZeroTest { |
7 | 9 |
8 static double divBy(int a, int b) { | 10 static double divBy(int a, int b) { |
9 var result = a/b; | 11 var result = a/b; |
10 return 1.0 * result; | 12 return 1.0 * result; |
11 } | 13 } |
12 | 14 |
13 static bool moustacheDivBy(int a, int b) { | 15 static bool moustacheDivBy(int a, int b) { |
14 var val = null; | 16 var val = null; |
15 try { | 17 try { |
16 val = a~/b; | 18 val = a~/b; |
17 } catch (e) { | 19 } catch (e) { |
18 return true; | 20 return true; |
19 } | 21 } |
20 print("Should not have gotten: $val"); | 22 print("Should not have gotten: $val"); |
21 return false; | 23 return false; |
22 } | 24 } |
23 | 25 |
24 static void testMain() { | 26 static void testMain() { |
25 Expect.isTrue(divBy(0, 0).isNaN); | 27 Expect.isTrue(divBy(0, 0).isNaN); |
26 Expect.isTrue(moustacheDivBy(0, 0)); | 28 Expect.isTrue(moustacheDivBy(0, 0)); |
27 } | 29 } |
28 } | 30 } |
29 | 31 |
30 main() { | 32 main() { |
31 DivByZeroTest.testMain(); | 33 DivByZeroTest.testMain(); |
32 } | 34 } |
OLD | NEW |