Modified: trunk/Source/WebKit/chromium/ChangeLog (106242 => 106243)
--- trunk/Source/WebKit/chromium/ChangeLog 2012-01-30 15:19:02 UTC (rev 106242)
+++ trunk/Source/WebKit/chromium/ChangeLog 2012-01-30 15:24:22 UTC (rev 106243)
@@ -1,3 +1,24 @@
+2012-01-30 Jochen Eisinger <[email protected]>
+
+ [chromium] remove exit time destructors from TextureManagerTest
+ https://bugs.webkit.org/show_bug.cgi?id=77333
+
+ Reviewed by Tony Gentilcore.
+
+ Non-trivial, global objects require an at-exit time destructor which add
+ unnecessary complexity and delays to shutdown.
+
+ * tests/FakeCCLayerTreeHostClient.h: added newline at EOF
+ * tests/TextureManagerTest.cpp:
+ (WTF::FakeTextureAllocator::~FakeTextureAllocator):
+ (TextureManagerTest):
+ (WTF::TextureManagerTest::TextureManagerTest):
+ (WTF::TextureManagerTest::~TextureManagerTest):
+ (WTF::TextureManagerTest::texturesMemorySize):
+ (WTF::TextureManagerTest::createTextureManager):
+ (WTF::TextureManagerTest::requestTexture):
+ (WTF::TEST_F):
+
2012-01-30 Hans Wennborg <[email protected]>
Unreviewed, rolling out r106219.
Modified: trunk/Source/WebKit/chromium/tests/TextureManagerTest.cpp (106242 => 106243)
--- trunk/Source/WebKit/chromium/tests/TextureManagerTest.cpp 2012-01-30 15:19:02 UTC (rev 106242)
+++ trunk/Source/WebKit/chromium/tests/TextureManagerTest.cpp 2012-01-30 15:24:22 UTC (rev 106243)
@@ -35,34 +35,49 @@
class FakeTextureAllocator : public TextureAllocator {
public:
+ virtual ~FakeTextureAllocator() { }
virtual unsigned createTexture(const IntSize&, GC3Denum) { return 1; }
virtual void deleteTexture(unsigned, const IntSize&, GC3Denum) { }
};
-FakeTextureAllocator fakeTextureAllocator;
-const IntSize textureSize(256, 256);
-const GC3Denum textureFormat = GraphicsContext3D::RGBA;
+class TextureManagerTest : public testing::Test {
+public:
+ TextureManagerTest()
+ : m_textureSize(256, 256)
+ , m_textureFormat(GraphicsContext3D::RGBA)
+ {
+ }
-size_t texturesMemorySize(size_t textureCount)
-{
- return TextureManager::memoryUseBytes(textureSize, textureFormat) * textureCount;
-}
+ virtual ~TextureManagerTest()
+ {
+ }
-PassOwnPtr<TextureManager> createTextureManager(size_t maxTextures, size_t preferredTextures)
-{
- return TextureManager::create(texturesMemorySize(maxTextures), texturesMemorySize(preferredTextures), 1024);
-}
+ size_t texturesMemorySize(size_t textureCount)
+ {
+ return TextureManager::memoryUseBytes(m_textureSize, m_textureFormat) * textureCount;
+ }
-bool requestTexture(TextureManager* manager, TextureToken token)
-{
- unsigned textureId;
- bool result = manager->requestTexture(token, textureSize, textureFormat, textureId);
- if (result)
- manager->allocateTexture(&fakeTextureAllocator, token);
- return result;
-}
+ PassOwnPtr<TextureManager> createTextureManager(size_t maxTextures, size_t preferredTextures)
+ {
+ return TextureManager::create(texturesMemorySize(maxTextures), texturesMemorySize(preferredTextures), 1024);
+ }
-TEST(TextureManagerTest, requestTextureInPreferredLimit)
+ bool requestTexture(TextureManager* manager, TextureToken token)
+ {
+ unsigned textureId;
+ bool result = manager->requestTexture(token, m_textureSize, m_textureFormat, textureId);
+ if (result)
+ manager->allocateTexture(&m_fakeTextureAllocator, token);
+ return result;
+ }
+
+private:
+ FakeTextureAllocator m_fakeTextureAllocator;
+ const IntSize m_textureSize;
+ const GC3Denum m_textureFormat;
+};
+
+TEST_F(TextureManagerTest, requestTextureInPreferredLimit)
{
const size_t preferredTextures = 8;
OwnPtr<TextureManager> textureManager = createTextureManager(preferredTextures * 2, preferredTextures);
@@ -82,7 +97,7 @@
EXPECT_EQ(texturesMemorySize(preferredTextures), textureManager->currentMemoryUseBytes());
}
-TEST(TextureManagerTest, requestTextureExceedingPreferredLimit)
+TEST_F(TextureManagerTest, requestTextureExceedingPreferredLimit)
{
const size_t maxTextures = 8;
const size_t preferredTextures = 4;
@@ -114,7 +129,7 @@
EXPECT_EQ(texturesMemorySize(preferredTextures), textureManager->currentMemoryUseBytes());
}
-TEST(TextureManagerTest, requestTextureExceedingMaxLimit)
+TEST_F(TextureManagerTest, requestTextureExceedingMaxLimit)
{
const size_t maxTextures = 8;
const size_t preferredTextures = 4;
@@ -146,7 +161,7 @@
EXPECT_FALSE(textureManager->hasTexture(tokens[3]));
}
-TEST(TextureManagerTest, reduceMemoryToLimit)
+TEST_F(TextureManagerTest, reduceMemoryToLimit)
{
const size_t maxTextures = 8;
const size_t preferredTextures = 4;
@@ -179,7 +194,7 @@
EXPECT_EQ(texturesMemorySize(preferredTextures), textureManager->preferredMemoryLimitBytes());
}
-TEST(TextureManagerTest, setMaxMemoryLimitBytes)
+TEST_F(TextureManagerTest, setMaxMemoryLimitBytes)
{
const size_t maxTextures = 8;
const size_t preferredTextures = 4;
@@ -203,7 +218,7 @@
EXPECT_EQ(texturesMemorySize(preferredTextures), textureManager->maxMemoryLimitBytes());
}
-TEST(TextureManagerTest, setPreferredMemoryLimitBytes)
+TEST_F(TextureManagerTest, setPreferredMemoryLimitBytes)
{
const size_t maxTextures = 8;
const size_t preferredTextures = 4;