OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 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 // This file contains definitions for mock objects, used for testing. | 5 // This file contains definitions for mock objects, used for testing. |
6 | 6 |
7 // TODO(apatrick): This file "manually" defines some mock objects. Using gMock | 7 // TODO(apatrick): This file "manually" defines some mock objects. Using gMock |
8 // would be definitely preferable, unfortunately it doesn't work on Windows yet. | 8 // would be definitely preferable, unfortunately it doesn't work on Windows yet. |
9 | 9 |
10 #ifndef GPU_COMMAND_BUFFER_SERVICE_MOCKS_H_ | 10 #ifndef GPU_COMMAND_BUFFER_SERVICE_MOCKS_H_ |
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
81 | 81 |
82 private: | 82 private: |
83 CommandBufferEngine *engine_; | 83 CommandBufferEngine *engine_; |
84 }; | 84 }; |
85 | 85 |
86 namespace gles2 { | 86 namespace gles2 { |
87 | 87 |
88 class MockShaderTranslator : public ShaderTranslatorInterface { | 88 class MockShaderTranslator : public ShaderTranslatorInterface { |
89 public: | 89 public: |
90 MockShaderTranslator(); | 90 MockShaderTranslator(); |
91 virtual ~MockShaderTranslator(); | |
92 | 91 |
93 MOCK_METHOD5(Init, bool( | 92 MOCK_METHOD5(Init, bool( |
94 sh::GLenum shader_type, | 93 sh::GLenum shader_type, |
95 ShShaderSpec shader_spec, | 94 ShShaderSpec shader_spec, |
96 const ShBuiltInResources* resources, | 95 const ShBuiltInResources* resources, |
97 GlslImplementationType glsl_implementation_type, | 96 GlslImplementationType glsl_implementation_type, |
98 ShCompileOptions driver_bug_workarounds)); | 97 ShCompileOptions driver_bug_workarounds)); |
99 MOCK_CONST_METHOD7(Translate, bool( | 98 MOCK_CONST_METHOD7(Translate, bool( |
100 const std::string& shader_source, | 99 const std::string& shader_source, |
101 std::string* info_log, | 100 std::string* info_log, |
102 std::string* translated_source, | 101 std::string* translated_source, |
103 AttributeMap* attrib_map, | 102 AttributeMap* attrib_map, |
104 UniformMap* uniform_map, | 103 UniformMap* uniform_map, |
105 VaryingMap* varying_map, | 104 VaryingMap* varying_map, |
106 NameMap* name_map)); | 105 NameMap* name_map)); |
107 MOCK_CONST_METHOD0( | 106 MOCK_CONST_METHOD0( |
108 GetStringForOptionsThatWouldAffectCompilation, std::string()); | 107 GetStringForOptionsThatWouldAffectCompilation, std::string()); |
| 108 private: |
| 109 ~MockShaderTranslator() override; |
109 }; | 110 }; |
110 | 111 |
111 class MockProgramCache : public ProgramCache { | 112 class MockProgramCache : public ProgramCache { |
112 public: | 113 public: |
113 MockProgramCache(); | 114 MockProgramCache(); |
114 virtual ~MockProgramCache(); | 115 virtual ~MockProgramCache(); |
115 | 116 |
116 MOCK_METHOD7(LoadLinkedProgram, ProgramLoadResult( | 117 MOCK_METHOD5(LoadLinkedProgram, ProgramLoadResult( |
117 GLuint program, | 118 GLuint program, |
118 Shader* shader_a, | 119 Shader* shader_a, |
119 const ShaderTranslatorInterface* translator_a, | |
120 Shader* shader_b, | 120 Shader* shader_b, |
121 const ShaderTranslatorInterface* translator_b, | |
122 const LocationMap* bind_attrib_location_map, | 121 const LocationMap* bind_attrib_location_map, |
123 const ShaderCacheCallback& callback)); | 122 const ShaderCacheCallback& callback)); |
124 | 123 |
125 MOCK_METHOD7(SaveLinkedProgram, void( | 124 MOCK_METHOD5(SaveLinkedProgram, void( |
126 GLuint program, | 125 GLuint program, |
127 const Shader* shader_a, | 126 const Shader* shader_a, |
128 const ShaderTranslatorInterface* translator_a, | |
129 const Shader* shader_b, | 127 const Shader* shader_b, |
130 const ShaderTranslatorInterface* translator_b, | |
131 const LocationMap* bind_attrib_location_map, | 128 const LocationMap* bind_attrib_location_map, |
132 const ShaderCacheCallback& callback)); | 129 const ShaderCacheCallback& callback)); |
133 MOCK_METHOD1(LoadProgram, void(const std::string&)); | 130 MOCK_METHOD1(LoadProgram, void(const std::string&)); |
134 | 131 |
135 private: | 132 private: |
136 MOCK_METHOD0(ClearBackend, void()); | 133 MOCK_METHOD0(ClearBackend, void()); |
137 }; | 134 }; |
138 | 135 |
139 class MockMemoryTracker : public MemoryTracker { | 136 class MockMemoryTracker : public MemoryTracker { |
140 public: | 137 public: |
141 MockMemoryTracker(); | 138 MockMemoryTracker(); |
142 | 139 |
143 MOCK_METHOD3(TrackMemoryAllocatedChange, void( | 140 MOCK_METHOD3(TrackMemoryAllocatedChange, void( |
144 size_t old_size, size_t new_size, Pool pool)); | 141 size_t old_size, size_t new_size, Pool pool)); |
145 MOCK_METHOD1(EnsureGPUMemoryAvailable, bool(size_t size_needed)); | 142 MOCK_METHOD1(EnsureGPUMemoryAvailable, bool(size_t size_needed)); |
146 | 143 |
147 private: | 144 private: |
148 friend class ::testing::StrictMock<MockMemoryTracker>; | 145 friend class ::testing::StrictMock<MockMemoryTracker>; |
149 friend class base::RefCounted< ::testing::StrictMock<MockMemoryTracker> >; | 146 friend class base::RefCounted< ::testing::StrictMock<MockMemoryTracker> >; |
150 virtual ~MockMemoryTracker(); | 147 virtual ~MockMemoryTracker(); |
151 }; | 148 }; |
152 | 149 |
153 } // namespace gles2 | 150 } // namespace gles2 |
154 } // namespace gpu | 151 } // namespace gpu |
155 | 152 |
156 #endif // GPU_COMMAND_BUFFER_SERVICE_MOCKS_H_ | 153 #endif // GPU_COMMAND_BUFFER_SERVICE_MOCKS_H_ |
OLD | NEW |