blob: 04c39eef5ca4074b4926098cd712c6bf0973f9ed [file] [log] [blame]
// Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
// @dart = 2.9
// VMOptions=--enable-isolate-groups --experimental-enable-isolate-groups-jit
// VMOptions=--no-enable-isolate-groups
import "dart:isolate";
import "package:expect/expect.dart";
import "package:async_helper/async_helper.dart";
void main() {
asyncStart();
test(c1, c2) {
asyncStart();
Expect.notEquals(c1, c2);
var receive = new RawReceivePort();
receive.sendPort.send(c1);
receive.handler = (c3) {
Expect.equals(c3, c1);
Expect.notEquals(c3, c2);
receive.close();
asyncEnd();
};
}
Capability c1 = new Capability();
Capability c2 = new Capability();
Capability c3 = (new RawReceivePort()..close()).sendPort;
Capability c4 = (new RawReceivePort()..close()).sendPort;
test(c1, c2);
test(c3, c4);
test(c1, c3);
asyncEnd();
}