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

Unified Diff: tests/language/named_parameters_aggregated_test.dart

Issue 10800027: Fixed tests so they do indeed confirm that values on optional named parameters are not allowed. Add… (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Removed dart2js changes. Aggregated negative tests into one. Created 8 years, 4 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
Index: tests/language/named_parameters_aggregated_test.dart
diff --git a/tests/language/named_parameters_aggregated_test.dart b/tests/language/named_parameters_aggregated_test.dart
new file mode 100644
index 0000000000000000000000000000000000000000..1dd9c7bb2b579102c3cb0880fd5e2ea6a1f6058e
--- /dev/null
+++ b/tests/language/named_parameters_aggregated_test.dart
@@ -0,0 +1,58 @@
+// 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 program for testing named parameters.
+
+
+// Expect compile-time error as no default values are allowed
+// in closure type definitions.
+typedef void Callback([String msg
+ = "" /// 01: compile-time error
+ ]);
+
+class NamedParametersAggregatedTests {
+
+ static int F31(int a, [int b = 20, int c = 30]) {
+ return 100*(100*a + b) + c;
+ }
+
+ static int f_missing_comma(a
+ [b = 42] /// 02: compile-time error
+ ) => a;
+
+ var _handler = null;
+
+ // Expect compile-time error as no default values
+ // are allowed in closure type.
+ void InstallCallback(void cb([String msg
+ = null /// 03: compile-time error
+ ])) {
+ _handler = cb;
+ }
+
+ static testMain() {
+ // Expect compile-time error due to missing comma in
+ // function definition.
+ f_missing_comma(10
+ , 25 /// 02: continued
+ );
+
+ // Expect compile-time erorr due to duplicate named argument.
+ F31(10, b:25
+ , b:35 /// 04: compile-time error
+ );
+
+ // Expect compile-time error due to missing positional argument.
+ F31(b:25, c:35); /// 05: compile-time error
+
+ Callback cb1 = null;
ahe 2012/08/23 11:39:25 I discussed this with Kasper, and we don't want to
+
+ (new NamedParametersAggregatedTests()).InstallCallback(null);
+ }
+
+}
+
+
+main() {
+ NamedParametersAggregatedTests.testMain();
ahe 2012/08/23 11:39:25 This is a left-over from when we didn't have top-l
+}

Powered by Google App Engine
This is Rietveld 408576698