| Index: samples/third_party/dromaeo/tests/dom-modify-htmlfast.dart
|
| diff --git a/samples/third_party/dromaeo/tests/dom-modify-htmlfast.dart b/samples/third_party/dromaeo/tests/dom-modify-htmlfast.dart
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..a6a48b33313c9038773729500257aa7e5df4f76d
|
| --- /dev/null
|
| +++ b/samples/third_party/dromaeo/tests/dom-modify-htmlfast.dart
|
| @@ -0,0 +1,68 @@
|
| +#library("dom_modify_html");
|
| +#import("dart:html");
|
| +#import("dart:json");
|
| +#source("Common.dart");
|
| +#source("RunnerSuite.dart");
|
| +
|
| +void main() {
|
| + final int num = 400;
|
| +
|
| + String str = 'null';
|
| + // Very ugly way to build up the string, but let's mimic JS version as much as possible.
|
| + for (int i = 0; i < 1024; i++) {
|
| + str += new String.fromCharCodes([((25 * Math.random()) + 97).toInt()]);
|
| + }
|
| +
|
| + List<Node> elems = <Node>[];
|
| +
|
| + // Try to force real results.
|
| + var ret;
|
| +
|
| + final htmlstr = document.body.innerHTML;
|
| +
|
| + new Suite(window, 'dom-modify')
|
| + .test('createElement', () {
|
| + for (int i = 0; i < num; i++) {
|
| + ret = new Element.tag('div');
|
| + ret = new Element.tag('span');
|
| + ret = new Element.tag('table');
|
| + ret = new Element.tag('tr');
|
| + ret = new Element.tag('select');
|
| + }
|
| + })
|
| + .test('createTextNode', () {
|
| + for (int i = 0; i < num; i++) {
|
| + ret = new Text(str);
|
| + ret = new Text('${str}2');
|
| + ret = new Text('${str}3');
|
| + ret = new Text('${str}4');
|
| + ret = new Text('${str}5');
|
| + }
|
| + })
|
| + .test('innerHTML', () {
|
| + document.body.innerHTML = htmlstr;
|
| + })
|
| + .prep(() {
|
| + elems = new List<Node>();
|
| + final telems = document.body.nodes;
|
| + for (int i = 0; i < telems.length; i++) {
|
| + elems.add(telems[i]);
|
| + }
|
| + })
|
| + .test('cloneNode', () {
|
| + for (int i = 0; i < elems.length; i++) {
|
| + ret = elems[i].clone(false);
|
| + ret = elems[i].clone(true);
|
| + ret = elems[i].clone(true);
|
| + }
|
| + })
|
| + .test('appendChild', () {
|
| + for (int i = 0; i < elems.length; i++)
|
| + document.body.$dom_appendChild(elems[i]);
|
| + })
|
| + .test('insertBefore', () {
|
| + for (int i = 0; i < elems.length; i++)
|
| + document.body.insertBefore(elems[i], document.body.$dom_firstChild);
|
| + })
|
| + .end();
|
| +}
|
|
|