unit_test_launcher.h revision a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7
13551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved.
23551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
33551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)// found in the LICENSE file.
43551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
54e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#ifndef BASE_TEST_LAUNCHER_UNIT_TEST_LAUNCHER_H_
64e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#define BASE_TEST_LAUNCHER_UNIT_TEST_LAUNCHER_H_
73551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
83551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#include "base/callback.h"
93551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
103551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)namespace base {
113551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
123551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)// Callback that runs a test suite and returns exit code.
133551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)typedef base::Callback<int(void)> RunTestSuiteCallback;
143551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
153551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)// Launches unit tests in given test suite. Returns exit code.
163551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)int LaunchUnitTests(int argc,
173551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)                    char** argv,
183551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)                    const RunTestSuiteCallback& run_test_suite);
193551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
20a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)// Same as above, but always runs tests serially.
21a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)int LaunchUnitTestsSerially(int argc,
22a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                            char** argv,
23a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                            const RunTestSuiteCallback& run_test_suite);
24a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)
253551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)}   // namespace base
263551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
274e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#endif  // BASE_TEST_LAUNCHER_UNIT_TEST_LAUNCHER_H_
28