Home | History | Annotate | Download | only in chromedriver
      1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #ifndef CHROME_TEST_CHROMEDRIVER_CAPABILITIES_H_
      6 #define CHROME_TEST_CHROMEDRIVER_CAPABILITIES_H_
      7 
      8 #include <string>
      9 #include <vector>
     10 
     11 #include "base/command_line.h"
     12 #include "base/files/file_path.h"
     13 #include "base/memory/scoped_ptr.h"
     14 
     15 namespace base {
     16 class DictionaryValue;
     17 }
     18 
     19 class Log;
     20 class Status;
     21 
     22 struct Capabilities {
     23   Capabilities();
     24   ~Capabilities();
     25 
     26   // Return true if android package is specified.
     27   bool IsAndroid() const;
     28 
     29   Status Parse(const base::DictionaryValue& desired_caps, Log* log);
     30 
     31   // Whether the lifetime of the started Chrome browser process should be
     32   // bound to ChromeDriver's process. If true, Chrome will not quit if
     33   // ChromeDriver dies.
     34   bool detach;
     35 
     36   std::string android_package;
     37   std::string android_activity;
     38   std::string android_process;
     39   std::string android_device_serial;
     40   std::string android_args;
     41 
     42   std::string log_path;
     43   CommandLine command;
     44   scoped_ptr<base::DictionaryValue> prefs;
     45   scoped_ptr<base::DictionaryValue> local_state;
     46   std::vector<std::string> extensions;
     47   scoped_ptr<base::DictionaryValue> logging_prefs;
     48 };
     49 
     50 #endif  // CHROME_TEST_CHROMEDRIVER_CAPABILITIES_H_
     51