anchor.diff:  const String kPath2 = '/another/bin/$kExecutable';
   
   void main() {
  -  MockProcessManager mockProcessManager;
     FakeProcessManager fakeProcessManager;
   
     setUp(() {
  -    mockProcessManager = MockProcessManager();
       fakeProcessManager = FakeProcessManager.list(<FakeCommand>[]);
     });
   
  
positive.code: import 'package:flutter_tools/src/base/os.dart';
  import 'package:flutter_tools/src/base/platform.dart';
  import 'package:flutter_tools/src/build_info.dart';
  import 'package:mockito/mockito.dart';
  import 'package:process/process.dart';
  
  import '../../src/common.dart';
  import '../../src/context.dart';
  
negative.code:     );
    });
  
    group('display an install message when unzip throws an ArgumentError', () {
      testWithoutContext('Linux', () {
        final FileSystem fileSystem = MemoryFileSystem.test();
        fakeProcessManager.addCommand(
          FakeCommand(
            command: <String>[
              'unzip', '-o', '-q', 'foo.zip', '-d', fileSystem.currentDirectory.path,
            ],
            exception: ArgumentError(),
          ),
        );
  
        final OperatingSystemUtils linuxOsUtils = OperatingSystemUtils(
          fileSystem: fileSystem,
          logger: BufferLogger.test(),
          platform: FakePlatform(operatingSystem: 'linux'),
          processManager: fakeProcessManager,
        );
  
        expect(
          () => linuxOsUtils.unzip(fileSystem.file('foo.zip'), fileSystem.currentDirectory),
          throwsToolExit(
            message: 'Missing "unzip" tool. Unable to extract foo.zip.\n'
            'Consider running "sudo apt-get install unzip".'),
        );
      });
  
      testWithoutContext('macOS', () {
        final FileSystem fileSystem = MemoryFileSystem.test();
        fakeProcessManager.addCommand(
          FakeCommand(
            command: <String>[
              'unzip', '-o', '-q', 'foo.zip', '-d', fileSystem.currentDirectory.path,
            ],
            exception: ArgumentError(),
          ),
        );
  
        final OperatingSystemUtils macOSUtils = OperatingSystemUtils(
          fileSystem: fileSystem,
          logger: BufferLogger.test(),
          platform: FakePlatform(operatingSystem: 'macos'),
          processManager: fakeProcessManager,
        );
  
        expect(
              () => macOSUtils.unzip(fileSystem.file('foo.zip'), fileSystem.currentDirectory),
          throwsToolExit
            (message: 'Missing "unzip" tool. Unable to extract foo.zip.\n'
              'Consider running "brew install unzip".'),
        );
      });
  
      testWithoutContext('unknown OS', () {
        final FileSystem fileSystem = MemoryFileSystem.test();
        fakeProcessManager.addCommand(
          FakeCommand(
            command: <String>[
              'unzip', '-o', '-q', 'foo.zip', '-d', fileSystem.currentDirectory.path,
            ],
            exception: ArgumentError(),
          ),
        );
  
        final OperatingSystemUtils unknownOsUtils = OperatingSystemUtils(
          fileSystem: fileSystem,
          logger: BufferLogger.test(),
          platform: FakePlatform(operatingSystem: 'fuchsia'),
          processManager: fakeProcessManager,
        );
  
        expect(
              () => unknownOsUtils.unzip(fileSystem.file('foo.zip'), fileSystem.currentDirectory),
          throwsToolExit
            (message: 'Missing "unzip" tool. Unable to extract foo.zip.\n'
              'Please install unzip.'),
        );
      });
    });
  
    testWithoutContext('stream compression level', () {
      expect(OperatingSystemUtils.gzipLevel1.level, equals(1));
    });
  }
  