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

Side by Side Diff: tests/dom/native_gc_test.dart

Issue 10222026: Migrate dom tests to dart:html. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Rebase & address 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 #library('NativeGCTest'); 1 #library('NativeGCTest');
2 #import('../../lib/unittest/unittest.dart'); 2 #import('../../lib/unittest/unittest.dart');
3 #import('../../lib/unittest/dom_config.dart'); 3 #import('../../lib/unittest/html_config.dart');
4 #import('dart:dom'); 4 #import('dart:html');
5 5
6 main() { 6 main() {
7 useDomConfiguration(); 7 useHtmlConfiguration();
8 8
9 test('EventListener', () { 9 test('EventListener', () {
10 final int N = 1000000; 10 final int N = 1000000;
11 final int M = 1000; 11 final int M = 1000;
12 12
13 var div; 13 var div;
14 for (int i = 0; i < M; ++i) { 14 for (int i = 0; i < M; ++i) {
15 // This memory should be freed when the listener below is 15 // This memory should be freed when the listener below is
16 // collected. 16 // collected.
17 List l = new List(N); 17 List l = new List(N);
18 18
19 // Record the iteration number. 19 // Record the iteration number.
20 l[N - 1] = i; 20 l[N - 1] = i;
21 21
22 div = document.createElement('div'); 22 div = new Element.tag('div');
23 div.addEventListener('test', (_) { 23 div.on['test'].add((_) {
24 // Only the final iteration's listener should be invoked. 24 // Only the final iteration's listener should be invoked.
25 // Note: the reference to l keeps the entire list alive. 25 // Note: the reference to l keeps the entire list alive.
26 Expect.equals(M - 1, l[N - 1]); 26 Expect.equals(M - 1, l[N - 1]);
27 }, false); 27 }, false);
28 } 28 }
29 29
30 final event = document.createEvent('Event'); 30 final event = new Event('test');
31 event.initEvent('test', true, false); 31 div.on['test'].dispatch(event);
32 div.dispatchEvent(event);
33 }); 32 });
34 } 33 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698