blob: 1e5544857711c8a23101abe826e361a13170082a [file] [log] [blame]
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);
});
}