dart-sdk/tests/web/named_parameter_for_static_test.dart
Sigmund Cherem 912005267d [web] rename suite dart2js -> web.
Change-Id: I46be49b2effec3e38a3dc44cd45cfe736f77fa78
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/182680
Commit-Queue: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Joshua Litt <joshualitt@google.com>
Reviewed-by: Nicholas Shahan <nshahan@google.com>
Reviewed-by: Stephen Adams <sra@google.com>
2021-02-04 23:11:32 +00:00

79 lines
1.5 KiB
Dart

// Copyright (c) 2012, 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";
oneOptionalArgument(a, {b}) {
Expect.equals(1, a);
Expect.equals(2, b);
}
twoOptionalArguments({a, b}) {
Expect.equals(1, a);
Expect.equals(2, b);
}
main() {
twoOptionalArguments(a: 1, b: 2);
twoOptionalArguments(b: 2, a: 1);
oneOptionalArgument(1, b: 2);
new A.twoOptionalArguments(a: 1, b: 2);
new A.twoOptionalArguments(b: 2, a: 1);
new A.oneOptionalArgument(1, b: 2);
new B.one();
new B.two();
new B.three();
new B().B_one();
new B().B_two();
new B().B_three();
}
class A {
A.oneOptionalArgument(a, {b}) {
Expect.equals(1, a);
Expect.equals(2, b);
}
A.twoOptionalArguments({a, b}) {
Expect.equals(1, a);
Expect.equals(2, b);
}
A();
// A named constructor now conflicts with a method of the same name.
oneOptArg(a, {b}) {
Expect.equals(1, a);
Expect.equals(2, b);
}
twoOptArgs({a, b}) {
Expect.equals(1, a);
Expect.equals(2, b);
}
}
class B extends A {
B.one() : super.twoOptionalArguments(a: 1, b: 2);
B.two() : super.twoOptionalArguments(b: 2, a: 1);
B.three() : super.oneOptionalArgument(1, b: 2);
B();
B_one() {
super.twoOptArgs(a: 1, b: 2);
}
B_two() {
super.twoOptArgs(b: 2, a: 1);
}
B_three() {
super.oneOptArg(1, b: 2);
}
}