summaryrefslogtreecommitdiffstats
path: root/dbus/mock_unittest.cc
diff options
context:
space:
mode:
authorkeybuk@chromium.org <keybuk@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-02-14 20:08:06 +0000
committerkeybuk@chromium.org <keybuk@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-02-14 20:08:06 +0000
commitbc1b18ecfc890dde4aae0a5a5db27dde2796b25e (patch)
tree8e37e62d98047d218bf8fdeff2f10361fbaab961 /dbus/mock_unittest.cc
parentce1402accb9a01358fc1235f1319d934cd611248 (diff)
downloadchromium_src-bc1b18ecfc890dde4aae0a5a5db27dde2796b25e.zip
chromium_src-bc1b18ecfc890dde4aae0a5a5db27dde2796b25e.tar.gz
chromium_src-bc1b18ecfc890dde4aae0a5a5db27dde2796b25e.tar.bz2
dbus: add ObjectPath type
Rather than use std::string for object paths, add a dbus::ObjectPath type that wraps one while allowing more type-safety. This solves all sorts of issues with confusing object paths for strings, and allows us to do Properties code using templates disambiguating them from strings. BUG=chromium:109194 TEST=built and run tests Change-Id: Icaf6f19daea4af23a9d2ec0ed76d2cbd379d680e Review URL: http://codereview.chromium.org/9378039 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@121920 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'dbus/mock_unittest.cc')
-rw-r--r--dbus/mock_unittest.cc19
1 files changed, 11 insertions, 8 deletions
diff --git a/dbus/mock_unittest.cc b/dbus/mock_unittest.cc
index 022b03d..cf644df 100644
--- a/dbus/mock_unittest.cc
+++ b/dbus/mock_unittest.cc
@@ -1,4 +1,4 @@
-// Copyright (c) 2011 The Chromium Authors. All rights reserved.
+// Copyright (c) 2012 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.
@@ -11,6 +11,7 @@
#include "dbus/mock_bus.h"
#include "dbus/mock_object_proxy.h"
#include "dbus/mock_exported_object.h"
+#include "dbus/object_path.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
@@ -31,9 +32,10 @@ class MockTest : public testing::Test {
mock_bus_ = new dbus::MockBus(options);
// Create a mock proxy.
- mock_proxy_ = new dbus::MockObjectProxy(mock_bus_.get(),
- "org.chromium.TestService",
- "/org/chromium/TestObject");
+ mock_proxy_ = new dbus::MockObjectProxy(
+ mock_bus_.get(),
+ "org.chromium.TestService",
+ dbus::ObjectPath("/org/chromium/TestObject"));
// Set an expectation so mock_proxy's CallMethodAndBlock() will use
// CreateMockProxyResponse() to return responses.
@@ -49,8 +51,9 @@ class MockTest : public testing::Test {
// Set an expectation so mock_bus's GetObjectProxy() for the given
// service name and the object path will return mock_proxy_.
- EXPECT_CALL(*mock_bus_, GetObjectProxy("org.chromium.TestService",
- "/org/chromium/TestObject"))
+ EXPECT_CALL(*mock_bus_, GetObjectProxy(
+ "org.chromium.TestService",
+ dbus::ObjectPath("/org/chromium/TestObject")))
.WillOnce(Return(mock_proxy_.get()));
// ShutdownAndBlock() will be called in TearDown().
@@ -130,7 +133,7 @@ TEST_F(MockTest, CallMethodAndBlock) {
// Get an object proxy from the mock bus.
dbus::ObjectProxy* proxy = mock_bus_->GetObjectProxy(
"org.chromium.TestService",
- "/org/chromium/TestObject");
+ dbus::ObjectPath("/org/chromium/TestObject"));
// Create a method call.
dbus::MethodCall method_call("org.chromium.TestInterface", "Echo");
@@ -159,7 +162,7 @@ TEST_F(MockTest, CallMethod) {
// Get an object proxy from the mock bus.
dbus::ObjectProxy* proxy = mock_bus_->GetObjectProxy(
"org.chromium.TestService",
- "/org/chromium/TestObject");
+ dbus::ObjectPath("/org/chromium/TestObject"));
// Create a method call.
dbus::MethodCall method_call("org.chromium.TestInterface", "Echo");