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_CHROME_STUB_DEVTOOLS_CLIENT_H_ 6 #define CHROME_TEST_CHROMEDRIVER_CHROME_STUB_DEVTOOLS_CLIENT_H_ 7 8 #include <list> 9 #include <string> 10 11 #include "base/compiler_specific.h" 12 #include "base/memory/scoped_ptr.h" 13 #include "chrome/test/chromedriver/chrome/devtools_client.h" 14 15 namespace base { 16 class DictionaryValue; 17 } 18 19 class Status; 20 21 class StubDevToolsClient : public DevToolsClient { 22 public: 23 explicit StubDevToolsClient(const std::string& id); 24 StubDevToolsClient(); 25 virtual ~StubDevToolsClient(); 26 27 // Overridden from DevToolsClient: 28 virtual const std::string& GetId() OVERRIDE; 29 virtual bool WasCrashed() OVERRIDE; 30 virtual Status ConnectIfNecessary() OVERRIDE; 31 virtual Status SendCommand(const std::string& method, 32 const base::DictionaryValue& params) OVERRIDE; 33 virtual Status SendCommandAndGetResult( 34 const std::string& method, 35 const base::DictionaryValue& params, 36 scoped_ptr<base::DictionaryValue>* result) OVERRIDE; 37 virtual void AddListener(DevToolsEventListener* listener) OVERRIDE; 38 virtual Status HandleEventsUntil(const ConditionalFunc& conditional_func, 39 const base::TimeDelta& timeout) OVERRIDE; 40 virtual Status HandleReceivedEvents() OVERRIDE; 41 42 protected: 43 const std::string id_; 44 std::list<DevToolsEventListener*> listeners_; 45 }; 46 47 #endif // CHROME_TEST_CHROMEDRIVER_CHROME_STUB_DEVTOOLS_CLIENT_H_ 48