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

Side by Side Diff: tests/compiler/dart2js_native/native_class_fields_2_test.dart

Issue 2345083003: dart2js: run dartfmt on tests (Closed)
Patch Set: revert another multipart test Created 4 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
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 import "dart:_js_helper"; 5 import "dart:_js_helper";
6 import "package:expect/expect.dart"; 6 import "package:expect/expect.dart";
7 7
8 // Verify that methods are not renamed to clash with native field names 8 // Verify that methods are not renamed to clash with native field names
9 // that are known from the DOM (like x, y, z). 9 // that are known from the DOM (like x, y, z).
10 @Native("A") 10 @Native("A")
11 class A { 11 class A {
12 int x; 12 int x;
13 int y; 13 int y;
14 int z; 14 int z;
15 int gettersCalled; 15 int gettersCalled;
16 } 16 }
17 17
18
19 void setup() native r""" 18 void setup() native r"""
20 function getter() { 19 function getter() {
21 this.gettersCalled++; 20 this.gettersCalled++;
22 return 42; 21 return 42;
23 } 22 }
24 23
25 function A(){ 24 function A(){
26 var a = Object.create( 25 var a = Object.create(
27 { constructor: { name: 'A'}}, 26 { constructor: { name: 'A'}},
28 { x: { get: getter, configurable: false, writeable: false }, 27 { x: { get: getter, configurable: false, writeable: false },
29 y: { get: getter, configurable: false, writeable: false }, 28 y: { get: getter, configurable: false, writeable: false },
30 z: { get: getter, configurable: false, writeable: false } 29 z: { get: getter, configurable: false, writeable: false }
31 }); 30 });
32 a.gettersCalled = 0; 31 a.gettersCalled = 0;
33 return a; 32 return a;
34 } 33 }
35 34
36 makeA = function() { return new A; }; 35 makeA = function() { return new A; };
37 """; 36 """;
38 37
39 A makeA() native; 38 A makeA() native ;
40 39
41 class B { 40 class B {
42 void a() { } 41 void a() {}
43 void a0() { } 42 void a0() {}
44 void a1() { } 43 void a1() {}
45 void a2() { } 44 void a2() {}
46 void a3() { } 45 void a3() {}
47 void a4() { } 46 void a4() {}
48 void a5() { } 47 void a5() {}
49 void a6() { } 48 void a6() {}
50 void a7() { } 49 void a7() {}
51 void a8() { } 50 void a8() {}
52 void a9() { } 51 void a9() {}
53 void a10() { } 52 void a10() {}
54 void a11() { } 53 void a11() {}
55 void a12() { } 54 void a12() {}
56 void a13() { } 55 void a13() {}
57 void a14() { } 56 void a14() {}
58 void a15() { } 57 void a15() {}
59 void a16() { } 58 void a16() {}
60 void a17() { } 59 void a17() {}
61 void a18() { } 60 void a18() {}
62 void a19() { } 61 void a19() {}
63 void a20() { } 62 void a20() {}
64 void a21() { } 63 void a21() {}
65 void a22() { } 64 void a22() {}
66 void a23() { } 65 void a23() {}
67 void a24() { } 66 void a24() {}
68 void a25() { } 67 void a25() {}
69 void a26() { } 68 void a26() {}
70 int z = 0; 69 int z = 0;
71 } 70 }
72 71
73 int inscrutable(int x) => x == 0 ? 0 : x | inscrutable(x & (x - 1)); 72 int inscrutable(int x) => x == 0 ? 0 : x | inscrutable(x & (x - 1));
74 73
75 main() { 74 main() {
76 setup(); 75 setup();
77 var both = [makeA(), new B()]; 76 var both = [makeA(), new B()];
78 var x = both[inscrutable(0)]; 77 var x = both[inscrutable(0)];
79 // Each of these will throw, because an instance of A doesn't have any of 78 // Each of these will throw, because an instance of A doesn't have any of
80 // these functions. The important thing is that none of them have been 79 // these functions. The important thing is that none of them have been
81 // renamed to be called 'z' by the minifier, because then the getter will be 80 // renamed to be called 'z' by the minifier, because then the getter will be
82 // hit. 81 // hit.
83 try { x.a(); } catch(e) { } 82 try {
84 try { x.a0(); } catch(e) { } 83 x.a();
85 try { x.a1(); } catch(e) { } 84 } catch (e) {}
86 try { x.a2(); } catch(e) { } 85 try {
87 try { x.a3(); } catch(e) { } 86 x.a0();
88 try { x.a4(); } catch(e) { } 87 } catch (e) {}
89 try { x.a5(); } catch(e) { } 88 try {
90 try { x.a6(); } catch(e) { } 89 x.a1();
91 try { x.a7(); } catch(e) { } 90 } catch (e) {}
92 try { x.a8(); } catch(e) { } 91 try {
93 try { x.a9(); } catch(e) { } 92 x.a2();
94 try { x.a10(); } catch(e) { } 93 } catch (e) {}
95 try { x.a11(); } catch(e) { } 94 try {
96 try { x.a12(); } catch(e) { } 95 x.a3();
97 try { x.a13(); } catch(e) { } 96 } catch (e) {}
98 try { x.a14(); } catch(e) { } 97 try {
99 try { x.a15(); } catch(e) { } 98 x.a4();
100 try { x.a16(); } catch(e) { } 99 } catch (e) {}
101 try { x.a17(); } catch(e) { } 100 try {
102 try { x.a18(); } catch(e) { } 101 x.a5();
103 try { x.a19(); } catch(e) { } 102 } catch (e) {}
104 try { x.a20(); } catch(e) { } 103 try {
105 try { x.a21(); } catch(e) { } 104 x.a6();
106 try { x.a12(); } catch(e) { } 105 } catch (e) {}
107 try { x.a23(); } catch(e) { } 106 try {
108 try { x.a24(); } catch(e) { } 107 x.a7();
109 try { x.a25(); } catch(e) { } 108 } catch (e) {}
110 try { x.a26(); } catch(e) { } 109 try {
110 x.a8();
111 } catch (e) {}
112 try {
113 x.a9();
114 } catch (e) {}
115 try {
116 x.a10();
117 } catch (e) {}
118 try {
119 x.a11();
120 } catch (e) {}
121 try {
122 x.a12();
123 } catch (e) {}
124 try {
125 x.a13();
126 } catch (e) {}
127 try {
128 x.a14();
129 } catch (e) {}
130 try {
131 x.a15();
132 } catch (e) {}
133 try {
134 x.a16();
135 } catch (e) {}
136 try {
137 x.a17();
138 } catch (e) {}
139 try {
140 x.a18();
141 } catch (e) {}
142 try {
143 x.a19();
144 } catch (e) {}
145 try {
146 x.a20();
147 } catch (e) {}
148 try {
149 x.a21();
150 } catch (e) {}
151 try {
152 x.a12();
153 } catch (e) {}
154 try {
155 x.a23();
156 } catch (e) {}
157 try {
158 x.a24();
159 } catch (e) {}
160 try {
161 x.a25();
162 } catch (e) {}
163 try {
164 x.a26();
165 } catch (e) {}
111 Expect.equals(0, x.gettersCalled); 166 Expect.equals(0, x.gettersCalled);
112 Expect.equals(42, x.z); 167 Expect.equals(42, x.z);
113 Expect.equals(1, x.gettersCalled); 168 Expect.equals(1, x.gettersCalled);
114 } 169 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698