Chromium Code Reviews| Index: tests/kernel/unsorted/breakable_statement_test.dart |
| diff --git a/tests/kernel/unsorted/breakable_statement_test.dart b/tests/kernel/unsorted/breakable_statement_test.dart |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..28870eba528de29df31da030cd1feafb3a82912e |
| --- /dev/null |
| +++ b/tests/kernel/unsorted/breakable_statement_test.dart |
| @@ -0,0 +1,77 @@ |
| +import 'expect.dart'; |
|
Kevin Millikin (Google)
2016/10/21 09:10:57
Copyright header.
Vyacheslav Egorov (Google)
2016/10/21 13:39:43
Done.
|
| + |
| +testFor() { |
| + int current; |
| + for (int i = 0; i < 100; i++) { |
| + current = i; |
| + if (i > 41) break; |
| + } |
| + Expect.isTrue(current == 42); |
| +} |
| + |
| +testWhile() { |
| + int i = 0; |
| + while (i < 100) { |
| + if (++i > 41) break; |
| + } |
| + Expect.isTrue(i == 42); |
| +} |
| + |
| +testDoWhile() { |
| + int i = 0; |
| + do { |
| + if (++i > 41) break; |
| + } while (i < 100); |
| + Expect.isTrue(i == 42); |
| +} |
| + |
| +testLabledBreakOutermost() { |
| + int i = 0; |
| + outer: { |
| + middle: { |
| + while (i < 100) { |
| + if (++i > 41) break outer; |
| + } |
| + i++; |
| + } |
| + i++; |
| + } |
| + Expect.isTrue(i == 42); |
| +} |
| + |
| +testLabledBreakMiddle() { |
| + int i = 0; |
| + outer: { |
| + middle: { |
| + while (i < 100) { |
| + if (++i > 41) break middle; |
| + } |
| + i++; |
| + } |
| + i++; |
| + } |
| + Expect.isTrue(i == 43); |
| +} |
| + |
| +testLabledBreakInner() { |
| + int i = 0; |
| + outer: { |
| + middle: { |
| + while (i < 100) { |
| + if (++i > 41) break; |
| + } |
| + i++; |
| + } |
| + i++; |
| + } |
| + Expect.isTrue(i == 44); |
| +} |
| + |
| +main() { |
| + testFor(); |
| + testWhile(); |
| + testDoWhile(); |
| + testLabledBreakOutermost(); |
| + testLabledBreakMiddle(); |
| + testLabledBreakInner(); |
| +} |