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

Unified Diff: tests/isolate/illegal_msg_mirror_test.dart

Issue 51393002: Raise an exception instead of crashing when attempting to pass a MirrorReference between isolates. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 2 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 side-by-side diff with in-line comments
Download patch
Index: tests/isolate/illegal_msg_mirror_test.dart
diff --git a/tests/isolate/illegal_msg_test.dart b/tests/isolate/illegal_msg_mirror_test.dart
similarity index 75%
rename from tests/isolate/illegal_msg_test.dart
rename to tests/isolate/illegal_msg_mirror_test.dart
index 422ae39a55d48705ccbd60a907810e77363a62ab..932cb23a59666325b43119f3baf3ff1ed705c5e6 100644
--- a/tests/isolate/illegal_msg_test.dart
+++ b/tests/isolate/illegal_msg_mirror_test.dart
@@ -1,13 +1,18 @@
-// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// Copyright (c) 2013, 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.
-library illegal_msg_tests;
+library illegal_msg_mirror_test;
+
import "package:expect/expect.dart";
-import 'dart:isolate';
+import "dart:isolate";
+import "dart:async" show Future;
import "package:async_helper/async_helper.dart";
+import "dart:mirrors";
-funcFoo(x) => x + 2;
+class Class {
+ method() {}
+}
echo(sendPort) {
var port = new ReceivePort();
@@ -18,6 +23,8 @@ echo(sendPort) {
}
main() {
+ var methodMirror = reflectClass(Class).methods[#method];
+
ReceivePort port = new ReceivePort();
Future spawn = Isolate.spawn(echo, port.sendPort);
var caught_exception = false;
@@ -25,7 +32,7 @@ main() {
asyncStart();
stream.first.then((snd) {
try {
- snd.send(funcFoo);
+ snd.send(methodMirror);
} catch (e) {
caught_exception = true;
}

Powered by Google App Engine
This is Rietveld 408576698