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 "cc/gl_renderer.h" | 5 #include "cc/gl_renderer.h" |
6 | 6 |
7 #include "cc/draw_quad.h" | 7 #include "cc/draw_quad.h" |
8 #include "cc/prioritized_resource_manager.h" | 8 #include "cc/prioritized_resource_manager.h" |
9 #include "cc/resource_provider.h" | 9 #include "cc/resource_provider.h" |
| 10 #include "cc/test/fake_impl_proxy.h" |
| 11 #include "cc/test/fake_layer_tree_host_impl.h" |
10 #include "cc/test/fake_web_compositor_output_surface.h" | 12 #include "cc/test/fake_web_compositor_output_surface.h" |
11 #include "cc/test/fake_web_graphics_context_3d.h" | 13 #include "cc/test/fake_web_graphics_context_3d.h" |
12 #include "cc/test/render_pass_test_common.h" | 14 #include "cc/test/render_pass_test_common.h" |
13 #include "testing/gmock/include/gmock/gmock.h" | 15 #include "testing/gmock/include/gmock/gmock.h" |
14 #include "testing/gtest/include/gtest/gtest.h" | 16 #include "testing/gtest/include/gtest/gtest.h" |
15 #include "third_party/khronos/GLES2/gl2.h" | 17 #include "third_party/khronos/GLES2/gl2.h" |
16 #include "ui/gfx/transform.h" | 18 #include "ui/gfx/transform.h" |
17 | 19 |
18 using namespace WebKit; | 20 using namespace WebKit; |
19 using namespace WebKitTests; | 21 using namespace WebKitTests; |
(...skipping 30 matching lines...) Expand all Loading... |
50 } | 52 } |
51 | 53 |
52 private: | 54 private: |
53 int m_frame; | 55 int m_frame; |
54 WebGraphicsMemoryAllocationChangedCallbackCHROMIUM* m_memoryAllocationChange
dCallback; | 56 WebGraphicsMemoryAllocationChangedCallbackCHROMIUM* m_memoryAllocationChange
dCallback; |
55 }; | 57 }; |
56 | 58 |
57 class FakeRendererClient : public RendererClient { | 59 class FakeRendererClient : public RendererClient { |
58 public: | 60 public: |
59 FakeRendererClient() | 61 FakeRendererClient() |
60 : m_setFullRootLayerDamageCount(0) | 62 : m_hostImpl(&m_proxy) |
| 63 , m_setFullRootLayerDamageCount(0) |
61 , m_lastCallWasSetVisibility(0) | 64 , m_lastCallWasSetVisibility(0) |
62 , m_rootLayer(LayerImpl::create(1)) | 65 , m_rootLayer(LayerImpl::create(&m_hostImpl, 1)) |
63 , m_memoryAllocationLimitBytes(PrioritizedResourceManager::defaultMemory
AllocationLimit()) | 66 , m_memoryAllocationLimitBytes(PrioritizedResourceManager::defaultMemory
AllocationLimit()) |
64 { | 67 { |
65 m_rootLayer->createRenderSurface(); | 68 m_rootLayer->createRenderSurface(); |
66 RenderPass::Id renderPassId = m_rootLayer->renderSurface()->renderPassId
(); | 69 RenderPass::Id renderPassId = m_rootLayer->renderSurface()->renderPassId
(); |
67 scoped_ptr<RenderPass> rootRenderPass = RenderPass::Create(); | 70 scoped_ptr<RenderPass> rootRenderPass = RenderPass::Create(); |
68 rootRenderPass->SetNew(renderPassId, gfx::Rect(), gfx::Rect(), gfx::Tran
sform()); | 71 rootRenderPass->SetNew(renderPassId, gfx::Rect(), gfx::Rect(), gfx::Tran
sform()); |
69 m_renderPassesInDrawOrder.push_back(rootRenderPass.get()); | 72 m_renderPassesInDrawOrder.push_back(rootRenderPass.get()); |
70 m_renderPasses.set(renderPassId, rootRenderPass.Pass()); | 73 m_renderPasses.set(renderPassId, rootRenderPass.Pass()); |
71 } | 74 } |
72 | 75 |
(...skipping 11 matching lines...) Expand all Loading... |
84 int setFullRootLayerDamageCount() const { return m_setFullRootLayerDamageCou
nt; } | 87 int setFullRootLayerDamageCount() const { return m_setFullRootLayerDamageCou
nt; } |
85 void setLastCallWasSetVisibilityPointer(bool* lastCallWasSetVisibility) { m_
lastCallWasSetVisibility = lastCallWasSetVisibility; } | 88 void setLastCallWasSetVisibilityPointer(bool* lastCallWasSetVisibility) { m_
lastCallWasSetVisibility = lastCallWasSetVisibility; } |
86 | 89 |
87 RenderPass* rootRenderPass() { return m_renderPassesInDrawOrder.back(); } | 90 RenderPass* rootRenderPass() { return m_renderPassesInDrawOrder.back(); } |
88 RenderPassList& renderPassesInDrawOrder() { return m_renderPassesInDrawOrder
; } | 91 RenderPassList& renderPassesInDrawOrder() { return m_renderPassesInDrawOrder
; } |
89 RenderPassIdHashMap& renderPasses() { return m_renderPasses; } | 92 RenderPassIdHashMap& renderPasses() { return m_renderPasses; } |
90 | 93 |
91 size_t memoryAllocationLimitBytes() const { return m_memoryAllocationLimitBy
tes; } | 94 size_t memoryAllocationLimitBytes() const { return m_memoryAllocationLimitBy
tes; } |
92 | 95 |
93 private: | 96 private: |
| 97 FakeImplProxy m_proxy; |
| 98 FakeLayerTreeHostImpl m_hostImpl; |
94 int m_setFullRootLayerDamageCount; | 99 int m_setFullRootLayerDamageCount; |
95 bool* m_lastCallWasSetVisibility; | 100 bool* m_lastCallWasSetVisibility; |
96 scoped_ptr<LayerImpl> m_rootLayer; | 101 scoped_ptr<LayerImpl> m_rootLayer; |
97 RenderPassList m_renderPassesInDrawOrder; | 102 RenderPassList m_renderPassesInDrawOrder; |
98 RenderPassIdHashMap m_renderPasses; | 103 RenderPassIdHashMap m_renderPasses; |
99 size_t m_memoryAllocationLimitBytes; | 104 size_t m_memoryAllocationLimitBytes; |
100 }; | 105 }; |
101 | 106 |
102 class FakeRendererGL : public GLRenderer { | 107 class FakeRendererGL : public GLRenderer { |
103 public: | 108 public: |
(...skipping 464 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
568 it != pass->quad_list.backToFrontEnd(); ++it) { | 573 it != pass->quad_list.backToFrontEnd(); ++it) { |
569 renderer.drawQuad(drawingFrame, *it); | 574 renderer.drawQuad(drawingFrame, *it); |
570 } | 575 } |
571 renderer.finishDrawingQuadList(); | 576 renderer.finishDrawingQuadList(); |
572 EXPECT_EQ(context->activeTexture(), GL_TEXTURE0); | 577 EXPECT_EQ(context->activeTexture(), GL_TEXTURE0); |
573 Mock::VerifyAndClearExpectations(context); | 578 Mock::VerifyAndClearExpectations(context); |
574 } | 579 } |
575 | 580 |
576 } // namespace | 581 } // namespace |
577 } // namespace cc | 582 } // namespace cc |
OLD | NEW |