Chromium Code Reviews| Index: runtime/tests/vm/src/IsolateMirrorBusyTest.dart |
| =================================================================== |
| --- runtime/tests/vm/src/IsolateMirrorBusyTest.dart (revision 0) |
| +++ runtime/tests/vm/src/IsolateMirrorBusyTest.dart (revision 0) |
| @@ -0,0 +1,32 @@ |
| +// Copyright (c) 2012, 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 test program for checking implemention of IsolateMirror. |
| + |
| +#library('IsolateMirrorBusyTest'); |
| + |
| +#import('dart:mirrors'); |
|
siva
2012/02/18 01:25:55
Since mirrors are part of the corelib at least in
turnidge
2012/03/07 20:00:14
Has your opinion on this changed after the recent
siva
2012/03/08 22:24:02
We are treating 'dart:mirrors' as an external libr
|
| + |
| +class BusyIsolate extends Isolate { |
| + void busy() { |
| + // TODO(turnidge): Get rid of this function once we check for |
| + // interrupts on backwards branches. |
| + } |
| + void main() { |
| + while (true) { |
| + busy(); |
| + } |
| + } |
| +} |
| + |
| +void testIsolateMirror(port) { |
| + isolateMirrorOf(port).then((IsolateMirror mirror) { |
| + Expect.isTrue(mirror.debugName.contains("BusyIsolate")); |
| + }); |
| +} |
| + |
| +void main() { |
| + // Test that I can reflect on a busy isolate. |
| + new BusyIsolate().spawn().then(testIsolateMirror); |
| +} |