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

Side by Side Diff: runtime/bin/vmservice/observatory/tests/ui/inspector.dart

Issue 545343002: Add a manual test for inspecting types that have a special VM implementation. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | runtime/bin/vmservice/observatory/tests/ui/inspector.txt » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 library manual_inspector_test;
turnidge 2014/09/08 16:32:59 Do we need a copyright notice? Perhaps we should
rmacnak 2014/09/08 17:25:57 Added and likewise for the retainingPath test.
2
3 import 'dart:isolate';
4 import 'dart:mirrors';
5 import 'dart:profiler';
6 import 'dart:typed_data';
7
8 class A <T> {}
9 class B <S extends num> {}
10
11 var array;
12 var bigint;
13 var blockClean;
14 var blockCopying;
15 var blockFull;
16 var blockFullWithChain;
17 var boundedType;
18 var capability;
19 var counter;
20 var expando;
21 var float32x4;
22 var float64;
23 var float64x2;
24 var gauge;
25 var growableList;
26 var int32x4;
27 var isolate;
28 var map;
29 var mint;
30 var mirrorClass;
31 var mirrorClosure;
32 var mirrorInstance;
33 var mirrorReference;
34 var portReceive;
35 var portSend;
36 var regex;
37 var smi;
38 var stacktrace;
39 var string;
40 var stringLatin1;
41 var stringSnowflake;
42 var stringUnicode;
43 var theFalse;
44 var theNull;
45 var theTrue;
46 var type;
47 var typeParameter;
48 var typedData;
49 var uninitialized = new Object();
50 var userTag;
51 var weakProperty;
52
53 extractPrivateField(obj, name) {
54 return reflect(obj).getField(MirrorSystem.getSymbol(name, reflect(obj).type.ow ner)).reflectee;
55 }
56
57 genStacktrace() {
58 try {
59 num.parse(',');
60 } catch (e, s) {
61 return s;
62 }
63 }
64
65 genCleanBlock() {
66 block(x) => x;
67 return block;
68 }
69
70 genCopyingBlock() {
71 final x = 'I could be copied down';
72 block() => x;
73 return block;
74 }
75
76 genFullBlock() {
77 var x = 0;
78 block() => x++;
79 return block;
80 }
81
82 genFullBlockWithChain() {
83 var x = 0;
84 outer() {
85 var y = 0;
86 block() => x++ + y++;
87 return block;
88 }
89 return outer;
90 }
91
92 secondMain(msg) { }
93
94 main() {
95 print("Started main");
96
97 array = new List(1);
98 bigint = 1 << 65;
99 blockClean = genCleanBlock();
100 blockCopying = genCopyingBlock();
101 blockFull = genFullBlock();
102 blockFullWithChain = genFullBlockWithChain();
103 boundedType = extractPrivateField(reflect(new B<int>()).type.typeVariables.sin gle, '_reflectee');
104 counter = new Counter("CounterName", "Counter description");
105 expando = new Expando("expando-name");
106 expando[array] = 'The weakly associated value';
107 float32x4 = new Float32x4.zero();
108 float64 = 3.14;
109 float64x2 = new Float64x2.zero();
110 gauge = new Gauge("GuageName", "Guage description", 0.0, 100.0);
turnidge 2014/09/08 16:32:58 You have two typos on this line: Guage -> Gauge.
rmacnak 2014/09/08 17:25:57 Fixed
111 growableList = new List();
112 int32x4 = new Int32x4(0,0,0,0);
113 map = { "x":3, "y":4 };
114 mint = 1 << 32;
115 mirrorClass = reflectClass(Object);
116 mirrorClosure = reflect(blockFull);
117 mirrorInstance = reflect("a reflectee");
118 mirrorReference = extractPrivateField(mirrorClass, '_reflectee');
119 portReceive = new RawReceivePort();
120 regex = new RegExp("a*b+c");
121 smi = 7;
122 stacktrace = genStacktrace();
123 string = "Hello";
124 stringLatin1 = "blåbærgrød";
125 stringSnowflake = "❄";
126 stringUnicode = "Îñţérñåţîöñåļîžåţîờñ";
127 theFalse = false;
128 theNull = null;
129 theTrue = true;
130 type = String;
131 typeParameter = extractPrivateField(reflectClass(A).typeVariables.single, '_re flectee');
132 typedData = extractPrivateField(new ByteData(64), '_typedData');
133 userTag = new UserTag("Example tag name");
134 weakProperty = extractPrivateField(expando, '_data').firstWhere((e) => e != nu ll);
135
136 Isolate.spawn(secondMain, "Hello").then((otherIsolate) {
137 isolate = otherIsolate;
138 portSend = otherIsolate.controlPort;
139 capability = otherIsolate.terminateCapability;
140 });
141
142 print("Finished main");
143 }
OLDNEW
« no previous file with comments | « no previous file | runtime/bin/vmservice/observatory/tests/ui/inspector.txt » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698