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

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

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

Powered by Google App Engine
This is Rietveld 408576698