blob: 7812c7c6940f541e7bdd46d3ce0cf5a1246f1657 [file] [log] [blame]
// @dart = 2.9
library async_test;
import 'package:async_helper/async_minitest.dart';
import 'dart:async';
import 'dart:isolate';
import 'dart:html';
import 'async_oneshot.dart' as oneshot_test show main;
import 'async_periodictimer.dart' as periodictimer_test show main;
import 'async_cancellingisolate.dart' as cancelling_test show main;
oneshot(message) => oneshot_test.main(message.first, message.last);
periodicTimerIsolate(message) =>
periodictimer_test.main(message.first, message.last);
cancellingIsolate(message) => cancelling_test.main(message.first, message.last);
main() {
test('one shot timer in pure isolate', () {
var response = new ReceivePort();
var remote = Isolate.spawn(oneshot, [
['START'],
response.sendPort
]);
expect(remote.then((_) => response.first), completion('DONE'));
});
test('periodic timer in pure isolate', () {
var response = new ReceivePort();
var remote = Isolate.spawn(periodicTimerIsolate, [
['START'],
response.sendPort
]);
expect(remote.then((_) => response.first), completion('DONE'));
});
test('cancellation in pure isolate', () {
var response = new ReceivePort();
var remote = Isolate.spawn(cancellingIsolate, [
['START'],
response.sendPort
]);
expect(remote.then((_) => response.first), completion('DONE'));
});
}