Files
sdk/tests/html/async_window_test.dart
T
2013-01-31 00:20:49 +00:00

31 lines
862 B
Dart

library AsyncWindowTest;
import '../../pkg/unittest/lib/unittest.dart';
import '../../pkg/unittest/lib/html_config.dart';
import 'dart:html';
main() {
useHtmlConfiguration();
test('Window.setTimeout', () {
window.setTimeout(expectAsync0((){}), 10);
});
test('Window.setInterval', () {
int counter = 0;
int id = null;
id = window.setInterval(expectAsyncUntil0(
() {
if (counter == 3) {
counter = 1024;
window.clearInterval(id);
// Wait some more time to be sure callback won't be invoked any more.
window.setTimeout(expectAsync0((){}), 50);
return;
}
// As callback should have been cleared on 4th invocation, counter
// should never be greater than 3.
assert(counter < 3);
counter++;
},
() => counter == 3), 10);
});
}