Don't pause on tool tests (#35657)
diff --git a/packages/flutter_tools/lib/src/test/coverage_collector.dart b/packages/flutter_tools/lib/src/test/coverage_collector.dart
index 424dcfc..09c4c40 100644
--- a/packages/flutter_tools/lib/src/test/coverage_collector.dart
+++ b/packages/flutter_tools/lib/src/test/coverage_collector.dart
@@ -47,7 +47,7 @@
/// has been run to completion so that all coverage data has been recorded.
///
/// The returned [Future] completes when the coverage is collected.
- Future<void> collectCoverageIsolate(Uri observatoryUri, String debugName) async {
+ Future<void> collectCoverageIsolate(Uri observatoryUri) async {
assert(observatoryUri != null);
print('collecting coverage data from $observatoryUri...');
final Map<String, dynamic> data = await collect(observatoryUri, (String libraryName) {
@@ -56,7 +56,7 @@
return (coverageDirectory != null)
|| (flutterProject == null)
|| libraryName.contains(flutterProject.manifest.appName);
- }, waitPaused: true, debugName: debugName);
+ });
if (data == null) {
throw Exception('Failed to collect coverage.');
}
@@ -196,28 +196,6 @@
}) async {
final VMService vmService = await connector(serviceUri);
await vmService.getVM();
- if (!waitPaused) {
- return _getAllCoverage(vmService, libraryPredicate);
- }
- final Isolate isolate = vmService.vm.isolates.firstWhere((Isolate isolate) => isolate.name == debugName);
- const int kPollAttempts = 20;
- int i = 0;
- while (i < kPollAttempts) {
- await isolate.load();
- if (isolate.pauseEvent?.kind == ServiceEvent.kPauseStart) {
- break;
- }
- await Future<void>.delayed(const Duration(milliseconds: 50));
- i += 1;
- }
- if (i == kPollAttempts) {
- print('Isolate $debugName was never paused, refusing to collect coverage');
- return const <String, dynamic>{
- 'type': 'CodeCoverage',
- 'coverage': <Object>[]
- };
- }
- print('isolate is paused, collecting coverage...');
return _getAllCoverage(vmService, libraryPredicate);
}
diff --git a/packages/flutter_tools/tool/tool_coverage.dart b/packages/flutter_tools/tool/tool_coverage.dart
index 3ead798..53a2a6e 100644
--- a/packages/flutter_tools/tool/tool_coverage.dart
+++ b/packages/flutter_tools/tool/tool_coverage.dart
@@ -77,10 +77,8 @@
final dynamic channel = IsolateChannel<Object>.connectReceive(receivePort)
.transformStream(StreamTransformer<Object, Object>.fromHandlers(handleDone: (EventSink<Object> sink) async {
try {
- // Pause the isolate so it is ready for coverage collection.
- isolate.pause();
// this will throw if collection fails.
- await coverageCollector.collectCoverageIsolate(info.serverUri, path);
+ await coverageCollector.collectCoverageIsolate(info.serverUri);
} finally {
isolate.kill(priority: Isolate.immediate);
isolate = null;
@@ -117,14 +115,13 @@
return await Isolate.spawnUri(p.toUri(testPath), <String>[], message,
packageConfig: p.toUri('.packages'),
checked: true,
- debugName: path,
);
}
@override
Future<void> close() async {
try {
- await Future.wait(_pending.values).timeout(const Duration(seconds: 10));
+ await Future.wait(_pending.values).timeout(const Duration(minutes: 1));
} on TimeoutException {
// TODO(jonahwilliams): resolve whether there are any specific tests that
// get stuck or if it is a general infra issue with how we are collecting