File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -69,7 +69,6 @@ class FlutterResidentDevtoolsHandler implements ResidentDevtoolsHandler {
6969 final ResidentRunner _residentRunner;
7070 final Logger _logger;
7171 bool _shutdown = false ;
72- bool _served = false ;
7372
7473 @visibleForTesting
7574 bool launchedInBrowser = false ;
@@ -105,7 +104,6 @@ class FlutterResidentDevtoolsHandler implements ResidentDevtoolsHandler {
105104 _devToolsLauncher.devToolsUrl = devToolsServerAddress;
106105 } else {
107106 await _devToolsLauncher.serve ();
108- _served = true ;
109107 }
110108 await _devToolsLauncher.ready;
111109 // Do not attempt to print debugger list if the connection has failed or if we're shutting down.
@@ -305,7 +303,7 @@ class FlutterResidentDevtoolsHandler implements ResidentDevtoolsHandler {
305303 @override
306304 Future <void > shutdown () async {
307305 _shutdown = true ;
308- if (_devToolsLauncher == null || ! _served ) {
306+ if (_devToolsLauncher == null ) {
309307 return ;
310308 }
311309 _readyToAnnounce = false ;
Original file line number Diff line number Diff line change @@ -1248,8 +1248,10 @@ class HotRunner extends ResidentRunner {
12481248
12491249 @override
12501250 Future <void > cleanupAfterSignal () async {
1251+ await residentDevtoolsHandler! .shutdown ();
12511252 await stopEchoingDeviceLog ();
12521253 await hotRunnerConfig! .runPreShutdownOperations ();
1254+ shutdownDartDevelopmentService ();
12531255 if (stopAppDuringCleanup) {
12541256 return exitApp ();
12551257 }
Original file line number Diff line number Diff line change @@ -54,7 +54,7 @@ class FakeDevice extends Fake implements Device {
5454 bool disposed = false ;
5555
5656 @override
57- final DartDevelopmentService dds = _FakeDartDevelopmentService ();
57+ final DartDevelopmentService dds = FakeDartDevelopmentService ();
5858
5959 @override
6060 bool isSupported () => true ;
@@ -94,9 +94,13 @@ class FakeDevice extends Fake implements Device {
9494 }
9595}
9696
97- class _FakeDartDevelopmentService extends Fake implements DartDevelopmentService {
97+ class FakeDartDevelopmentService extends Fake implements DartDevelopmentService {
98+ bool wasShutdown = false ;
99+
98100 @override
99- void shutdown () {}
101+ void shutdown () {
102+ wasShutdown = true ;
103+ }
100104}
101105
102106class FakeFlutterDevice extends Fake implements FlutterDevice {
Original file line number Diff line number Diff line change @@ -9,6 +9,7 @@ import 'package:flutter_tools/src/compile.dart';
99import 'package:flutter_tools/src/devfs.dart' ;
1010import 'package:flutter_tools/src/device.dart' ;
1111import 'package:flutter_tools/src/reporting/reporting.dart' ;
12+ import 'package:flutter_tools/src/resident_devtools_handler.dart' ;
1213import 'package:flutter_tools/src/resident_runner.dart' ;
1314import 'package:flutter_tools/src/run_hot.dart' ;
1415import 'package:flutter_tools/src/vmservice.dart' ;
@@ -56,11 +57,14 @@ void main() {
5657 target: 'main.dart' ,
5758 debuggingOptions: DebuggingOptions .disabled (BuildInfo .debug),
5859 analytics: _FakeAnalytics (),
60+ devtoolsHandler: createNoOpHandler,
5961 );
6062
6163 await runner.run ();
6264 await runner.cleanupAfterSignal ();
6365 expect (flutterDevice.wasExited, true );
66+ expect ((flutterDevice.device.dds as FakeDartDevelopmentService ).wasShutdown, true );
67+ expect ((runner.residentDevtoolsHandler! as NoOpDevtoolsHandler ).wasShutdown, true );
6468 },
6569 overrides: < Type , Generator > {
6670 FileSystem : () => fileSystem,
You can’t perform that action at this time.
0 commit comments