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

Side by Side Diff: tests/compiler/dart2js_native/field_type_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 // A native class has no defined constructor. 5 // A native class has no defined constructor.
6 // This regression test verifies that compiler accounts for hidden constructor 6 // This regression test verifies that compiler accounts for hidden constructor
7 // when analysing field values. 7 // when analysing field values.
8 8
9 import "dart:_js_helper"; 9 import "dart:_js_helper";
10 import "package:expect/expect.dart"; 10 import "package:expect/expect.dart";
11 11
12 @Native("Node") 12 @Native("Node")
13 class Node { 13 class Node {
14
15 final Node parentNode; 14 final Node parentNode;
16 15
17 ModelSource _modelSource; // If null, inherited from parent. 16 ModelSource _modelSource; // If null, inherited from parent.
18 17
19 ModelSource get modelSource { 18 ModelSource get modelSource {
20 for (Node node = this; node != null; node = node.parentNode) { 19 for (Node node = this; node != null; node = node.parentNode) {
21 ModelSource source = node._modelSource; 20 ModelSource source = node._modelSource;
22 if (source != null) return source; 21 if (source != null) return source;
23 } 22 }
24 return null; 23 return null;
25 } 24 }
26 25
27 // Copy of above code renamed with suffix '2'. 26 // Copy of above code renamed with suffix '2'.
28 27
29 ModelSource _modelSource2; // If null, inherited from parent. 28 ModelSource _modelSource2; // If null, inherited from parent.
30 29
31 ModelSource get modelSource2 { 30 ModelSource get modelSource2 {
32 for (Node node = this; node != null; node = node.parentNode) { 31 for (Node node = this; node != null; node = node.parentNode) {
33 ModelSource source = node._modelSource2; 32 ModelSource source = node._modelSource2;
34 if (source != null) return source; 33 if (source != null) return source;
35 } 34 }
36 return null; 35 return null;
37 } 36 }
38 } 37 }
39 38
40 makeNode(parent) native; 39 makeNode(parent) native ;
41 40
42 class ModelSource { 41 class ModelSource {
43 var name; 42 var name;
44 ModelSource(this.name); 43 ModelSource(this.name);
45 toString() => 'ModelSource($name)'; 44 toString() => 'ModelSource($name)';
46 } 45 }
47 46
48 void setup() native """ 47 void setup() native """
49 // This code is all inside 'setup' and so not accesible from the global scope. 48 // This code is all inside 'setup' and so not accesible from the global scope.
50 function Node(parent){ this.parentNode = parent; } 49 function Node(parent){ this.parentNode = parent; }
51 makeNode = function(p){return new Node(p);}; 50 makeNode = function(p){return new Node(p);};
52 """; 51 """;
53 52
54
55 main() { 53 main() {
56 setup(); 54 setup();
57 55
58 var n1 = makeNode(null); 56 var n1 = makeNode(null);
59 var n2 = makeNode(n1); 57 var n2 = makeNode(n1);
60 var n3 = makeNode(n2); 58 var n3 = makeNode(n2);
61 59
62 var m1 = new ModelSource('1'); 60 var m1 = new ModelSource('1');
63 n2._modelSource = null; // null write. 61 n2._modelSource = null; // null write.
64 n2._modelSource = m1; // Non-null write. 62 n2._modelSource = m1; // Non-null write.
65 var x1 = n3.modelSource; 63 var x1 = n3.modelSource;
66 Expect.identical(m1, x1); 64 Expect.identical(m1, x1);
67 65
68 var m2 = new ModelSource('2'); 66 var m2 = new ModelSource('2');
69 n2._modelSource2 = m2; // The only write is non-null. 67 n2._modelSource2 = m2; // The only write is non-null.
70 var x2 = n3.modelSource2; 68 var x2 = n3.modelSource2;
71 Expect.identical(m2, x2); 69 Expect.identical(m2, x2);
72 } 70 }
OLDNEW
« no previous file with comments | « tests/compiler/dart2js_native/field_type2_test.dart ('k') | tests/compiler/dart2js_native/fixup_get_tag_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698