| OLD | NEW |
| 1 library dom_modify_html; | 1 library dom_modify_html; |
| 2 import 'dart:html'; | 2 import 'dart:html'; |
| 3 import 'dart:json'; | 3 import 'dart:json'; |
| 4 import 'dart:math' as Math; | 4 import 'dart:math' as Math; |
| 5 part 'Common.dart'; | 5 part 'Common.dart'; |
| 6 part 'RunnerSuite.dart'; | 6 part 'RunnerSuite.dart'; |
| 7 | 7 |
| 8 void main() { | 8 void main() { |
| 9 final int num = 400; | 9 final int num = 400; |
| 10 | 10 |
| 11 String str = 'null'; | 11 String str = 'null'; |
| 12 // Very ugly way to build up the string, but let's mimic JS version as much as
possible. | 12 // Very ugly way to build up the string, but let's mimic JS version as much as
possible. |
| 13 for (int i = 0; i < 1024; i++) { | 13 for (int i = 0; i < 1024; i++) { |
| 14 str = "$str${new String.fromCharCodes([((25 * Math.random()) + 97).toInt()])
}"; | 14 str = "$str${new String.fromCharCodes([((25 * Math.random()) + 97).toInt()])
}"; |
| 15 } | 15 } |
| 16 | 16 |
| 17 List<Node> elems = <Node>[]; | 17 List<Node> elems = <Node>[]; |
| 18 | 18 |
| 19 // Try to force real results. | 19 // Try to force real results. |
| 20 var ret; | 20 var ret; |
| 21 | 21 |
| 22 final htmlstr = document.body.innerHTML; | 22 final htmlstr = document.body.innerHtml; |
| 23 | 23 |
| 24 new Suite(window, 'dom-modify') | 24 new Suite(window, 'dom-modify') |
| 25 .test('createElement', () { | 25 .test('createElement', () { |
| 26 for (int i = 0; i < num; i++) { | 26 for (int i = 0; i < num; i++) { |
| 27 ret = new Element.tag('div'); | 27 ret = new Element.tag('div'); |
| 28 ret = new Element.tag('span'); | 28 ret = new Element.tag('span'); |
| 29 ret = new Element.tag('table'); | 29 ret = new Element.tag('table'); |
| 30 ret = new Element.tag('tr'); | 30 ret = new Element.tag('tr'); |
| 31 ret = new Element.tag('select'); | 31 ret = new Element.tag('select'); |
| 32 } | 32 } |
| 33 }) | 33 }) |
| 34 .test('createTextNode', () { | 34 .test('createTextNode', () { |
| 35 for (int i = 0; i < num; i++) { | 35 for (int i = 0; i < num; i++) { |
| 36 ret = new Text(str); | 36 ret = new Text(str); |
| 37 ret = new Text('${str}2'); | 37 ret = new Text('${str}2'); |
| 38 ret = new Text('${str}3'); | 38 ret = new Text('${str}3'); |
| 39 ret = new Text('${str}4'); | 39 ret = new Text('${str}4'); |
| 40 ret = new Text('${str}5'); | 40 ret = new Text('${str}5'); |
| 41 } | 41 } |
| 42 }) | 42 }) |
| 43 .test('innerHTML', () { | 43 .test('innerHtml', () { |
| 44 document.body.innerHTML = htmlstr; | 44 document.body.innerHtml = htmlstr; |
| 45 }) | 45 }) |
| 46 .prep(() { | 46 .prep(() { |
| 47 elems = new List<Node>(); | 47 elems = new List<Node>(); |
| 48 final telems = document.body.nodes; | 48 final telems = document.body.nodes; |
| 49 for (int i = 0; i < telems.length; i++) { | 49 for (int i = 0; i < telems.length; i++) { |
| 50 elems.add(telems[i]); | 50 elems.add(telems[i]); |
| 51 } | 51 } |
| 52 }) | 52 }) |
| 53 .test('cloneNode', () { | 53 .test('cloneNode', () { |
| 54 for (int i = 0; i < elems.length; i++) { | 54 for (int i = 0; i < elems.length; i++) { |
| 55 ret = elems[i].clone(false); | 55 ret = elems[i].clone(false); |
| 56 ret = elems[i].clone(true); | 56 ret = elems[i].clone(true); |
| 57 ret = elems[i].clone(true); | 57 ret = elems[i].clone(true); |
| 58 } | 58 } |
| 59 }) | 59 }) |
| 60 .test('appendChild', () { | 60 .test('appendChild', () { |
| 61 for (int i = 0; i < elems.length; i++) | 61 for (int i = 0; i < elems.length; i++) |
| 62 document.body.nodes.add(elems[i]); | 62 document.body.nodes.add(elems[i]); |
| 63 }) | 63 }) |
| 64 .test('insertBefore', () { | 64 .test('insertBefore', () { |
| 65 for (int i = 0; i < elems.length; i++) | 65 for (int i = 0; i < elems.length; i++) |
| 66 document.body.insertBefore(elems[i], document.body.nodes.first); | 66 document.body.insertBefore(elems[i], document.body.nodes.first); |
| 67 }) | 67 }) |
| 68 .end(); | 68 .end(); |
| 69 } | 69 } |
| OLD | NEW |