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

Side by Side Diff: tests/language/src/GetterClosureExecutionOrderTest.dart

Issue 10248007: test rename overhaul: step 8 - language tests (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 8 years, 8 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file.
4 //
5 // Test that a getter is evaluated after the arguments, when a getter is
6 // for invoking a method. See chapter 'Method Invocation' in specification.
7
8 var counter = 0;
9
10 class Test1 {
11 get a() {
12 Expect.equals(1, counter);
13 counter++;
14 return (c) { };
15 }
16
17 b() {
18 Expect.equals(0, counter);
19 counter++;
20 return 1;
21 }
22 }
23
24 class Test2 {
25 static get a() {
26 Expect.equals(0, counter);
27 counter++;
28 return (c) { };
29 }
30
31 static b() {
32 Expect.equals(1, counter);
33 counter++;
34 return 1;
35 }
36 }
37
38 get a() {
39 Expect.equals(0, counter);
40 counter++;
41 return (c) { };
42 }
43
44 b() {
45 Expect.equals(1, counter);
46 counter++;
47 return 1;
48 }
49
50 main() {
51 var failures = [];
52 try {
53 // Check instance getters.
54 counter = 0;
55 var o = new Test1();
56 o.a(o.b());
57 Expect.equals(2, counter);
58 } catch (var exc, var stack) {
59 failures.add(exc);
60 failures.add(stack);
61 }
62 try {
63 // Check static getters.
64 counter = 0;
65 Test2.a(Test2.b());
66 Expect.equals(2, counter);
67 } catch (var exc, var stack) {
68 failures.add(exc);
69 failures.add(stack);
70 }
71 try {
72 // Check top-level getters.
73 counter = 0;
74 a(b());
75 Expect.equals(2, counter);
76 } catch (var exc, var stack) {
77 failures.add(exc);
78 failures.add(stack);
79 }
80 // If any of the tests failed print out the details and fail the test.
81 if (failures.length != 0) {
82 for (var msg in failures) {
83 print(msg.toString());
84 }
85 throw "${failures.length ~/ 2} tests failed.";
86 }
87 }
OLDNEW
« no previous file with comments | « tests/language/src/GetSetSyntaxTest.dart ('k') | tests/language/src/GetterDeclarationNegativeTest.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698