// Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef TESTING_PLATFORM_TEST_H_ #define TESTING_PLATFORM_TEST_H_ #include <gtest/gtest.h> #if defined(GTEST_OS_MAC) #ifdef __OBJC__ @class NSAutoreleasePool; #else class NSAutoreleasePool; #endif // The purpose of this class us to provide a hook for platform-specific // operations across unit tests. For example, on the Mac, it creates and // releases an outer NSAutoreleasePool for each test case. For now, it's only // implemented on the Mac. To enable this for another platform, just adjust // the #ifdefs and add a platform_test_<platform>.cc implementation file. class PlatformTest : public testing::Test { public: virtual ~PlatformTest(); protected: PlatformTest(); private: NSAutoreleasePool* pool_; }; #else typedef testing::Test PlatformTest; #endif // GTEST_OS_MAC #endif // TESTING_PLATFORM_TEST_H_