| // Copyright 2014 The Flutter Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // @dart = 2.8 |
| |
| import 'package:flutter_tools/src/base/io.dart'; |
| import 'package:flutter_tools/src/device_port_forwader.dart'; |
| import 'package:mockito/mockito.dart'; |
| |
| import '../src/common.dart'; |
| import '../src/context.dart'; |
| |
| void main() { |
| testUsingContext('dispose does not throw exception if no process is present', () { |
| final ForwardedPort forwardedPort = ForwardedPort(123, 456); |
| expect(forwardedPort.context, isNull); |
| forwardedPort.dispose(); |
| }); |
| |
| testUsingContext('dispose kills process if process was available', () { |
| final MockProcess mockProcess = MockProcess(); |
| final ForwardedPort forwardedPort = ForwardedPort.withContext(123, 456, mockProcess); |
| forwardedPort.dispose(); |
| expect(forwardedPort.context, isNotNull); |
| verify(mockProcess.kill()); |
| }); |
| } |
| |
| class MockProcess extends Mock implements Process {} |