| // 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. |
| |
| import "package:expect/expect.dart"; |
| |
| void do1() { |
| bool cond = true; |
| var result = 0; |
| var x = 0; |
| do { |
| if (x == 10) cond = false; |
| result += x; |
| x = x + 1; |
| } while (cond); |
| Expect.equals(55, result); |
| } |
| |
| void do2() { |
| var t = 0; |
| var i = 0; |
| do { |
| t = t + 10; |
| i++; |
| } while (i == 0); |
| Expect.equals(10, t); |
| } |
| |
| void do3() { |
| var i = 0; |
| do { |
| i++; |
| } while (false); |
| Expect.equals(1, i); |
| } |
| |
| void do4() { |
| var cond1 = true; |
| var result = 0; |
| var i = 0; |
| do { |
| if (i == 9) cond1 = false; |
| var cond2 = true; |
| var j = 0; |
| do { |
| if (j == 9) cond2 = false; |
| result = result + 1; |
| j = j + 1; |
| } while (cond2); |
| i = i + 1; |
| } while (cond1); |
| Expect.equals(100, result); |
| } |
| |
| void main() { |
| do1(); |
| do2(); |
| do3(); |
| do4(); |
| } |