OLD | NEW |
1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 2011 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 #ifndef CC_TEST_LAYER_TREE_TEST_H_ | 5 #ifndef CC_TEST_LAYER_TREE_TEST_H_ |
6 #define CC_TEST_LAYER_TREE_TEST_H_ | 6 #define CC_TEST_LAYER_TREE_TEST_H_ |
7 | 7 |
8 #include "base/memory/ref_counted.h" | 8 #include "base/memory/ref_counted.h" |
9 #include "base/threading/thread.h" | 9 #include "base/threading/thread.h" |
10 #include "cc/animation/animation_delegate.h" | 10 #include "cc/animation/animation_delegate.h" |
(...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
205 }; | 205 }; |
206 | 206 |
207 } // namespace cc | 207 } // namespace cc |
208 | 208 |
209 #define SINGLE_THREAD_DIRECT_RENDERER_TEST_F(TEST_FIXTURE_NAME) \ | 209 #define SINGLE_THREAD_DIRECT_RENDERER_TEST_F(TEST_FIXTURE_NAME) \ |
210 TEST_F(TEST_FIXTURE_NAME, RunSingleThread_DirectRenderer) { \ | 210 TEST_F(TEST_FIXTURE_NAME, RunSingleThread_DirectRenderer) { \ |
211 RunTest(CompositorMode::SINGLE_THREADED, false); \ | 211 RunTest(CompositorMode::SINGLE_THREADED, false); \ |
212 } \ | 212 } \ |
213 class SingleThreadDirectImplNeedsSemicolon##TEST_FIXTURE_NAME {} | 213 class SingleThreadDirectImplNeedsSemicolon##TEST_FIXTURE_NAME {} |
214 | 214 |
215 #define SINGLE_THREAD_DELEGATING_RENDERER_TEST_F(TEST_FIXTURE_NAME) \ | 215 #define SINGLE_THREAD_TEST_F(TEST_FIXTURE_NAME) \ |
216 TEST_F(TEST_FIXTURE_NAME, RunSingleThread_DelegatingRenderer) { \ | 216 TEST_F(TEST_FIXTURE_NAME, RunSingleThread_DelegatingRenderer) { \ |
217 RunTest(CompositorMode::SINGLE_THREADED, true); \ | 217 RunTest(CompositorMode::SINGLE_THREADED, true); \ |
218 } \ | 218 } \ |
219 class SingleThreadDelegatingImplNeedsSemicolon##TEST_FIXTURE_NAME {} | 219 class SingleThreadDelegatingImplNeedsSemicolon##TEST_FIXTURE_NAME {} |
220 | 220 |
221 #define SINGLE_THREAD_TEST_F(TEST_FIXTURE_NAME) \ | |
222 SINGLE_THREAD_DIRECT_RENDERER_TEST_F(TEST_FIXTURE_NAME); \ | |
223 SINGLE_THREAD_DELEGATING_RENDERER_TEST_F(TEST_FIXTURE_NAME) | |
224 | |
225 #define MULTI_THREAD_DIRECT_RENDERER_TEST_F(TEST_FIXTURE_NAME) \ | 221 #define MULTI_THREAD_DIRECT_RENDERER_TEST_F(TEST_FIXTURE_NAME) \ |
226 TEST_F(TEST_FIXTURE_NAME, RunMultiThread_DirectRenderer) { \ | 222 TEST_F(TEST_FIXTURE_NAME, RunMultiThread_DirectRenderer) { \ |
227 RunTest(CompositorMode::THREADED, false); \ | 223 RunTest(CompositorMode::THREADED, false); \ |
228 } \ | 224 } \ |
229 class MultiThreadDirectImplNeedsSemicolon##TEST_FIXTURE_NAME {} | 225 class MultiThreadDirectImplNeedsSemicolon##TEST_FIXTURE_NAME {} |
230 | 226 |
231 #define MULTI_THREAD_DELEGATING_RENDERER_TEST_F(TEST_FIXTURE_NAME) \ | 227 #define MULTI_THREAD_TEST_F(TEST_FIXTURE_NAME) \ |
232 TEST_F(TEST_FIXTURE_NAME, RunMultiThread_DelegatingRenderer) { \ | 228 TEST_F(TEST_FIXTURE_NAME, RunMultiThread_DelegatingRenderer) { \ |
233 RunTest(CompositorMode::THREADED, true); \ | 229 RunTest(CompositorMode::THREADED, true); \ |
234 } \ | 230 } \ |
235 class MultiThreadDelegatingImplNeedsSemicolon##TEST_FIXTURE_NAME {} | 231 class MultiThreadDelegatingImplNeedsSemicolon##TEST_FIXTURE_NAME {} |
236 | 232 |
237 #define MULTI_THREAD_TEST_F(TEST_FIXTURE_NAME) \ | |
238 MULTI_THREAD_DIRECT_RENDERER_TEST_F(TEST_FIXTURE_NAME); \ | |
239 MULTI_THREAD_DELEGATING_RENDERER_TEST_F(TEST_FIXTURE_NAME) | |
240 | |
241 // The Remote mode tests don't need to run for delegated renderer. | 233 // The Remote mode tests don't need to run for delegated renderer. |
242 #define REMOTE_DIRECT_RENDERER_TEST_F(TEST_FIXTURE_NAME) \ | 234 #define REMOTE_DIRECT_RENDERER_TEST_F(TEST_FIXTURE_NAME) \ |
243 TEST_F(TEST_FIXTURE_NAME, RunRemote_DirectRenderer) { \ | 235 TEST_F(TEST_FIXTURE_NAME, RunRemote_DirectRenderer) { \ |
244 RunTest(CompositorMode::REMOTE, false); \ | 236 RunTest(CompositorMode::REMOTE, false); \ |
245 } \ | 237 } \ |
246 class RemoteDirectImplNeedsSemicolon##TEST_FIXTURE_NAME {} | 238 class RemoteDirectImplNeedsSemicolon##TEST_FIXTURE_NAME {} |
247 | 239 |
248 #define SINGLE_AND_MULTI_THREAD_DIRECT_RENDERER_TEST_F(TEST_FIXTURE_NAME) \ | 240 #define SINGLE_AND_MULTI_THREAD_DIRECT_RENDERER_TEST_F(TEST_FIXTURE_NAME) \ |
249 SINGLE_THREAD_DIRECT_RENDERER_TEST_F(TEST_FIXTURE_NAME); \ | 241 SINGLE_THREAD_DIRECT_RENDERER_TEST_F(TEST_FIXTURE_NAME); \ |
250 MULTI_THREAD_DIRECT_RENDERER_TEST_F(TEST_FIXTURE_NAME) | 242 MULTI_THREAD_DIRECT_RENDERER_TEST_F(TEST_FIXTURE_NAME) |
251 | 243 |
252 #define SINGLE_AND_MULTI_THREAD_DELEGATING_RENDERER_TEST_F(TEST_FIXTURE_NAME) \ | 244 #define SINGLE_AND_MULTI_THREAD_TEST_F(TEST_FIXTURE_NAME) \ |
253 SINGLE_THREAD_DELEGATING_RENDERER_TEST_F(TEST_FIXTURE_NAME); \ | 245 SINGLE_THREAD_TEST_F(TEST_FIXTURE_NAME); \ |
254 MULTI_THREAD_DELEGATING_RENDERER_TEST_F(TEST_FIXTURE_NAME) | 246 MULTI_THREAD_TEST_F(TEST_FIXTURE_NAME) |
255 | |
256 #define SINGLE_AND_MULTI_THREAD_TEST_F(TEST_FIXTURE_NAME) \ | |
257 SINGLE_AND_MULTI_THREAD_DIRECT_RENDERER_TEST_F(TEST_FIXTURE_NAME); \ | |
258 SINGLE_AND_MULTI_THREAD_DELEGATING_RENDERER_TEST_F(TEST_FIXTURE_NAME) | |
259 | 247 |
260 // Some tests want to control when notify ready for activation occurs, | 248 // Some tests want to control when notify ready for activation occurs, |
261 // but this is not supported in the single-threaded case. | 249 // but this is not supported in the single-threaded case. |
262 #define MULTI_THREAD_BLOCKNOTIFY_TEST_F(TEST_FIXTURE_NAME) \ | 250 #define MULTI_THREAD_BLOCKNOTIFY_TEST_F(TEST_FIXTURE_NAME) \ |
263 MULTI_THREAD_TEST_F(TEST_FIXTURE_NAME) | 251 MULTI_THREAD_TEST_F(TEST_FIXTURE_NAME) |
264 | 252 |
265 #endif // CC_TEST_LAYER_TREE_TEST_H_ | 253 #endif // CC_TEST_LAYER_TREE_TEST_H_ |
OLD | NEW |