Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4)

Unified Diff: tests/language/nested_switch_label_test.dart

Issue 14969004: Implement continue for switch. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Comment updated. Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « tests/language/language_dart2js.status ('k') | tests/language/switch_label2_test.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tests/language/nested_switch_label_test.dart
diff --git a/tests/language/nested_switch_label_test.dart b/tests/language/nested_switch_label_test.dart
new file mode 100644
index 0000000000000000000000000000000000000000..420ed6a3407dfd1ec77621de6cfa13912ef235f6
--- /dev/null
+++ b/tests/language/nested_switch_label_test.dart
@@ -0,0 +1,42 @@
+// Copyright (c) 2013, 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.
+
+// Test nested switch statement using labels.
+
+library nested_switch_label;
+
+import "package:expect/expect.dart";
+
+void main() {
+ doSwitch(0, ['0', '2:0', '1', 'default']);
+ doSwitch(2, ['2:2', '2:1', '2', '1', 'default']);
+}
+
+void doSwitch(int target, List expect) {
+ List list = [];
+ switch (target) {
+ outer0: case 0:
+ list.add('0');
+ continue outer2;
+ outer1: case 1:
+ list.add('1');
+ continue outerDefault;
+ outer2: case 2:
+ switch (target) {
+ inner0: case 0:
+ list.add('2:0');
+ continue outer1;
+ inner2: case 2:
+ list.add('2:2');
+ continue inner1;
+ inner1: case 1:
+ list.add('2:1');
+ }
+ list.add('2');
+ continue outer1;
+ outerDefault: default:
+ list.add('default');
+ }
+ Expect.listEquals(expect, list);
+}
« no previous file with comments | « tests/language/language_dart2js.status ('k') | tests/language/switch_label2_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698