// Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. // Dart test for breaks in for, do/while and while loops. import "package:expect/expect.dart"; class BreakTest { static testMain() { int i; int forCounter = 0; for (i = 0; i < 10; i++) { forCounter++; if (i > 3) break; } Expect.equals(5, forCounter); Expect.equals(4, i); i = 0; int doWhileCounter = 0; do { i++; doWhileCounter++; if (i > 3) break; } while (i < 10); Expect.equals(4, doWhileCounter); Expect.equals(4, i); i = 0; int whileCounter = 0; while (i < 10) { i++; whileCounter++; if (i > 3) break; } Expect.equals(4, whileCounter); Expect.equals(4, i); // Use a label to break to the outer loop. i = 0; L: while (i < 10) { i++; while (i > 5) { break L; } } Expect.equals(6, i); } } main() { BreakTest.testMain(); }