Future _querySystemChromeVersion()

in packages/web_drivers/lib/chrome_driver_installer.dart [107:134]


  Future<int> _querySystemChromeVersion() async {
    String chromeExecutable = '';
    if (io.Platform.isLinux) {
      chromeExecutable = 'google-chrome';
    } else if (io.Platform.isMacOS) {
      chromeExecutable = await findChromeExecutableOnMac();
    } else {
      throw UnimplementedError('Web installers only work on Linux and Mac.');
    }

    final io.ProcessResult versionResult =
        await io.Process.run('$chromeExecutable', <String>['--version']);

    if (versionResult.exitCode != 0) {
      throw Exception('Failed to locate system Chrome.');
    }
    // The output looks like: Google Chrome 79.0.3945.36.
    final String output = versionResult.stdout as String;

    print('INFO: chrome version in use $output');

    // Version number such as 79.0.3945.36.
    final String versionAsString = output.split(' ')[2];

    final String versionNo = versionAsString.split('.')[0];

    return int.parse(versionNo);
  }