Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3767)

Unified Diff: chrome/browser/local_discovery/wifi/mock_wifi_manager.cc

Issue 288043004: Bootstrapping device lister plus tests (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@wifi_lib1
Patch Set: Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/local_discovery/wifi/mock_wifi_manager.cc
diff --git a/chrome/browser/local_discovery/wifi/mock_wifi_manager.cc b/chrome/browser/local_discovery/wifi/mock_wifi_manager.cc
new file mode 100644
index 0000000000000000000000000000000000000000..d938b1896cd90ead820490da100f4d245def83cb
--- /dev/null
+++ b/chrome/browser/local_discovery/wifi/mock_wifi_manager.cc
@@ -0,0 +1,125 @@
+// Copyright 2014 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "chrome/browser/local_discovery/wifi/mock_wifi_manager.h"
+
+namespace local_discovery {
+
+namespace wifi {
+
+class MockWifiManager::MockNetworkWatcher : public NetworkListWatcher {
+ public:
+ MockNetworkWatcher(const WifiManager::SSIDListCallback& callback,
+ base::WeakPtr<MockWifiManager> wifi_manager)
+ : callback_(callback), wifi_manager_(wifi_manager), started_(false) {}
+
+ virtual ~MockNetworkWatcher() {
+ if (wifi_manager_ && started_) {
+ wifi_manager_->RemoveWatcher(this);
+ }
+ }
+
+ virtual void Start() OVERRIDE {
+ wifi_manager_->AddWatcher(this);
+ started_ = true;
+ }
+
+ void RunCallback(const std::vector<NetworkProperties>& ssids) {
+ callback_.Run(ssids);
+ }
+
+ private:
+ WifiManager::SSIDListCallback callback_;
+ base::WeakPtr<MockWifiManager> wifi_manager_;
+ bool started_;
+};
+
+MockWifiManager::MockWifiManager() : weak_factory_(this) {
+}
+
+MockWifiManager::~MockWifiManager() {
+}
+
+void MockWifiManager::GetSSIDList(const SSIDListCallback& callback) {
+ ssid_list_callback_ = callback;
+ GetSSIDListInternal();
+}
+
+void MockWifiManager::CallSSIDListCallback(
+ const std::vector<NetworkProperties>& networks) {
+ ssid_list_callback_.Run(networks);
+}
+
+void MockWifiManager::ConfigureAndConnectNetwork(
+ const std::string& ssid,
+ const WifiCredentials& credentials,
+ const SuccessCallback& callback) {
+ configure_and_connect_network_callback_ = callback;
+ ConfigureAndConnectNetworkInternal(ssid, credentials.psk);
+}
+
+void MockWifiManager::CallConfigureAndConnectNetworkCallback(bool success) {
+ configure_and_connect_network_callback_.Run(success);
+}
+
+void MockWifiManager::ConnectToNetworkByID(const std::string& internal_id,
+ const SuccessCallback& callback) {
+ connect_by_id_callback_ = callback;
+ ConnectToNetworkByIDInternal(internal_id);
+}
+
+void MockWifiManager::CallConnectToNetworkByIDCallback(bool success) {
+ connect_by_id_callback_.Run(success);
+}
+
+void MockWifiManager::RequestNetworkCredentials(
+ const std::string& internal_id,
+ const CredentialsCallback& callback) {
+ credentials_callback_ = callback;
+ RequestNetworkCredentialsInternal(internal_id);
+}
+
+void MockWifiManager::CallRequestNetworkCredentialsCallback(
+ bool success,
+ const std::string& ssid,
+ const std::string& password) {
+ credentials_callback_.Run(success, ssid, password);
+}
+
+scoped_ptr<NetworkListWatcher> MockWifiManager::CreateNetworkListWatcher(
+ const SSIDListCallback& callback) {
+ return scoped_ptr<NetworkListWatcher>(
+ new MockNetworkWatcher(callback, weak_factory_.GetWeakPtr()));
+}
+
+void MockWifiManager::CallNetworkWatchers(
+ const std::vector<NetworkProperties>& ssids) {
+ FOR_EACH_OBSERVER(MockNetworkWatcher, network_observers_, RunCallback(ssids));
+}
+
+void MockWifiManager::AddWatcher(MockNetworkWatcher* observer) {
+ network_observers_.AddObserver(observer);
+}
+
+void MockWifiManager::RemoveWatcher(MockNetworkWatcher* observer) {
+ network_observers_.RemoveObserver(observer);
+}
+
+MockWifiManagerFactory::MockWifiManagerFactory() {
+ WifiManager::SetFactory(this);
+}
+
+MockWifiManagerFactory::~MockWifiManagerFactory() {
+ WifiManager::SetFactory(NULL);
+}
+
+scoped_ptr<WifiManager> MockWifiManagerFactory::CreateWifiManager() {
+ last_created_manager_ = new MockWifiManager();
+
+ return scoped_ptr<WifiManager>(last_created_manager_);
+}
+
+} // namespace wifi
+
+} // namespace local_discovery

Powered by Google App Engine
This is Rietveld 408576698