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

Side by Side Diff: dbus/end_to_end_async_unittest.cc

Issue 12255043: DBus: Use TaskRunners instead of MessageLoopProxies. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: rebase Created 7 years, 10 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <algorithm> 5 #include <algorithm>
6 #include <string> 6 #include <string>
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/memory/scoped_ptr.h" 10 #include "base/memory/scoped_ptr.h"
(...skipping 28 matching lines...) Expand all
39 base::ThreadRestrictions::SetIOAllowed(false); 39 base::ThreadRestrictions::SetIOAllowed(false);
40 40
41 // Start the D-Bus thread. 41 // Start the D-Bus thread.
42 dbus_thread_.reset(new base::Thread("D-Bus Thread")); 42 dbus_thread_.reset(new base::Thread("D-Bus Thread"));
43 base::Thread::Options thread_options; 43 base::Thread::Options thread_options;
44 thread_options.message_loop_type = MessageLoop::TYPE_IO; 44 thread_options.message_loop_type = MessageLoop::TYPE_IO;
45 ASSERT_TRUE(dbus_thread_->StartWithOptions(thread_options)); 45 ASSERT_TRUE(dbus_thread_->StartWithOptions(thread_options));
46 46
47 // Start the test service, using the D-Bus thread. 47 // Start the test service, using the D-Bus thread.
48 dbus::TestService::Options options; 48 dbus::TestService::Options options;
49 options.dbus_thread_message_loop_proxy = dbus_thread_->message_loop_proxy(); 49 options.dbus_task_runner = dbus_thread_->message_loop_proxy();
50 test_service_.reset(new dbus::TestService(options)); 50 test_service_.reset(new dbus::TestService(options));
51 ASSERT_TRUE(test_service_->StartService()); 51 ASSERT_TRUE(test_service_->StartService());
52 ASSERT_TRUE(test_service_->WaitUntilServiceIsStarted()); 52 ASSERT_TRUE(test_service_->WaitUntilServiceIsStarted());
53 ASSERT_TRUE(test_service_->HasDBusThread()); 53 ASSERT_TRUE(test_service_->HasDBusThread());
54 54
55 // Create the client, using the D-Bus thread. 55 // Create the client, using the D-Bus thread.
56 dbus::Bus::Options bus_options; 56 dbus::Bus::Options bus_options;
57 bus_options.bus_type = dbus::Bus::SESSION; 57 bus_options.bus_type = dbus::Bus::SESSION;
58 bus_options.connection_type = dbus::Bus::PRIVATE; 58 bus_options.connection_type = dbus::Bus::PRIVATE;
59 bus_options.dbus_thread_message_loop_proxy = 59 bus_options.dbus_task_runner = dbus_thread_->message_loop_proxy();
60 dbus_thread_->message_loop_proxy();
61 bus_options.disconnected_callback = 60 bus_options.disconnected_callback =
62 base::Bind(&EndToEndAsyncTest::OnDisconnected, base::Unretained(this)); 61 base::Bind(&EndToEndAsyncTest::OnDisconnected, base::Unretained(this));
63 bus_ = new dbus::Bus(bus_options); 62 bus_ = new dbus::Bus(bus_options);
64 object_proxy_ = bus_->GetObjectProxy( 63 object_proxy_ = bus_->GetObjectProxy(
65 "org.chromium.TestService", 64 "org.chromium.TestService",
66 dbus::ObjectPath("/org/chromium/TestObject")); 65 dbus::ObjectPath("/org/chromium/TestObject"));
67 ASSERT_TRUE(bus_->HasDBusThread()); 66 ASSERT_TRUE(bus_->HasDBusThread());
68 67
69 // Connect to the "Test" signal of "org.chromium.TestInterface" from 68 // Connect to the "Test" signal of "org.chromium.TestInterface" from
70 // the remote object. 69 // the remote object.
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
131 void SetUpBrokenBus() { 130 void SetUpBrokenBus() {
132 // Shut down the existing bus. 131 // Shut down the existing bus.
133 bus_->ShutdownOnDBusThreadAndBlock(); 132 bus_->ShutdownOnDBusThreadAndBlock();
134 133
135 // Create new bus with invalid address. 134 // Create new bus with invalid address.
136 const char kInvalidAddress[] = ""; 135 const char kInvalidAddress[] = "";
137 dbus::Bus::Options bus_options; 136 dbus::Bus::Options bus_options;
138 bus_options.bus_type = dbus::Bus::CUSTOM_ADDRESS; 137 bus_options.bus_type = dbus::Bus::CUSTOM_ADDRESS;
139 bus_options.address = kInvalidAddress; 138 bus_options.address = kInvalidAddress;
140 bus_options.connection_type = dbus::Bus::PRIVATE; 139 bus_options.connection_type = dbus::Bus::PRIVATE;
141 bus_options.dbus_thread_message_loop_proxy = 140 bus_options.dbus_task_runner = dbus_thread_->message_loop_proxy();
142 dbus_thread_->message_loop_proxy();
143 bus_ = new dbus::Bus(bus_options); 141 bus_ = new dbus::Bus(bus_options);
144 ASSERT_TRUE(bus_->HasDBusThread()); 142 ASSERT_TRUE(bus_->HasDBusThread());
145 143
146 // Create new object proxy. 144 // Create new object proxy.
147 object_proxy_ = bus_->GetObjectProxy( 145 object_proxy_ = bus_->GetObjectProxy(
148 "org.chromium.TestService", 146 "org.chromium.TestService",
149 dbus::ObjectPath("/org/chromium/TestObject")); 147 dbus::ObjectPath("/org/chromium/TestObject"));
150 } 148 }
151 149
152 // Calls the method asynchronously. OnResponse() will be called once the 150 // Calls the method asynchronously. OnResponse() will be called once the
(...skipping 484 matching lines...) Expand 10 before | Expand all | Expand 10 after
637 const char kMessage[] = "hello, world"; 635 const char kMessage[] = "hello, world";
638 // Send the test signal from the exported object. 636 // Send the test signal from the exported object.
639 test_service_->SendTestSignal(kMessage); 637 test_service_->SendTestSignal(kMessage);
640 // Receive the signal with the object proxy. 638 // Receive the signal with the object proxy.
641 WaitForTestSignal(); 639 WaitForTestSignal();
642 // Verify the string WAS NOT received by the original handler. 640 // Verify the string WAS NOT received by the original handler.
643 ASSERT_TRUE(test_signal_string_.empty()); 641 ASSERT_TRUE(test_signal_string_.empty());
644 // Verify the signal WAS received by the replacement handler. 642 // Verify the signal WAS received by the replacement handler.
645 ASSERT_EQ(kMessage, replacement_test_signal_string_); 643 ASSERT_EQ(kMessage, replacement_test_signal_string_);
646 } 644 }
OLDNEW
« no previous file with comments | « dbus/bus_unittest.cc ('k') | dbus/mock_bus.h » ('j') | dbus/mock_bus.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698