| OLD | NEW |
| 1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "config.h" | 5 #include "config.h" |
| 6 | 6 |
| 7 #include "cc/nine_patch_layer.h" | 7 #include "cc/nine_patch_layer.h" |
| 8 | 8 |
| 9 #include "cc/layer_tree_host.h" | 9 #include "cc/layer_tree_host.h" |
| 10 #include "cc/occlusion_tracker.h" | 10 #include "cc/occlusion_tracker.h" |
| (...skipping 17 matching lines...) Expand all Loading... |
| 28 using ::testing::AtLeast; | 28 using ::testing::AtLeast; |
| 29 using ::testing::AnyNumber; | 29 using ::testing::AnyNumber; |
| 30 | 30 |
| 31 namespace { | 31 namespace { |
| 32 | 32 |
| 33 class MockLayerTreeHost : public LayerTreeHost { | 33 class MockLayerTreeHost : public LayerTreeHost { |
| 34 public: | 34 public: |
| 35 MockLayerTreeHost() | 35 MockLayerTreeHost() |
| 36 : LayerTreeHost(&m_fakeClient, LayerTreeSettings()) | 36 : LayerTreeHost(&m_fakeClient, LayerTreeSettings()) |
| 37 { | 37 { |
| 38 initialize(); | 38 initialize(scoped_ptr<Thread>(NULL)); |
| 39 } | 39 } |
| 40 | 40 |
| 41 private: | 41 private: |
| 42 FakeLayerImplTreeHostClient m_fakeClient; | 42 FakeLayerImplTreeHostClient m_fakeClient; |
| 43 }; | 43 }; |
| 44 | 44 |
| 45 | 45 |
| 46 class NinePatchLayerTest : public testing::Test { | 46 class NinePatchLayerTest : public testing::Test { |
| 47 public: | 47 public: |
| 48 NinePatchLayerTest() | 48 NinePatchLayerTest() |
| 49 { | 49 { |
| 50 } | 50 } |
| 51 | 51 |
| 52 Proxy* proxy() const { return m_layerTreeHost->proxy(); } |
| 53 |
| 52 protected: | 54 protected: |
| 53 virtual void SetUp() | 55 virtual void SetUp() |
| 54 { | 56 { |
| 55 m_layerTreeHost.reset(new MockLayerTreeHost); | 57 m_layerTreeHost.reset(new MockLayerTreeHost); |
| 56 } | 58 } |
| 57 | 59 |
| 58 virtual void TearDown() | 60 virtual void TearDown() |
| 59 { | 61 { |
| 60 Mock::VerifyAndClearExpectations(m_layerTreeHost.get()); | 62 Mock::VerifyAndClearExpectations(m_layerTreeHost.get()); |
| 61 } | 63 } |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 99 ResourceUpdate params = queue.takeFirstFullUpload(); | 101 ResourceUpdate params = queue.takeFirstFullUpload(); |
| 100 EXPECT_TRUE(params.texture != NULL); | 102 EXPECT_TRUE(params.texture != NULL); |
| 101 | 103 |
| 102 // Upload the texture. | 104 // Upload the texture. |
| 103 m_layerTreeHost->contentsTextureManager()->setMaxMemoryLimitBytes(1024 * 102
4); | 105 m_layerTreeHost->contentsTextureManager()->setMaxMemoryLimitBytes(1024 * 102
4); |
| 104 m_layerTreeHost->contentsTextureManager()->prioritizeTextures(); | 106 m_layerTreeHost->contentsTextureManager()->prioritizeTextures(); |
| 105 | 107 |
| 106 scoped_ptr<GraphicsContext> context; | 108 scoped_ptr<GraphicsContext> context; |
| 107 scoped_ptr<ResourceProvider> resourceProvider; | 109 scoped_ptr<ResourceProvider> resourceProvider; |
| 108 { | 110 { |
| 109 DebugScopedSetImplThread implThread; | 111 DebugScopedSetImplThread implThread(proxy()); |
| 110 DebugScopedSetMainThreadBlocked mainThreadBlocked; | 112 DebugScopedSetMainThreadBlocked mainThreadBlocked(proxy()); |
| 111 context = WebKit::createFakeGraphicsContext(); | 113 context = WebKit::createFakeGraphicsContext(); |
| 112 resourceProvider = ResourceProvider::create(context.get()); | 114 resourceProvider = ResourceProvider::create(context.get()); |
| 113 params.texture->acquireBackingTexture(resourceProvider.get()); | 115 params.texture->acquireBackingTexture(resourceProvider.get()); |
| 114 ASSERT_TRUE(params.texture->haveBackingTexture()); | 116 ASSERT_TRUE(params.texture->haveBackingTexture()); |
| 115 } | 117 } |
| 116 | 118 |
| 117 // Nothing changed, so no repeated upload. | 119 // Nothing changed, so no repeated upload. |
| 118 testLayer->setTexturePriorities(calculator); | 120 testLayer->setTexturePriorities(calculator); |
| 119 testLayer->update(queue, &occlusionTracker, stats); | 121 testLayer->update(queue, &occlusionTracker, stats); |
| 120 EXPECT_EQ(queue.fullUploadSize(), 0); | 122 EXPECT_EQ(queue.fullUploadSize(), 0); |
| 121 EXPECT_EQ(queue.partialUploadSize(), 0); | 123 EXPECT_EQ(queue.partialUploadSize(), 0); |
| 122 | 124 |
| 123 { | 125 { |
| 124 DebugScopedSetImplThread implThread; | 126 DebugScopedSetImplThread implThread(proxy()); |
| 125 DebugScopedSetMainThreadBlocked mainThreadBlocked; | 127 DebugScopedSetMainThreadBlocked mainThreadBlocked(proxy()); |
| 126 m_layerTreeHost->contentsTextureManager()->clearAllMemory(resourceProvid
er.get()); | 128 m_layerTreeHost->contentsTextureManager()->clearAllMemory(resourceProvid
er.get()); |
| 127 } | 129 } |
| 128 | 130 |
| 129 // Reupload after eviction | 131 // Reupload after eviction |
| 130 testLayer->setTexturePriorities(calculator); | 132 testLayer->setTexturePriorities(calculator); |
| 131 testLayer->update(queue, &occlusionTracker, stats); | 133 testLayer->update(queue, &occlusionTracker, stats); |
| 132 EXPECT_EQ(queue.fullUploadSize(), 1); | 134 EXPECT_EQ(queue.fullUploadSize(), 1); |
| 133 EXPECT_EQ(queue.partialUploadSize(), 0); | 135 EXPECT_EQ(queue.partialUploadSize(), 0); |
| 134 } | 136 } |
| 135 | 137 |
| 136 } // anonymous namespace | 138 } // anonymous namespace |
| OLD | NEW |