Index: lib/src/runner/vm/isolate_test.dart |
diff --git a/lib/src/runner/vm/isolate_test.dart b/lib/src/runner/vm/isolate_test.dart |
index ecdf7eb0c6b026c744f7cf2c8c56338c5593f302..e4bc535be3eb63bfc7f4e5c4d9fcab4a6671ed0a 100644 |
--- a/lib/src/runner/vm/isolate_test.dart |
+++ b/lib/src/runner/vm/isolate_test.dart |
@@ -10,14 +10,16 @@ import 'dart:isolate'; |
import '../../backend/live_test.dart'; |
import '../../backend/live_test_controller.dart'; |
import '../../backend/metadata.dart'; |
+import '../../backend/operating_system.dart'; |
import '../../backend/state.dart'; |
import '../../backend/suite.dart'; |
import '../../backend/test.dart'; |
+import '../../backend/test_platform.dart'; |
import '../../util/remote_exception.dart'; |
import '../../utils.dart'; |
/// A test in another isolate. |
-class IsolateTest implements Test { |
+class IsolateTest extends Test { |
final String name; |
final Metadata metadata; |
@@ -26,7 +28,6 @@ class IsolateTest implements Test { |
IsolateTest(this.name, this.metadata, this._sendPort); |
- /// Loads a single runnable instance of this test. |
LiveTest load(Suite suite) { |
var controller; |
@@ -85,10 +86,9 @@ class IsolateTest implements Test { |
return controller.liveTest; |
} |
- Test change({String name, Metadata metadata}) { |
- if (name == name && metadata == this.metadata) return this; |
- if (name == null) name = this.name; |
- if (metadata == null) metadata = this.metadata; |
- return new IsolateTest(name, metadata, _sendPort); |
+ Test forPlatform(TestPlatform platform, {OperatingSystem os}) { |
+ if (!metadata.testOn.evaluate(platform, os: os)) return null; |
+ return new IsolateTest( |
+ name, metadata.forPlatform(platform, os: os), _sendPort); |
} |
} |