Index: services/service_manager/tests/util.cc |
diff --git a/services/service_manager/tests/util.cc b/services/service_manager/tests/util.cc |
index 081ce6c2dc994359ca519331f0e80b001e6083d5..b881f1799d6e78244c7a75c7b001ad57eb974a77 100644 |
--- a/services/service_manager/tests/util.cc |
+++ b/services/service_manager/tests/util.cc |
@@ -17,7 +17,6 @@ |
#include "mojo/edk/embedder/embedder.h" |
#include "mojo/edk/embedder/platform_channel_pair.h" |
#include "mojo/edk/embedder/scoped_platform_handle.h" |
-#include "services/service_manager/public/cpp/connection.h" |
#include "services/service_manager/public/cpp/connector.h" |
#include "services/service_manager/public/interfaces/connector.mojom.h" |
#include "services/service_manager/public/interfaces/service_factory.mojom.h" |
@@ -28,13 +27,17 @@ namespace test { |
namespace { |
-void QuitLoop(base::RunLoop* loop) { |
+void GrabConnectResult(base::RunLoop* loop, |
+ mojom::ConnectResult* out_result, |
+ mojom::ConnectResult result, |
+ const Identity& resolved_identity) { |
loop->Quit(); |
+ *out_result = result; |
} |
} // namespace |
-std::unique_ptr<Connection> LaunchAndConnectToProcess( |
+mojom::ConnectResult LaunchAndConnectToProcess( |
const std::string& target_exe_name, |
const Identity& target, |
service_manager::Connector* connector, |
@@ -70,11 +73,12 @@ std::unique_ptr<Connection> LaunchAndConnectToProcess( |
service_manager::mojom::PIDReceiverPtr receiver; |
connector->StartService(target, std::move(client), MakeRequest(&receiver)); |
- std::unique_ptr<service_manager::Connection> connection = |
- connector->Connect(target); |
+ mojom::ConnectResult result; |
{ |
base::RunLoop loop; |
- connection->AddConnectionCompletedClosure(base::Bind(&QuitLoop, &loop)); |
+ Connector::TestApi test_api(connector); |
+ test_api.SetStartServiceCallback( |
+ base::Bind(&GrabConnectResult, &loop, &result)); |
base::MessageLoop::ScopedNestableTaskAllower allow( |
base::MessageLoop::current()); |
loop.Run(); |
@@ -92,7 +96,7 @@ std::unique_ptr<Connection> LaunchAndConnectToProcess( |
pending_process.Connect( |
process->Handle(), |
mojo::edk::ConnectionParams(platform_channel_pair.PassServerHandle())); |
- return connection; |
+ return result; |
} |
} // namespace test |