Future _compareDriverVersion()

in packages/web_drivers/lib/safari_driver_runner.dart [42:65]


  Future<void> _compareDriverVersion(String version) async {
    io.Process.run('/usr/bin/safaridriver', ['--version']);

    final io.ProcessResult versionResult =
        await io.Process.run('/usr/bin/safaridriver', ['--version']);

    if (versionResult.exitCode != 0) {
      throw Exception('Failed to get the safari driver version.');
    }
    // The output generally looks like: Included with Safari 13.0.5 (14608.5.12)
    final String output = versionResult.stdout as String;
    final String rest =
        output.substring(output.indexOf('Safari'));

    print('INFO: driver version in the system: $rest');

    // Version number such as 13.0.5.
    final String versionAsString = rest.trim().split(' ')[1];

    if (versionAsString != version) {
      throw Exception('System version $versionAsString did not match requested '
          'version $version');
    }
  }