cc: Implement shared worker contexts.
[chromium-blink-merge.git] / cc / cc_tests.gyp
blob0ce77be5392b26865ba9170f26880f5c69261fe9
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
3 # found in the LICENSE file.
6   'variables': {
7     'chromium_code': 1,
8     'cc_unit_tests_source_files': [
9       'animation/animation_host_unittest.cc',
10       'animation/animation_player_unittest.cc',
11       'animation/animation_timeline_unittest.cc',
12       'animation/animation_unittest.cc',
13       'animation/element_animations_unittest.cc',
14       'animation/keyframed_animation_curve_unittest.cc',
15       'animation/layer_animation_controller_unittest.cc',
16       'animation/scroll_offset_animation_curve_unittest.cc',
17       'animation/scrollbar_animation_controller_linear_fade_unittest.cc',
18       'animation/scrollbar_animation_controller_thinning_unittest.cc',
19       'animation/transform_operations_unittest.cc',
20       'base/delayed_unique_notifier_unittest.cc',
21       'base/float_quad_unittest.cc',
22       'base/histograms_unittest.cc',
23       'base/list_container_unittest.cc',
24       'base/math_util_unittest.cc',
25       'base/region_unittest.cc',
26       'base/rolling_time_delta_history_unittest.cc',
27       'base/scoped_ptr_vector_unittest.cc',
28       'base/simple_enclosed_region_unittest.cc',
29       'base/tiling_data_unittest.cc',
30       'base/unique_notifier_unittest.cc',
31       'debug/frame_timing_tracker_unittest.cc',
32       'debug/micro_benchmark_controller_unittest.cc',
33       'debug/rendering_stats_unittest.cc',
34       'input/scroll_state_unittest.cc',
35       'input/top_controls_manager_unittest.cc',
36       'layers/delegated_frame_provider_unittest.cc',
37       'layers/delegated_frame_resource_collection_unittest.cc',
38       'layers/delegated_renderer_layer_impl_unittest.cc',
39       'layers/delegated_renderer_layer_unittest.cc',
40       'layers/heads_up_display_layer_impl_unittest.cc',
41       'layers/heads_up_display_unittest.cc',
42       'layers/io_surface_layer_impl_unittest.cc',
43       'layers/layer_impl_unittest.cc',
44       'layers/layer_iterator_unittest.cc',
45       'layers/layer_position_constraint_unittest.cc',
46       'layers/layer_unittest.cc',
47       'layers/layer_utils_unittest.cc',
48       'layers/nine_patch_layer_impl_unittest.cc',
49       'layers/nine_patch_layer_unittest.cc',
50       'layers/painted_scrollbar_layer_impl_unittest.cc',
51       'layers/picture_image_layer_impl_unittest.cc',
52       'layers/picture_image_layer_unittest.cc',
53       'layers/picture_layer_impl_unittest.cc',
54       'layers/picture_layer_unittest.cc',
55       'layers/render_surface_impl_unittest.cc',
56       'layers/render_surface_unittest.cc',
57       'layers/scrollbar_layer_unittest.cc',
58       'layers/solid_color_layer_impl_unittest.cc',
59       'layers/solid_color_scrollbar_layer_impl_unittest.cc',
60       'layers/surface_layer_impl_unittest.cc',
61       'layers/surface_layer_unittest.cc',
62       'layers/texture_layer_impl_unittest.cc',
63       'layers/texture_layer_unittest.cc',
64       'layers/ui_resource_layer_impl_unittest.cc',
65       'layers/ui_resource_layer_unittest.cc',
66       'layers/video_frame_provider_client_impl_unittest.cc',
67       'layers/video_layer_impl_unittest.cc',
68       'output/begin_frame_args_unittest.cc',
69       'output/bsp_tree_unittest.cc',
70       'output/delegating_renderer_unittest.cc',
71       'output/filter_operations_unittest.cc',
72       'output/gl_renderer_unittest.cc',
73       'output/layer_quad_unittest.cc',
74       'output/output_surface_unittest.cc',
75       'output/overlay_unittest.cc',
76       'output/renderer_pixeltest.cc',
77       'output/renderer_unittest.cc',
78       'output/shader_unittest.cc',
79       'output/software_renderer_unittest.cc',
80       'output/texture_mailbox_deleter_unittest.cc',
81       'playback/discardable_image_map_unittest.cc',
82       'playback/display_item_list_unittest.cc',
83       'playback/display_list_raster_source_unittest.cc',
84       'playback/display_list_recording_source_unittest.cc',
85       'playback/picture_pile_impl_unittest.cc',
86       'playback/picture_pile_unittest.cc',
87       'playback/picture_unittest.cc',
88       'playback/recording_source_unittest.cc',
89       'quads/draw_polygon_unittest.cc',
90       'quads/draw_quad_unittest.cc',
91       'quads/render_pass_unittest.cc',
92       'raster/scoped_gpu_raster_unittest.cc',
93       'raster/task_graph_runner_unittest.cc',
94       'raster/texture_compressor_etc1_unittest.cc',
95       'raster/tile_task_worker_pool_unittest.cc',
96       'resources/platform_color_unittest.cc',
97       'resources/resource_pool_unittest.cc',
98       'resources/resource_provider_unittest.cc',
99       'resources/resource_util_unittest.cc',
100       'resources/scoped_resource_unittest.cc',
101       'resources/video_resource_updater_unittest.cc',
102       'scheduler/begin_frame_source_unittest.cc',
103       'scheduler/compositor_timing_history_unittest.cc',
104       'scheduler/delay_based_time_source_unittest.cc',
105       'scheduler/scheduler_state_machine_unittest.cc',
106       'scheduler/scheduler_unittest.cc',
107       'test/layer_tree_json_parser_unittest.cc',
108       'test/ordered_simple_task_runner_unittest.cc',
109       'test/test_web_graphics_context_3d_unittest.cc',
110       'tiles/picture_layer_tiling_set_unittest.cc',
111       'tiles/picture_layer_tiling_unittest.cc',
112       'tiles/tile_manager_unittest.cc',
113       'tiles/tile_priority_unittest.cc',
114       'trees/blocking_task_runner_unittest.cc',
115       'trees/damage_tracker_unittest.cc',
116       'trees/layer_tree_host_common_unittest.cc',
117       'trees/layer_tree_host_impl_unittest.cc',
118       'trees/layer_tree_host_pixeltest_blending.cc',
119       'trees/layer_tree_host_pixeltest_filters.cc',
120       'trees/layer_tree_host_pixeltest_masks.cc',
121       'trees/layer_tree_host_pixeltest_readback.cc',
122       'trees/layer_tree_host_pixeltest_synchronous.cc',
123       'trees/layer_tree_host_pixeltest_tiles.cc',
124       'trees/layer_tree_host_unittest.cc',
125       'trees/layer_tree_host_unittest_animation.cc',
126       'trees/layer_tree_host_unittest_animation_timelines.cc',
127       'trees/layer_tree_host_unittest_context.cc',
128       'trees/layer_tree_host_unittest_copyrequest.cc',
129       'trees/layer_tree_host_unittest_damage.cc',
130       'trees/layer_tree_host_unittest_delegated.cc',
131       'trees/layer_tree_host_unittest_occlusion.cc',
132       'trees/layer_tree_host_unittest_picture.cc',
133       'trees/layer_tree_host_unittest_proxy.cc',
134       'trees/layer_tree_host_unittest_scroll.cc',
135       'trees/layer_tree_host_unittest_video.cc',
136       'trees/layer_tree_impl_unittest.cc',
137       'trees/occlusion_tracker_unittest.cc',
138       'trees/occlusion_unittest.cc',
139       'trees/property_tree_unittest.cc',
140       'trees/tree_synchronizer_unittest.cc',
141     ],
142     'cc_surfaces_unit_tests_source_files': [
143       'surfaces/display_unittest.cc',
144       'surfaces/display_scheduler_unittest.cc',
145       'surfaces/surface_aggregator_test_helpers.cc',
146       'surfaces/surface_aggregator_test_helpers.h',
147       'surfaces/surface_aggregator_unittest.cc',
148       'surfaces/surface_display_output_surface_unittest.cc',
149       'surfaces/surface_factory_unittest.cc',
150       'surfaces/surface_hittest_unittest.cc',
151       'surfaces/surface_unittest.cc',
152       'surfaces/surfaces_pixeltest.cc',
153     ],
154     'cc_tests_support_files': [
155       'test/animation_test_common.cc',
156       'test/animation_test_common.h',
157       'test/animation_timelines_test_common.cc',
158       'test/animation_timelines_test_common.h',
159       'test/begin_frame_args_test.cc',
160       'test/begin_frame_args_test.h',
161       'test/failure_output_surface.cc',
162       'test/failure_output_surface.h',
163       'test/fake_content_layer_client.cc',
164       'test/fake_content_layer_client.h',
165       'test/fake_delegated_renderer_layer.cc',
166       'test/fake_delegated_renderer_layer.h',
167       'test/fake_delegated_renderer_layer_impl.cc',
168       'test/fake_delegated_renderer_layer_impl.h',
169       'test/fake_display_list_recording_source.cc',
170       'test/fake_display_list_recording_source.h',
171       'test/fake_external_begin_frame_source.cc',
172       'test/fake_external_begin_frame_source.h',
173       'test/fake_impl_proxy.h',
174       'test/fake_layer_tree_host.cc',
175       'test/fake_layer_tree_host.h',
176       'test/fake_layer_tree_host_client.cc',
177       'test/fake_layer_tree_host_client.h',
178       'test/fake_layer_tree_host_impl.cc',
179       'test/fake_layer_tree_host_impl.h',
180       'test/fake_layer_tree_host_impl_client.cc',
181       'test/fake_layer_tree_host_impl_client.h',
182       'test/fake_output_surface.cc',
183       'test/fake_output_surface.h',
184       'test/fake_output_surface_client.cc',
185       'test/fake_output_surface_client.h',
186       'test/fake_painted_scrollbar_layer.cc',
187       'test/fake_painted_scrollbar_layer.h',
188       'test/fake_picture_layer.cc',
189       'test/fake_picture_layer.h',
190       'test/fake_picture_layer_impl.cc',
191       'test/fake_picture_layer_impl.h',
192       'test/fake_picture_layer_tiling_client.cc',
193       'test/fake_picture_layer_tiling_client.h',
194       'test/fake_picture_pile.cc',
195       'test/fake_picture_pile.h',
196       'test/fake_picture_pile_impl.cc',
197       'test/fake_picture_pile_impl.h',
198       'test/fake_proxy.cc',
199       'test/fake_proxy.h',
200       'test/fake_renderer_client.cc',
201       'test/fake_renderer_client.h',
202       'test/fake_rendering_stats_instrumentation.h',
203       'test/fake_resource_provider.h',
204       'test/fake_scoped_ui_resource.cc',
205       'test/fake_scoped_ui_resource.h',
206       'test/fake_scrollbar.cc',
207       'test/fake_scrollbar.h',
208       'test/fake_tile_manager.cc',
209       'test/fake_tile_manager.h',
210       'test/fake_tile_manager_client.cc',
211       'test/fake_tile_manager_client.h',
212       'test/fake_ui_resource_layer_tree_host_impl.cc',
213       'test/fake_ui_resource_layer_tree_host_impl.h',
214       'test/fake_video_frame_provider.cc',
215       'test/fake_video_frame_provider.h',
216       'test/geometry_test_utils.cc',
217       'test/geometry_test_utils.h',
218       'test/layer_test_common.cc',
219       'test/layer_test_common.h',
220       'test/layer_tree_host_common_test.cc',
221       'test/layer_tree_host_common_test.h',
222       'test/layer_tree_json_parser.cc',
223       'test/layer_tree_json_parser.h',
224       'test/layer_tree_pixel_resource_test.cc',
225       'test/layer_tree_pixel_resource_test.h',
226       'test/layer_tree_pixel_test.cc',
227       'test/layer_tree_pixel_test.h',
228       'test/layer_tree_test.cc',
229       'test/layer_tree_test.h',
230       'test/mock_occlusion_tracker.h',
231       'test/ordered_simple_task_runner.cc',
232       'test/ordered_simple_task_runner.h',
233       'test/ordered_texture_map.cc',
234       'test/ordered_texture_map.h',
235       'test/paths.cc',
236       'test/paths.h',
237       'test/pixel_comparator.cc',
238       'test/pixel_comparator.h',
239       'test/pixel_test.cc',
240       'test/pixel_test.h',
241       'test/pixel_test_output_surface.cc',
242       'test/pixel_test_output_surface.h',
243       'test/pixel_test_software_output_device.cc',
244       'test/pixel_test_software_output_device.h',
245       'test/pixel_test_utils.cc',
246       'test/pixel_test_utils.h',
247       'test/render_pass_test_utils.cc',
248       'test/render_pass_test_utils.h',
249       'test/scheduler_test_common.cc',
250       'test/scheduler_test_common.h',
251       'test/skia_common.cc',
252       'test/skia_common.h',
253       'test/solid_color_content_layer_client.cc',
254       'test/solid_color_content_layer_client.h',
255       'test/test_context_provider.cc',
256       'test/test_context_provider.h',
257       'test/test_context_support.cc',
258       'test/test_context_support.h',
259       'test/test_gles2_interface.cc',
260       'test/test_gles2_interface.h',
261       'test/test_gpu_memory_buffer_manager.cc',
262       'test/test_gpu_memory_buffer_manager.h',
263       'test/test_image_factory.cc',
264       'test/test_image_factory.h',
265       'test/test_in_process_context_provider.cc',
266       'test/test_in_process_context_provider.h',
267       'test/test_occlusion_tracker.h',
268       'test/test_shared_bitmap_manager.cc',
269       'test/test_shared_bitmap_manager.h',
270       'test/test_task_graph_runner.cc',
271       'test/test_task_graph_runner.h',
272       'test/test_texture.cc',
273       'test/test_texture.h',
274       'test/test_tile_priorities.cc',
275       'test/test_tile_priorities.h',
276       'test/test_web_graphics_context_3d.cc',
277       'test/test_web_graphics_context_3d.h',
278     ],
279   },
280   'targets': [
281     {
282       'target_name': 'cc_unittests',
283       'type': '<(gtest_target_type)',
284       'dependencies': [
285         '../base/base.gyp:test_support_base',
286         '../gpu/command_buffer/command_buffer.gyp:gles2_utils',
287         '../gpu/gpu.gyp:gpu',
288         '../gpu/gpu.gyp:gpu_unittest_utils',
289         '../media/media.gyp:media',
290         '../skia/skia.gyp:skia',
291         '../testing/gmock.gyp:gmock',
292         '../testing/gtest.gyp:gtest',
293         '../ui/events/events.gyp:events_base',
294         '../ui/gfx/gfx.gyp:gfx',
295         '../ui/gfx/gfx.gyp:gfx_geometry',
296         'cc.gyp:cc',
297         'cc.gyp:cc_surfaces',
298         'cc_test_support',
299       ],
300       'sources': [
301         'test/cc_test_suite.cc',
302         'test/run_all_unittests.cc',
303         '<@(cc_unit_tests_source_files)',
304         '<@(cc_surfaces_unit_tests_source_files)',
305       ],
306       'include_dirs': [
307         'test',
308         '.',
309       ],
310       'conditions': [
311         ['OS == "android"',
312           {
313             'dependencies': [
314               '../testing/android/native_test.gyp:native_test_native_code',
315             ],
316           }
317         ],
318         [ 'os_posix == 1 and OS != "mac" and OS != "android" and OS != "ios"',
319           {
320             'conditions': [
321               [ 'use_allocator!="none"',
322                 {
323                   'dependencies': [
324                     '../base/allocator/allocator.gyp:allocator',
325                   ],
326                 }
327               ],
328             ],
329           }
330         ],
331       ],
332     },
333     {
334       # GN version: //cc/cc_perftests
335       'target_name': 'cc_perftests',
336       'type': '<(gtest_target_type)',
337       'dependencies': [
338         '../base/base.gyp:test_support_base',
339         '../gpu/command_buffer/command_buffer.gyp:gles2_utils',
340         '../gpu/gpu.gyp:gpu',
341         '../gpu/gpu.gyp:gpu_unittest_utils',
342         '../media/media.gyp:media',
343         '../skia/skia.gyp:skia',
344         '../testing/gmock.gyp:gmock',
345         '../testing/gtest.gyp:gtest',
346         '../testing/perf/perf_test.gyp:*',
347         '../ui/gfx/gfx.gyp:gfx',
348         '../ui/gfx/gfx.gyp:gfx_geometry',
349         'cc.gyp:cc',
350         'cc.gyp:cc_surfaces',
351         'cc_test_support',
352       ],
353       'sources': [
354         # Note: sources list duplicated in GN build.
355         'layers/layer_perftest.cc',
356         'layers/picture_layer_impl_perftest.cc',
357         'playback/picture_pile_impl_perftest.cc',
358         'quads/draw_quad_perftest.cc',
359         'raster/task_graph_runner_perftest.cc',
360         'raster/texture_compressor_perftest.cc',
361         'raster/tile_task_worker_pool_perftest.cc',
362         'surfaces/surface_aggregator_perftest.cc',
363         'test/cc_test_suite.cc',
364         'test/run_all_perftests.cc',
365         'tiles/picture_layer_tiling_perftest.cc',
366         'tiles/tile_manager_perftest.cc',
367         'trees/layer_tree_host_common_perftest.cc',
368         'trees/layer_tree_host_perftest.cc',
369         'trees/occlusion_tracker_perftest.cc',
370       ],
371       'include_dirs': [
372         'test',
373         '.',
374       ],
375       'conditions': [
376         ['OS == "android"',
377           {
378             'dependencies': [
379               '../testing/android/native_test.gyp:native_test_native_code',
380             ],
381           }
382         ],
383         # See http://crbug.com/162998#c4 for why this is needed.
384         ['OS=="linux" and use_allocator!="none"',
385           {
386             'dependencies': [
387               '../base/allocator/allocator.gyp:allocator',
388             ],
389           }
390         ],
391       ],
392     },
393     {
394       'target_name': 'cc_test_support',
395       'type': 'static_library',
396       'include_dirs': [
397         'test',
398         '.',
399         '..',
400       ],
401       'dependencies': [
402         '../base/base.gyp:base',
403         '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
404         '../gpu/command_buffer/command_buffer.gyp:gles2_utils',
405         '../gpu/gpu.gyp:gles2_c_lib',
406         '../gpu/gpu.gyp:gles2_implementation',
407         '../gpu/gpu.gyp:gl_in_process_context',
408         '../gpu/gpu.gyp:gpu',
409         '../gpu/gpu.gyp:gpu_unittest_utils',
410         '../gpu/skia_bindings/skia_bindings.gyp:gpu_skia_bindings',
411         '../skia/skia.gyp:skia',
412         '../testing/gmock.gyp:gmock',
413         '../testing/gtest.gyp:gtest',
414         '../third_party/mesa/mesa.gyp:osmesa',
415         '../ui/gfx/gfx.gyp:gfx',
416         '../ui/gfx/gfx.gyp:gfx_geometry',
417         '../ui/gfx/gfx.gyp:gfx_test_support',
418         '../ui/gl/gl.gyp:gl',
419         '../ui/gl/gl.gyp:gl_test_support',
420       ],
421       'sources': [
422         '<@(cc_tests_support_files)',
423       ],
424     },
425   ],
426   'conditions': [
427     ['OS == "android"',
428       {
429         'targets': [
430           {
431             'target_name': 'cc_unittests_apk',
432             'type': 'none',
433             'dependencies': [
434               'cc_unittests',
435             ],
436             'variables': {
437               'test_suite_name': 'cc_unittests',
438             },
439             'includes': [ '../build/apk_test.gypi' ],
440           },
441           {
442             'target_name': 'cc_perftests_apk',
443             'type': 'none',
444             'dependencies': [
445               'cc_perftests',
446             ],
447             'variables': {
448               'test_suite_name': 'cc_perftests',
449             },
450             'includes': [ '../build/apk_test.gypi' ],
451           },
452         ],
453       }
454     ],
455     ['test_isolation_mode != "noop"', {
456       'targets': [
457         {
458           'target_name': 'cc_unittests_run',
459           'type': 'none',
460           'dependencies': [
461             'cc_unittests',
462           ],
463           'includes': [
464             '../build/isolate.gypi',
465           ],
466           'sources': [
467             'cc_unittests.isolate',
468           ],
469           'conditions': [
470             # crbug.com/464062 xdisplaycheck is used to run cc_unittests_run on
471             # the linux try bots when using X11.
472             ['use_x11==1',
473               {
474                 'dependencies': [
475                   '../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
476                 ],
477               }
478             ],
479           ],
480         },
481       ],
482     }],
483   ],