summaryrefslogtreecommitdiffstats
path: root/chromeos/dbus/shill_manager_client.h
diff options
context:
space:
mode:
authorstevenjb@chromium.org <stevenjb@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-11-02 06:27:38 +0000
committerstevenjb@chromium.org <stevenjb@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-11-02 06:27:38 +0000
commitdc2029f0fc2e26e5cb11fe783fd06e380247f4aa (patch)
tree96d84f15d4b8a42be54b80a84ea85ddf0f9fa0ca /chromeos/dbus/shill_manager_client.h
parenta3d2445a0edc5958c0c2927b7dcf486fa333531d (diff)
downloadchromium_src-dc2029f0fc2e26e5cb11fe783fd06e380247f4aa.zip
chromium_src-dc2029f0fc2e26e5cb11fe783fd06e380247f4aa.tar.gz
chromium_src-dc2029f0fc2e26e5cb11fe783fd06e380247f4aa.tar.bz2
Add TestInterface methods for adding shill stub devices and services
This will help write functional tests for network handlers written on top of the Shill client code. BUG=154072 TEST=NetworkSmsHandlerTest.SmsHandlerDbusStub passes Review URL: https://chromiumcodereview.appspot.com/11365022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@165633 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chromeos/dbus/shill_manager_client.h')
-rw-r--r--chromeos/dbus/shill_manager_client.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/chromeos/dbus/shill_manager_client.h b/chromeos/dbus/shill_manager_client.h
index 8034830..01dd63a 100644
--- a/chromeos/dbus/shill_manager_client.h
+++ b/chromeos/dbus/shill_manager_client.h
@@ -32,6 +32,23 @@ class CHROMEOS_EXPORT ShillManagerClient {
typedef ShillClientHelper::DictionaryValueCallback DictionaryValueCallback;
typedef ShillClientHelper::ErrorCallback ErrorCallback;
+ // Interface for setting up devices, services, and technologies for testing.
+ // Accessed through GetTestInterface(), only implemented in the Stub Impl.
+ class TestInterface {
+ public:
+ virtual void AddDevice(const std::string& device_path) = 0;
+ virtual void RemoveDevice(const std::string& device_path) = 0;
+ virtual void AddService(const std::string& service_path,
+ bool add_to_watch_list) = 0;
+ virtual void RemoveService(const std::string& service_path) = 0;
+ virtual void AddTechnology(const std::string& type, bool enabled) = 0;
+ virtual void RemoveTechnology(const std::string& type) = 0;
+ virtual void ClearProperties() = 0;
+
+ protected:
+ ~TestInterface() {}
+ };
+
virtual ~ShillManagerClient();
// Factory function, creates a new instance which is owned by the caller.
@@ -96,6 +113,9 @@ class CHROMEOS_EXPORT ShillManagerClient {
const ObjectPathCallback& callback,
const ErrorCallback& error_callback) = 0;
+ // Returns an interface for testing (stub only), or returns NULL.
+ virtual TestInterface* GetTestInterface() = 0;
+
protected:
// Create() should be used instead.
ShillManagerClient();