• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2012 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/at_exit.h"
6 #include "base/bind.h"
7 #include "base/test/launcher/unit_test_launcher.h"
8 #include "base/test/test_suite.h"
9 
10 #if defined(OS_ANDROID)
11 #include "base/android/jni_android.h"
12 #include "base/test/test_file_util.h"
13 #endif
14 
15 namespace {
16 
17 class NoAtExitBaseTestSuite : public base::TestSuite {
18  public:
NoAtExitBaseTestSuite(int argc,char ** argv)19   NoAtExitBaseTestSuite(int argc, char** argv)
20       : base::TestSuite(argc, argv, false) {
21   }
22 };
23 
RunTestSuite(int argc,char ** argv)24 int RunTestSuite(int argc, char** argv) {
25   return NoAtExitBaseTestSuite(argc, argv).Run();
26 }
27 
28 }  // namespace
29 
main(int argc,char ** argv)30 int main(int argc, char** argv) {
31 #if defined(OS_ANDROID)
32   JNIEnv* env = base::android::AttachCurrentThread();
33   base::RegisterContentUriTestUtils(env);
34 #else
35   base::AtExitManager at_exit;
36 #endif
37   return base::LaunchUnitTests(argc,
38                                argv,
39                                base::Bind(&RunTestSuite, argc, argv));
40 }
41