1// Copyright (c) 2011 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.
4
5#include "base/bind.h"
6#include "base/test/launcher/unit_test_launcher.h"
7#include "base/test/test_suite.h"
8#include "testing/gtest/include/gtest/gtest.h"
9#include "sandbox/win/tests/common/controller.h"
10
11int wmain(int argc, wchar_t **argv) {
12  if (argc >= 2) {
13    if (0 == _wcsicmp(argv[1], L"-child") ||
14        0 == _wcsicmp(argv[1], L"-child-no-sandbox"))
15      // This instance is a child, not the test.
16      return sandbox::DispatchCall(argc, argv);
17  }
18
19  TestSuite test_suite(argc, argv);
20  return base::LaunchUnitTests(
21      argc,
22      argv,
23      false,
24      base::Bind(&base::TestSuite::Run, base::Unretained(&test_suite)));
25}
26