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

Side by Side Diff: samples/third_party/dromaeo/tests/dom-query-htmlfast.html

Issue 9732019: dart:html perf optimization based on runing Dromaeo benchmarks (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Respond to code review comments Created 8 years, 8 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
1 <html> 1 <html>
2 <head> 2 <head>
3 <script src="../htmlrunner.js"></script> 3 <script type="application/dart" src="dom-query-htmlfast.dart"></script>
4 <script> 4 <script src="http://dart.googlecode.com/svn/branches/bleeding_edge/dart/client/d art.js"></script>
5 window.onload = function(){
6 startTest("dom-query");
7
8 // Try to force real results
9 var ret, tmp;
10 var num = 40;
11 var html = document.body.innerHTML;
12
13 » prep(function(){
14 » » html = html.replace(/id="test(\w).*?"/g, 'id="test$1' + num + '" ');
15 » » html = html.replace(/name="test.*?"/g, 'name="test' + num + '"') ;
16 » » html = html.replace(/class="foo.*?"/g, 'class="foo test' + num + ' bar"');
17 » » var div = document.createElement("div");
18 » » div.innerHTML = html;
19 » » document.body.appendChild( div );
20 » });
21
22 » test( "getElementById", function(){
23 » » for ( var i = 0; i < num * 30; i++ ) {
24 » » » ret = document.getElementById("testA" + num).nodeType;
25 » » » ret = document.getElementById("testB" + num).nodeType;
26 » » » ret = document.getElementById("testC" + num).nodeType;
27 » » » ret = document.getElementById("testD" + num).nodeType;
28 » » » ret = document.getElementById("testE" + num).nodeType;
29 » » » ret = document.getElementById("testF" + num).nodeType;
30 » » }
31 » });
32
33 » test( "getElementById (not in document)", function(){
34 » » for ( var i = 0; i < num * 30; i++ ) {
35 » » » ret = document.getElementById("testA");
36 » » » ret = document.getElementById("testB");
37 » » » ret = document.getElementById("testC");
38 » » » ret = document.getElementById("testD");
39 » » » ret = document.getElementById("testE");
40 » » » ret = document.getElementById("testF");
41 » » }
42 » });
43
44 » test( "getElementsByTagName(div)", function(){
45 » » for ( var i = 0; i < num; i++ ) {
46 » » » var elems = document.getElementsByTagName("div");
47 » » » ret = elems[elems.length-1].nodeType;
48 » » }
49 » });
50
51 » test( "getElementsByTagName(p)", function(){
52 » » for ( var i = 0; i < num; i++ ) {
53 » » » var elems = document.getElementsByTagName("p");
54 » » » ret = elems[elems.length-1].nodeType;
55 » » }
56 » });
57
58 » test( "getElementsByTagName(a)", function(){
59 » » for ( var i = 0; i < num; i++ ) {
60 » » » var elems = document.getElementsByTagName("a");
61 » » » ret = elems[elems.length-1].nodeType;
62 » » }
63 » });
64
65 » test( "getElementsByTagName(*)", function(){
66 » » for ( var i = 0; i < num; i++ ) {
67 » » » var elems = document.getElementsByTagName("*");
68 » » » ret = elems[elems.length-1].nodeType;
69 » » }
70 » });
71
72 » test( "getElementsByTagName (not in document)", function(){
73 » » for ( var i = 0; i < num; i++ ) {
74 » » » var elems = document.getElementsByTagName("strong");
75 » » » ret = elems.length == 0;
76 » » }
77 » });
78
79 » test( "getElementsByName", function(){
80 » » for ( var i = 0; i < num * 20; i++ ) {
81 » » » var elems = document.getElementsByName("test" + num);
82 » » » ret = elems[elems.length-1].nodeType;
83 » » » var elems = document.getElementsByName("test" + num);
84 » » » ret = elems[elems.length-1].nodeType;
85 » » » var elems = document.getElementsByName("test" + num);
86 » » » ret = elems[elems.length-1].nodeType;
87 » » » var elems = document.getElementsByName("test" + num);
88 » » » ret = elems[elems.length-1].nodeType;
89 » » }
90 » });
91
92 » test( "getElementsByName (not in document)", function(){
93 » » for ( var i = 0; i < num * 20; i++ ) {
94 » » » ret = document.getElementsByName("test").length == 0;
95 » » » ret = document.getElementsByName("test").length == 0;
96 » » » ret = document.getElementsByName("test").length == 0;
97 » » » ret = document.getElementsByName("test").length == 0;
98 » » » ret = document.getElementsByName("test").length == 0;
99 » » }
100 » });
101
102 endTest();
103 };
104 </script>
105 </head> 5 </head>
106 <body> 6 <body>
107 <div class="head"> 7 <div class="head">
108 <p><a href="http://www.w3.org/"><img height=48 alt=W3C src="http://www.w3.org /Icons/w3c_home" width=72></a> 8 <p><a href="http://www.w3.org/"><img height=48 alt=W3C src="http://www.w3.org /Icons/w3c_home" width=72></a>
109 9
110 <h1 id="title">Selectors</h1> 10 <h1 id="title">Selectors</h1>
111 11
112 <h2>W3C Working Draft 15 December 2005</h2> 12 <h2>W3C Working Draft 15 December 2005</h2>
113 13
114 <dl> 14 <dl>
(...skipping 2876 matching lines...) Expand 10 before | Expand all | Expand 10 after
2991 <dt>[XMLNAMES] 2891 <dt>[XMLNAMES]
2992 <dd><a name="refsXMLNAMES"></a> Tim Bray, Dave Hollander, Andrew Layman, edito rs; "<cite>Namespaces in XML</cite>", W3C Recommendation, 14 January 1999 2892 <dd><a name="refsXMLNAMES"></a> Tim Bray, Dave Hollander, Andrew Layman, edito rs; "<cite>Namespaces in XML</cite>", W3C Recommendation, 14 January 1999
2993 <dd>(<a href="http://www.w3.org/TR/REC-xml-names/"><code>http://www.w3.org/TR/ REC-xml-names/</code></a>) 2893 <dd>(<a href="http://www.w3.org/TR/REC-xml-names/"><code>http://www.w3.org/TR/ REC-xml-names/</code></a>)
2994 2894
2995 <dt>[YACC] 2895 <dt>[YACC]
2996 <dd><a name="refsYACC"></a> S. C. Johnson; "<cite>YACC &mdash; Yet another com piler compiler</cite>", Technical Report, Murray Hill, 1975 2896 <dd><a name="refsYACC"></a> S. C. Johnson; "<cite>YACC &mdash; Yet another com piler compiler</cite>", Technical Report, Murray Hill, 1975
2997 2897
2998 </dl> 2898 </dl>
2999 </body> 2899 </body>
3000 </html> 2900 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698