diff options
Diffstat (limited to 'chromeos')
-rw-r--r-- | chromeos/chromeos_switches.cc | 3 | ||||
-rw-r--r-- | chromeos/chromeos_switches.h | 1 | ||||
-rw-r--r-- | chromeos/dbus/gsm_sms_client.cc | 5 | ||||
-rw-r--r-- | chromeos/dbus/sms_client.cc | 6 |
4 files changed, 15 insertions, 0 deletions
diff --git a/chromeos/chromeos_switches.cc b/chromeos/chromeos_switches.cc index 2c1e3ad..2ade84b 100644 --- a/chromeos/chromeos_switches.cc +++ b/chromeos/chromeos_switches.cc @@ -10,5 +10,8 @@ namespace switches { // Forces the stub implementation of dbus clients. const char kDbusStub[] = "dbus-stub"; +// Sends test messages on first call to RequestUpdate (stub only). +const char kSmsTestMessages[] = "sms-test-messages"; + } // namespace switches } // namespace chromeos diff --git a/chromeos/chromeos_switches.h b/chromeos/chromeos_switches.h index 5b33dea..5eeb21b 100644 --- a/chromeos/chromeos_switches.h +++ b/chromeos/chromeos_switches.h @@ -22,6 +22,7 @@ namespace switches { // Please keep alphabetized. CHROMEOS_EXPORT extern const char kDbusStub[]; +CHROMEOS_EXPORT extern const char kSmsTestMessages[]; } // namespace switches } // namespace chromeos diff --git a/chromeos/dbus/gsm_sms_client.cc b/chromeos/dbus/gsm_sms_client.cc index 2836605..149d743 100644 --- a/chromeos/dbus/gsm_sms_client.cc +++ b/chromeos/dbus/gsm_sms_client.cc @@ -8,12 +8,14 @@ #include <vector> #include "base/bind.h" +#include "base/command_line.h" #include "base/memory/scoped_ptr.h" #include "base/memory/weak_ptr.h" #include "base/message_loop.h" #include "base/stringprintf.h" #include "base/stl_util.h" #include "base/values.h" +#include "chromeos/chromeos_switches.h" #include "dbus/bus.h" #include "dbus/message.h" #include "dbus/object_proxy.h" @@ -295,6 +297,9 @@ class GsmSMSClientStubImpl : public GsmSMSClient { // GsmSMSClient override. virtual void RequestUpdate(const std::string& service_name, const dbus::ObjectPath& object_path) { + if (!CommandLine::ForCurrentProcess()->HasSwitch( + chromeos::switches::kSmsTestMessages)) + return; if (test_index_ >= 0) return; test_index_ = 0; diff --git a/chromeos/dbus/sms_client.cc b/chromeos/dbus/sms_client.cc index 72df74d..ee9fe10 100644 --- a/chromeos/dbus/sms_client.cc +++ b/chromeos/dbus/sms_client.cc @@ -7,12 +7,14 @@ #include <utility> #include "base/bind.h" +#include "base/command_line.h" #include "base/memory/scoped_ptr.h" #include "base/memory/weak_ptr.h" #include "base/message_loop.h" #include "base/stringprintf.h" #include "base/stl_util.h" #include "base/values.h" +#include "chromeos/chromeos_switches.h" #include "dbus/bus.h" #include "dbus/message.h" #include "dbus/object_proxy.h" @@ -82,6 +84,10 @@ class SMSClientStubImpl : public SMSClient { virtual void GetAll(const std::string& service_name, const dbus::ObjectPath& object_path, const GetAllCallback& callback) OVERRIDE { + if (!CommandLine::ForCurrentProcess()->HasSwitch( + chromeos::switches::kSmsTestMessages)) + return; + // Ownership passed to callback base::DictionaryValue *sms = new base::DictionaryValue(); sms->SetString("Number", "000-000-0000"); |