| Index: services/shell/tests/util.cc
|
| diff --git a/services/shell/tests/util.cc b/services/shell/tests/util.cc
|
| deleted file mode 100644
|
| index 8cdd71b9d27b296de0a2d13f467b4eeaf1bf4feb..0000000000000000000000000000000000000000
|
| --- a/services/shell/tests/util.cc
|
| +++ /dev/null
|
| @@ -1,104 +0,0 @@
|
| -// Copyright 2016 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.
|
| -
|
| -#include "services/shell/tests/util.h"
|
| -
|
| -#include "base/base_paths.h"
|
| -#include "base/base_switches.h"
|
| -#include "base/bind.h"
|
| -#include "base/command_line.h"
|
| -#include "base/files/file_path.h"
|
| -#include "base/macros.h"
|
| -#include "base/message_loop/message_loop.h"
|
| -#include "base/path_service.h"
|
| -#include "base/process/process.h"
|
| -#include "base/run_loop.h"
|
| -#include "mojo/edk/embedder/embedder.h"
|
| -#include "mojo/edk/embedder/platform_channel_pair.h"
|
| -#include "mojo/edk/embedder/scoped_platform_handle.h"
|
| -#include "services/shell/public/cpp/connection.h"
|
| -#include "services/shell/public/cpp/connector.h"
|
| -#include "services/shell/public/interfaces/connector.mojom.h"
|
| -#include "services/shell/public/interfaces/service_factory.mojom.h"
|
| -#include "services/shell/runner/common/switches.h"
|
| -
|
| -namespace shell {
|
| -namespace test {
|
| -
|
| -namespace {
|
| -
|
| -void QuitLoop(base::RunLoop* loop) {
|
| - loop->Quit();
|
| -}
|
| -
|
| -} // namespace
|
| -
|
| -std::unique_ptr<Connection> LaunchAndConnectToProcess(
|
| - const std::string& target_exe_name,
|
| - const Identity target,
|
| - shell::Connector* connector,
|
| - base::Process* process) {
|
| - base::FilePath target_path;
|
| - CHECK(base::PathService::Get(base::DIR_EXE, &target_path));
|
| - target_path = target_path.AppendASCII(target_exe_name);
|
| -
|
| - base::CommandLine child_command_line(target_path);
|
| - // Forward the wait-for-debugger flag but nothing else - we don't want to
|
| - // stamp on the platform-channel flag.
|
| - if (base::CommandLine::ForCurrentProcess()->HasSwitch(
|
| - switches::kWaitForDebugger)) {
|
| - child_command_line.AppendSwitch(switches::kWaitForDebugger);
|
| - }
|
| -
|
| - // Create the channel to be shared with the target process. Pass one end
|
| - // on the command line.
|
| - mojo::edk::PlatformChannelPair platform_channel_pair;
|
| - mojo::edk::HandlePassingInformation handle_passing_info;
|
| - platform_channel_pair.PrepareToPassClientHandleToChildProcess(
|
| - &child_command_line, &handle_passing_info);
|
| -
|
| - // Generate a token for the child to find and connect to a primordial pipe
|
| - // and pass that as well.
|
| - std::string primordial_pipe_token = mojo::edk::GenerateRandomToken();
|
| - child_command_line.AppendSwitchASCII(switches::kPrimordialPipeToken,
|
| - primordial_pipe_token);
|
| -
|
| - // Allocate the pipe locally.
|
| - std::string child_token = mojo::edk::GenerateRandomToken();
|
| - mojo::ScopedMessagePipeHandle pipe =
|
| - mojo::edk::CreateParentMessagePipe(primordial_pipe_token, child_token);
|
| -
|
| - shell::mojom::ServicePtr client;
|
| - client.Bind(
|
| - mojo::InterfacePtrInfo<shell::mojom::Service>(std::move(pipe), 0u));
|
| - shell::mojom::PIDReceiverPtr receiver;
|
| -
|
| - shell::Connector::ConnectParams params(target);
|
| - params.set_client_process_connection(std::move(client), GetProxy(&receiver));
|
| - std::unique_ptr<shell::Connection> connection = connector->Connect(¶ms);
|
| - {
|
| - base::RunLoop loop;
|
| - connection->AddConnectionCompletedClosure(base::Bind(&QuitLoop, &loop));
|
| - base::MessageLoop::ScopedNestableTaskAllower allow(
|
| - base::MessageLoop::current());
|
| - loop.Run();
|
| - }
|
| -
|
| - base::LaunchOptions options;
|
| -#if defined(OS_WIN)
|
| - options.handles_to_inherit = &handle_passing_info;
|
| -#elif defined(OS_POSIX)
|
| - options.fds_to_remap = &handle_passing_info;
|
| -#endif
|
| - *process = base::LaunchProcess(child_command_line, options);
|
| - DCHECK(process->IsValid());
|
| - receiver->SetPID(process->Pid());
|
| - mojo::edk::ChildProcessLaunched(process->Handle(),
|
| - platform_channel_pair.PassServerHandle(),
|
| - child_token);
|
| - return connection;
|
| -}
|
| -
|
| -} // namespace test
|
| -} // namespace shell
|
|
|