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

Unified Diff: tests/language/call_through_getter_test.dart

Issue 2998493002: Migrate language block 45 - call_argument ... call_with. (Closed)
Patch Set: Merge branch 'master' into migrate-45 Created 3 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
« no previous file with comments | « tests/language/call_this_test.dart ('k') | tests/language/call_through_null_getter_test.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tests/language/call_through_getter_test.dart
diff --git a/tests/language/call_through_getter_test.dart b/tests/language/call_through_getter_test.dart
deleted file mode 100644
index e7eac4a4ed838ca1e168be6d883bcd87007fccb0..0000000000000000000000000000000000000000
--- a/tests/language/call_through_getter_test.dart
+++ /dev/null
@@ -1,210 +0,0 @@
-// 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";
-
-// Tests that we can call functions through getters.
-
-const TOP_LEVEL_CONST = 1;
-const TOP_LEVEL_CONST_REF = TOP_LEVEL_CONST;
-const TOP_LEVEL_NULL = null;
-
-var topLevel;
-
-class CallThroughGetterTest {
- static void testMain() {
- testTopLevel();
- testField();
- testGetter();
- testMethod();
- testEvaluationOrder();
- }
-
- static void testTopLevel() {
- topLevel = () {
- return 2;
- };
- Expect.equals(1, TOP_LEVEL_CONST);
- Expect.equals(1, TOP_LEVEL_CONST_REF);
- Expect.equals(2, topLevel());
-
- expectThrowsNoSuchMethod(() {
- TOP_LEVEL_CONST(); //# static type warning
- });
- expectThrowsNoSuchMethod(() {
- (TOP_LEVEL_CONST)(); // //# static type warning
- });
- }
-
- static void testField() {
- A a = new A();
- a.field = () => 42;
- Expect.equals(42, a.field());
- Expect.equals(42, (a.field)());
-
- a.field = () => 87;
- Expect.equals(87, a.field());
- Expect.equals(87, (a.field)());
-
- a.field = 99;
- expectThrowsNoSuchMethod(() {
- a.field();
- });
- expectThrowsNoSuchMethod(() {
- (a.field)();
- });
- }
-
- static void testGetter() {
- A a = new A();
- a.field = () => 42;
- Expect.equals(42, a.getter());
- Expect.equals(42, (a.getter)());
-
- a.field = () => 87;
- Expect.equals(87, a.getter());
- Expect.equals(87, (a.getter)());
-
- a.field = 99;
- expectThrowsNoSuchMethod(() {
- a.getter();
- });
- expectThrowsNoSuchMethod(() {
- (a.getter)();
- });
- }
-
- static void testMethod() {
- A a = new A();
- a.field = () => 42;
- Expect.equals(true, a.method() is Function);
- Expect.equals(42, a.method()());
-
- a.field = () => 87;
- Expect.equals(true, a.method() is Function);
- Expect.equals(87, a.method()());
-
- a.field = null;
- Expect.equals(null, a.method());
- }
-
- static void testEvaluationOrder() {
- B b = new B();
- Expect.equals("gf", b.g0());
- b = new B();
- Expect.equals("gf", (b.g0)());
-
- b = new B();
- Expect.equals("xgf", b.g1(b.x));
- b = new B();
- Expect.equals("gxf", (b.g1)(b.x));
-
- b = new B();
- Expect.equals("xygf", b.g2(b.x, b.y));
- b = new B();
- Expect.equals("gxyf", (b.g2)(b.x, b.y));
-
- b = new B();
- Expect.equals("xyzgf", b.g3(b.x, b.y, b.z));
- b = new B();
- Expect.equals("gxyzf", (b.g3)(b.x, b.y, b.z));
-
- b = new B();
- Expect.equals("yzxgf", b.g3(b.y, b.z, b.x));
- b = new B();
- Expect.equals("gyzxf", (b.g3)(b.y, b.z, b.x));
- }
-
- static expectThrowsNoSuchMethod(fn) {
- var exception = catchException(fn);
- if (exception is! NoSuchMethodError) {
- Expect.fail("Wrong exception. Expected: NoSuchMethodError"
- " got: ${exception}");
- }
- }
-
- static catchException(fn) {
- bool caught = false;
- var result = null;
- try {
- fn();
- Expect.equals(true, false); // Shouldn't reach this.
- } catch (e) {
- caught = true;
- result = e;
- }
- Expect.equals(true, caught);
- return result;
- }
-}
-
-class A {
- A() {}
- var field;
- get getter {
- return field;
- }
-
- method() {
- return field;
- }
-}
-
-class B {
- B() : _order = new StringBuffer("") {}
-
- get g0 {
- _mark('g');
- return () {
- return _mark('f');
- };
- }
-
- get g1 {
- _mark('g');
- return (x) {
- return _mark('f');
- };
- }
-
- get g2 {
- _mark('g');
- return (x, y) {
- return _mark('f');
- };
- }
-
- get g3 {
- _mark('g');
- return (x, y, z) {
- return _mark('f');
- };
- }
-
- get x {
- _mark('x');
- return 0;
- }
-
- get y {
- _mark('y');
- return 1;
- }
-
- get z {
- _mark('z');
- return 2;
- }
-
- _mark(m) {
- _order.write(m);
- return _order.toString();
- }
-
- StringBuffer _order;
-}
-
-main() {
- CallThroughGetterTest.testMain();
-}
« no previous file with comments | « tests/language/call_this_test.dart ('k') | tests/language/call_through_null_getter_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698