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. 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#include "mojo/embedder/test_embedder.h" 10 11#if defined(OS_ANDROID) 12#include "base/android/jni_android.h" 13#include "base/test/test_file_util.h" 14#endif 15 16namespace { 17 18class NoAtExitBaseTestSuite : public base::TestSuite { 19 public: 20 NoAtExitBaseTestSuite(int argc, char** argv) 21 : base::TestSuite(argc, argv, false) { 22 } 23}; 24 25int RunTestSuite(int argc, char** argv) { 26 return NoAtExitBaseTestSuite(argc, argv).Run(); 27} 28 29} // namespace 30 31int main(int argc, char** argv) { 32 mojo::embedder::test::InitWithSimplePlatformSupport(); 33#if defined(OS_ANDROID) 34 JNIEnv* env = base::android::AttachCurrentThread(); 35 base::RegisterContentUriTestUtils(env); 36#else 37 base::AtExitManager at_exit; 38#endif 39 return base::LaunchUnitTestsSerially(argc, 40 argv, 41 base::Bind(&RunTestSuite, argc, argv)); 42} 43