1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "base/at_exit.h"
6 #include "base/command_line.h"
7 #include "base/test/test_timeouts.h"
8 #include "mojo/application/application_runner_chromium.h"
9 #include "mojo/application/application_test_base_chromium.h"
10 #include "mojo/public/c/system/main.h"
12 MojoResult
MojoMain(MojoHandle handle
) {
13 // An AtExitManager instance is needed to construct message loops.
14 base::AtExitManager at_exit
;
16 // Initialize test timeouts, which requires CommandLine::ForCurrentProcess().
17 // TODO(msw): Plumb relevant command line args before initializing timeouts.
18 mojo::ApplicationRunnerChromium::InitBaseCommandLine();
19 TestTimeouts::Initialize();
21 return mojo::test::RunAllTests(handle
);