anchor.diff:      WebSocket ws1;
       WebSocket ws2;
       try {
  -      ws1 = await WebSocket.connect(uri.toString());
  -      ws2 = await WebSocket.connect(uri.toString());
  +      ws1 = await WebSocket.connect(uri.toString()).timeout(_kShortTimeout);
  +      ws2 = await WebSocket.connect(uri.toString()).timeout(_kShortTimeout);
         return new VMServiceClientConnection(
           new VMServiceClient(new IOWebSocketChannel(ws1).cast()),
           new rpc.Peer(new IOWebSocketChannel(ws2).cast())..listen()
  
positive.code:   ///
    /// [logCommunicationToFile] determines whether the command communication
    /// between the test and the app should be logged to `flutter_driver_commands.log`.
    static Future<FlutterDriver> connect({ String dartVmServiceUrl,
                                           bool printCommunication: false,
                                           bool logCommunicationToFile: true }) async {
      dartVmServiceUrl ??= Platform.environment['VM_SERVICE_URL'];
  
      if (dartVmServiceUrl == null) {
  
negative.code:     final VMServiceClient client = connection.client;
      final VM vm = await client.getVM();
      _log.trace('Looking for the isolate');
      VMIsolate isolate = await vm.isolates.first.loadRunnable()
          .timeout(isolateReadyTimeout, onTimeout: () {
            throw new TimeoutException('Timeout while waiting for the isolate to become runnable');
          });
  
      // TODO(yjbanov): vm_service_client does not support "None" pause event yet.
      // It is currently reported as null, but we cannot rely on it because
  