content_test_suite_base.h revision 23730a6e56a168d1879203e4b3819bb36e3d8f1f
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#ifndef CONTENT_PUBLIC_TEST_CONTENT_TEST_SUITE_BASE_H_ 6#define CONTENT_PUBLIC_TEST_CONTENT_TEST_SUITE_BASE_H_ 7 8#include "base/basictypes.h" 9#include "base/compiler_specific.h" 10#include "base/test/test_suite.h" 11 12namespace content { 13class ContentClient; 14 15// A basis upon which test suites that use content can be built. This suite 16// initializes bits and pieces of content; see the implementation of Initialize 17// for details. 18class ContentTestSuiteBase : public base::TestSuite { 19 protected: 20 ContentTestSuiteBase(int argc, char** argv); 21 22 virtual void Initialize() OVERRIDE; 23 24 // The methods below are for unit test setup. 25 26 // Registers content's schemes. During this call, the given content_client is 27 // registered temporarily so that it can provide additional schemes. 28 static void RegisterContentSchemes(ContentClient* content_client); 29 30 // Registers renderer/utility/gpu processes to run in-thread. 31 void RegisterInProcessThreads(); 32 33 private: 34 DISALLOW_COPY_AND_ASSIGN(ContentTestSuiteBase); 35}; 36 37} // namespace content 38 39#endif // CONTENT_PUBLIC_TEST_CONTENT_TEST_SUITE_BASE_H_ 40