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

Side by Side Diff: dart/tests/language/cascade_precedence_test.dart

Issue 10829416: Update language tests to new getter syntax. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge
Patch Set: 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file 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 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. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 5
6 class A { 6 class A {
7 int value; 7 int value;
8 A(this.value); 8 A(this.value);
9 void set(int value) { this.value = value; } 9 void set(int value) { this.value = value; }
10 int get() => value; 10 int get() => value;
11 int operator[](int index) => value + index; 11 int operator[](int index) => value + index;
12 void operator[]=(int index, int newValue) { value += -index + newValue; } 12 void operator[]=(int index, int newValue) { value += -index + newValue; }
13 void test(int expected) { 13 void test(int expected) {
14 Expect.equals(expected, value); 14 Expect.equals(expected, value);
15 } 15 }
16 Function limp(int n) { 16 Function limp(int n) {
17 if (n == 0) return set; 17 if (n == 0) return set;
18 return () => limp(n - 1); 18 return () => limp(n - 1);
19 } 19 }
20 A get self() => this; 20 A get self => this;
21 A operator+(A other) { 21 A operator+(A other) {
22 this.value += other.value; 22 this.value += other.value;
23 return this; 23 return this;
24 } 24 }
25 } 25 }
26 26
27 class Box { 27 class Box {
28 A value; 28 A value;
29 Box(this.value); 29 Box(this.value);
30 A operator[](int pos) => value; 30 A operator[](int pos) => value;
31 void operator[]=(int pos, A a) { value = a; } 31 void operator[]=(int pos, A a) { value = a; }
32 A get x() => value; 32 A get x => value;
33 void set x(A a) { value = a; } 33 void set x(A a) { value = a; }
34 } 34 }
35 35
36 // Subset of grammar being tested. 36 // Subset of grammar being tested.
37 // 37 //
38 // expression: 38 // expression:
39 // assignableExpression assignmentOperator expression 39 // assignableExpression assignmentOperator expression
40 // | conditionalExpression cascadeSection* 40 // | conditionalExpression cascadeSection*
41 // ; 41 // ;
42 // expressionWithoutCascade: 42 // expressionWithoutCascade:
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
128 // Should parse as: 128 // Should parse as:
129 // box = (box..x = (a.value == 21 ? b : c)..x.test(117)); 129 // box = (box..x = (a.value == 21 ? b : c)..x.test(117));
130 box = box..x = a.value == 21 ? b : c..x.test(117); 130 box = box..x = a.value == 21 ? b : c..x.test(117);
131 Expect.equals(originalBox, box); 131 Expect.equals(originalBox, box);
132 Expect.equals(box.value, b); 132 Expect.equals(box.value, b);
133 133
134 // New cascades are allowed inside an expressionWithoutCascade if properly 134 // New cascades are allowed inside an expressionWithoutCascade if properly
135 // delimited. 135 // delimited.
136 box..x = (a..set(42)..test(42))..x.test(42); 136 box..x = (a..set(42)..test(42))..x.test(42);
137 } 137 }
OLDNEW
« no previous file with comments | « dart/tests/language/call_through_null_getter_test.dart ('k') | dart/tests/language/compound_assignment_operator_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698