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

Unified Diff: tests/language/tearoff_basic_test.dart

Issue 2608363002: Remove tests for generalized tear-offs. (Closed)
Patch Set: Created 3 years, 12 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/tearoff_basic_lib.dart ('k') | tests/language/tearoff_constructor_basic_test.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tests/language/tearoff_basic_test.dart
diff --git a/tests/language/tearoff_basic_test.dart b/tests/language/tearoff_basic_test.dart
deleted file mode 100644
index 303d38efc34bd8d06a90c88c20d0a631012c42a5..0000000000000000000000000000000000000000
--- a/tests/language/tearoff_basic_test.dart
+++ /dev/null
@@ -1,166 +0,0 @@
-// Copyright (c) 2015, 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.
-
-// Basic test for tear-off closures.
-
-import "package:expect/expect.dart";
-import "tearoff_basic_lib.dart" as P;
-import "tearoff_basic_lib.dart" deferred as D;
-
-class C {
- var v = 99;
- final fv = 444;
-
- operator + (a) { return v + a; }
- get sugus => "sugus";
- set frosch(a) { v = "ribbit $a"; }
- foo() => "kuh";
-
- static var st;
- static final stfin = 1000;
- static stfoo([p1 = 100]) => p1 * 10;
- static get stg => "stg";
- static set sts(x) { st = x; }
-}
-
-
-testStatic() {
- // Closurize static variable.
- var a = C#st=;
- a(100);
- Expect.equals(100, C.st);
- var b = C#st;
- Expect.equals(100, b());
-
- // Closurize static final variable.
- a = C#stfin;
- Expect.equals(1000, a());
- Expect.throws(() => C#stfin= ); // Final variable has no setter.
-
- // Closurize static method.
- a = C#stfoo;
- Expect.equals(1000, a());
- Expect.equals(90, a(9));
-
- // Closurize static getter.
- a = C#stg;
- Expect.equals("stg", a());
-
- // Closurize static setter.
- Expect.throws(() => C#sts); // No setter/method named sts exists.
- a = C#sts=;
- a("pflug");
- Expect.equals("pflug", C.st);
-
- // Can't closurize instance method via class literal.
- Expect.throws(() => C#foo);
-
- // Extracted closures must be equal.
- Expect.isTrue(C#st == C#st);
- Expect.isTrue(C#st= == C#st=);
- Expect.isTrue(C#stfin == C#stfin);
- Expect.isTrue(C#stfoo == C#stfoo);
- Expect.isTrue(C#stg == C#stg);
- Expect.isTrue(C#sts= == C#sts=);
-}
-
-testInstance() {
- var o = new C();
- var p = new C();
- var a, b;
-
- // Closurize instance variable.
- a = o#v;
- Expect.equals(99, a());
- b = p#v=;
- b(999);
- Expect.equals(999, p.v);
- Expect.equals(99, a());
-
- // Closurize final instance variable.
- Expect.throws(() => o#fv=); // Final variable has not setter.
- a = o#fv;
- Expect.equals(444, a());
-
- // Closurize instance method.
- a = o#foo;
- Expect.equals("kuh", a());
-
- // Closurize operator.
- a = o#+;
- Expect.equals(100, o + 1);
- Expect.equals(100, a(1));
-
- // Closurize instance getter.
- a = o#sugus;
- Expect.equals("sugus", a());
- Expect.throws(() => o#sugus=);
-
- // Closurize instance setter.
- a = o#frosch=;
- a("!");
- Expect.equals("ribbit !", o.v);
- Expect.throws(() => o#frosch);
-
- // Extracted closures must be equal.
- Expect.isTrue(o#v == o#v);
- Expect.isTrue(o#v= == o#v=);
- Expect.isTrue(o#fv == o#fv);
- Expect.isTrue(o#foo == o#foo);
- Expect.isTrue(o#+ == o#+);
- Expect.isTrue(o#sugus == o#sugus);
- Expect.isTrue(o#frosch= == o#frosch=);
-}
-
-testPrefix() {
- // Closurize top-level variable.
- var a = P#cvar;
- Expect.equals(6, a());
- var b = P#cvar=;
- b(7);
- Expect.equals(7, a());
-
- // Closurize final top-level variable.
- a = P#cfinvar;
- Expect.equals("set in stone", a());
- Expect.throws(() => P#cfinvar=);
-
- // Closurize top-level function.
- a = P#cfunc;
- Expect.equals("cfunc", a());
-
- // Closurize top-level getter.
- a = P#cget;
- Expect.equals("cget", a());
-
- // Closurize top-level getter.
- a = P#cset=;
- a(99);
- Expect.equals(99, P.cvar);
-
- Expect.throws(() => P#ZZ); // Cannot closurize class.
-
- // Extracted closures must be equal.
- Expect.isTrue(P#cvar == P#cvar);
- Expect.isTrue(P#cvar= == P#cvar=);
- Expect.isTrue(P#cfinvar == P#cfinvar);
- Expect.isTrue(P#cfunc == P#cfunc);
- Expect.isTrue(P#cget == P#cget);
- Expect.isTrue(P#cset= == P#cset=);
-}
-
-testDeferred() {
- Expect.throws(() => D#cfunc);
- D.loadLibrary().then((_) {
- var a = D#cfunc;
- Expect.equals("cfunc", a());
- });
-}
-
-main() {
- testStatic();
- testInstance();
- testPrefix();
- testDeferred();
-}
« no previous file with comments | « tests/language/tearoff_basic_lib.dart ('k') | tests/language/tearoff_constructor_basic_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698