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

Side by Side Diff: tests/language/src/GettersSettersTest.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, 7 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) 2012, 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 class GettersSettersTest {
6
7 static int foo;
8
9 static testMain() {
10 A a = new A();
11 a.x = 2;
12 Expect.equals(2, a.x);
13 Expect.equals(2, a.x_);
14
15 // Test inheritance.
16 a = new B();
17 a.x = 4;
18 Expect.equals(4, a.x);
19 Expect.equals(4, a.x_);
20
21 // Test overriding.
22 C c = new C();
23 c.x = 8;
24 Expect.equals(8, c.x);
25 Expect.equals(0, c.x_);
26 Expect.equals(8, c.y_);
27
28 // Test keyed getters and setters.
29 a.x_ = 0;
30 Expect.equals(2, a[2]);
31 a[2] = 4;
32 Expect.equals(6, a[0]);
33
34 // Test assignment operators.
35 a.x_ = 0;
36 a[2] += 8;
37 Expect.equals(12, a[0]);
38
39 // Test calling a function that internally uses getters.
40 Expect.equals(true, a.isXPositive());
41
42 // Test static fields.
43 foo = 42;
44 Expect.equals(42, foo);
45 A.foo = 43;
46 Expect.equals(43, A.foo);
47
48 new D().test();
49
50 OverrideField of = new OverrideField();
51 Expect.equals(27, of.getX_());
52
53 ReferenceField rf = new ReferenceField();
54 rf.x_ = 1;
55 Expect.equals(1, rf.getIt());
56 rf.setIt(2);
57 Expect.equals(2, rf.x_);
58 }
59 }
60
61 class A {
62 int x_;
63 static int foo;
64
65 static get bar() {
66 return foo;
67 }
68
69 static set bar(newValue) {
70 foo = newValue;
71 }
72
73 int get x() {
74 return x_;
75 }
76
77 void set x(int value) {
78 x_ = value;
79 }
80
81 bool isXPositive() {
82 return x > 0;
83 }
84
85 int operator [](int index) {
86 return x_ + index;
87 }
88
89 void operator []=(int index, int value) {
90 x_ = index + value;
91 }
92
93 int getX_() {
94 return x_;
95 }
96 }
97
98 class B extends A { }
99
100 class C extends A {
101 int y_;
102
103 C() : super() {
104 this.x_ = 0;
105 }
106
107 int get x() {
108 return y_;
109 }
110
111 void set x(int value) {
112 y_ = value;
113 }
114 }
115
116 class D extends A {
117 var x2_;
118
119 set x(new_x) {
120 x2_ = new_x;
121 }
122
123 test() {
124 x = 87;
125 Expect.equals(87, x2_);
126 x = 42;
127 Expect.equals(42, x2_);
128 }
129 }
130
131 class OverrideField extends A {
132 int get x_() {
133 return 27;
134 }
135 }
136
137 class ReferenceField extends A {
138 setIt(a) {
139 super.x_ = a;
140 }
141
142 int getIt() {
143 return super.x_;
144 }
145 }
146
147 main() {
148 GettersSettersTest.testMain();
149 }
OLDNEW
« no previous file with comments | « tests/language/src/GettersSetters2Test.dart ('k') | tests/language/src/GettersSettersType2Test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698