Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 # Copyright 2015 The Chromium Authors. All rights reserved. | 1 # Copyright 2015 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 import("//chromecast/build/tests/cast_test.gni") | |
| 5 import("//chromecast/chromecast.gni") | 6 import("//chromecast/chromecast.gni") |
| 6 import("//build/config/features.gni") | 7 import("//build/config/features.gni") |
| 7 import("//build/config/ui.gni") | 8 import("//build/config/ui.gni") |
| 8 import("//testing/test.gni") | |
| 9 import("//tools/grit/repack.gni") | 9 import("//tools/grit/repack.gni") |
| 10 import("//ui/ozone/ozone.gni") | 10 import("//ui/ozone/ozone.gni") |
| 11 | 11 |
| 12 declare_args() { | 12 declare_args() { |
| 13 # TODO(slan): This most likely needs to be moved into a .gni file. | 13 # TODO(slan): This most likely needs to be moved into a .gni file. |
| 14 use_chromecast_webui = true | 14 use_chromecast_webui = true |
| 15 } | 15 } |
| 16 | 16 |
| 17 # TODO(slan): This target is being used far too broadly. We should reduce the | 17 # TODO(slan): This target is being used far too broadly. We should reduce the |
| 18 # uses of this config to targets that actually need it. (b/23814594) | 18 # uses of this config to targets that actually need it. (b/23814594) |
| 19 config("config") { | 19 config("config") { |
| 20 defines = [] | 20 defines = [] |
| 21 | 21 |
| 22 if (use_playready) { | 22 if (use_playready) { |
| 23 defines += [ "PLAYREADY_CDM_AVAILABLE" ] | 23 defines += [ "PLAYREADY_CDM_AVAILABLE" ] |
| 24 } | 24 } |
| 25 } | 25 } |
| 26 | 26 |
| 27 component("chromecast") { | 27 component("chromecast") { |
| 28 deps = [ | 28 deps = [ |
| 29 "//chromecast/base", | 29 "//chromecast/base", |
| 30 "//chromecast/base/metrics", | 30 "//chromecast/base/metrics", |
| 31 "//chromecast/crash", | 31 "//chromecast/crash", |
| 32 "//chromecast/media", | 32 "//chromecast/media", |
| 33 ] | 33 ] |
| 34 } | 34 } |
| 35 | 35 |
| 36 group("chromecast_unittests") { | 36 # A list of all public test() binaries. This is an organizational target that |
| 37 testonly = true | 37 # cannot be built directly. |
|
mbjorge
2015/10/01 17:11:40
Can you add a note here that also says which targe
slan
2015/10/01 20:08:03
Done.
| |
| 38 | 38 cast_test_group("cast_tests") { |
|
alokp
2015/10/01 13:13:46
If both of these templates are only being used onc
slan
2015/10/01 14:08:56
Exactly. There will be 2 cast_test_group()s: one f
| |
| 39 deps = [ | 39 tests = [ |
| 40 # TODO(slan): Get this target building and comment it in. | 40 "//base:base_unittests", |
| 41 # "//chromecast/app:cast_shell_unittests", | |
| 42 "//chromecast/base:cast_base_unittests", | 41 "//chromecast/base:cast_base_unittests", |
| 43 "//chromecast/crypto:cast_crypto_unittests", | 42 "//chromecast/crypto:cast_crypto_unittests", |
| 44 "//chromecast/crash:cast_crash_unittests", | 43 "//chromecast/crash:cast_crash_unittests", |
| 45 "//chromecast/media:cast_media_unittests", | 44 "//content/content_unittests", |
|
mbjorge
2015/10/01 17:11:40
Is this target supposed to be //content/test:conte
slan
2015/10/01 20:08:03
Yes, added a mechanism to ensure that the target n
| |
| 45 "//crypto:crypto_unittests", | |
| 46 "//ipc:ipc_tests", | |
| 47 "//jingle:jingle_unittests", | |
| 48 "//media:media_unittests", | |
| 49 "//media/midi:midi_unittests", | |
| 50 "//net:net_unittests", | |
| 51 "//ppapi/ppapi_internal:ppapi_unittests", | |
| 52 "//sandbox:sandbox_linux_unittests", | |
| 53 "//sql:sql_unittests", | |
| 54 "//sync:sync_unit_tests", | |
| 55 "//third_party/cacheinvalidation:cacheinvalidation_unittests", | |
| 56 "//ui/base:ui_base_unittests", | |
| 57 "//url:url_unittests", | |
| 46 ] | 58 ] |
| 59 | |
| 60 filters = [] | |
| 61 | |
| 62 if (target_cpu == "arm" && target_os == "linux") { | |
|
mbjorge
2015/10/01 17:11:39
I like the filters being here. I don't think it wo
slan
2015/10/01 20:08:03
Agreed.
| |
| 63 filters += [ | |
| 64 # Run net_unittests first to avoid random failures due to slow python star tup | |
| 65 # KeygenHandlerTest.SmokeTest and KeygenHandlerTest.ConcurrencyTest fail d ue to | |
| 66 # readonly certdb (b/8153161) | |
| 67 # URLRequestTestHTTP.GetTest_ManyCookies takes roughly 55s to run. Increas e | |
| 68 # timeout to 90s from 45s to allow it to pass (b/19821476) | |
| 69 # ProxyScriptFetcherImplTest.HttpMimeType is flaking (b/19848784) | |
| 70 # Running a batch of net_unittests has high overhead. Run tests in batches of 25 to reduce number of batches (b/23156294). | |
| 71 "net_unittests --gtest_filter=-KeygenHandlerTest.SmokeTest:KeygenHandlerTe st.ConcurrencyTest:ProxyScriptFetcherImplTest.HttpMimeType --test-launcher-timeo ut=90000 --test-launcher-batch-limit=25", | |
| 72 | |
| 73 # Disable ProcessMetricsTest.GetNumberOfThreads (b/15610509) | |
| 74 # Disable ProcessUtilTest.* (need to define OS_ANDROID) | |
| 75 # Disable StackContainer.BufferAlignment (don't support 16-byte alignment) | |
| 76 # Disable SystemMetrics2Test.GetSystemMemoryInfo (buffers>0 can't be guara nteed) | |
| 77 "base_unittests --gtest_filter=-ProcessMetricsTest.GetNumberOfThreads:Proc essUtilTest.*:StackContainer.BufferAlignment:SystemMetrics2Test.GetSystemMemoryI nfo", | |
| 78 | |
| 79 # DesktopCaptureDeviceTest.*: No capture device on Eureka | |
| 80 # Disable PepperGamepadHostTest.WaitForReply (pepper not supported on Eure ka) | |
| 81 # Disable GpuDataManagerImplPrivateTest.SetGLStrings and | |
| 82 # RenderWidgetHostTest.Background because we disable the blacklist to enab le WebGL (b/16142554) | |
| 83 "content_unittests --gtest_filter=-DOMStorageDatabaseTest.TestCanOpenAndRe adWebCoreDatabase:DesktopCaptureDeviceTest.Capture:GamepadProviderTest.PollingAc cess:GpuDataManagerImplPrivateTest.SetGLStrings:PepperGamepadHostTest.WaitForRep ly:RenderWidgetHostTest.Background", | |
| 84 | |
| 85 # Disable VP9 related tests (b/18593324) | |
| 86 # PipelineIntegrationTest.BasicPlayback_MediaSource_VP9_WebM | |
| 87 # PipelineIntegrationTest.BasicPlayback_VideoOnly_VP9_WebM | |
| 88 # PipelineIntegrationTest.BasicPlayback_VP9* | |
| 89 # PipelineIntegrationTest.P444_VP9_WebM | |
| 90 # Disable VP8A tests (b/18593324) | |
| 91 # PipelineIntegrationTest.BasicPlayback_VP8A* | |
| 92 # Disable OpusAudioDecoderTest/AudioDecoderTest.ProduceAudioSamples/0 (uni t | |
| 93 # test fails when Opus decoder uses fixed-point) | |
| 94 # Due to b/16456550, disable the following four test cases: | |
| 95 # AudioOutputControllerTest.PlayDivertSwitchDeviceRevertClose | |
| 96 # AudioOutputControllerTest.PlaySwitchDeviceClose | |
| 97 # AudioStreamHandlerTest.Play | |
| 98 # SoundsManagerTest.Play | |
| 99 # Disable AudioStreamHandlerTest.ConsecutivePlayRequests (b/16539293) | |
| 100 "media_unittests --gtest_filter=-AudioOutputControllerTest.PlayDivertSwitc hDeviceRevertClose:AudioOutputControllerTest.PlaySwitchDeviceClose:AudioStreamHa ndlerTest.Play:AudioStreamHandlerTest.ConsecutivePlayRequests:PipelineIntegratio nTest.BasicPlayback_MediaSource_VP9_WebM:PipelineIntegrationTest.BasicPlayback_V ideoOnly_VP9_WebM:PipelineIntegrationTest.BasicPlayback_VP9*:PipelineIntegration Test.P444_VP9_WebM:PipelineIntegrationTest.BasicPlayback_VP8A*:OpusAudioDecoderT est/AudioDecoderTest.ProduceAudioSamples/0:SoundsManagerTest.Play", | |
| 101 "sync_unit_tests --gtest_filter=-SyncHttpBridgeTest.*", | |
| 102 | |
| 103 # DoAppendUTF8Invalid fails because of dcheck_always_on flag in Eng builds | |
| 104 "url_unittests --gtest_filter=-URLCanonTest.DoAppendUTF8Invalid", | |
| 105 ] | |
| 106 } else { | |
|
mbjorge
2015/10/01 17:11:39
maybe copy over the "#else x86 or android" comment
slan
2015/10/01 20:08:03
Done.
| |
| 107 filters += [ | |
| 108 # Disable PipelineIntegrationTest.BasicPlayback_MediaSource_VP9_WebM (not supported) | |
| 109 "media_unittests --gtest_filter=-PipelineIntegrationTest.BasicPlayback_Med iaSource_VP9_WebM", | |
| 110 ] | |
| 111 } | |
| 112 | |
| 113 if (!is_android) { | |
| 114 tests += [ | |
| 115 "//chromecast/app:cast_shell_unittests", | |
| 116 "//chromecast/browser:cast_shell_broswer_test", | |
| 117 "//chromecast/media:cast_media_unittests", | |
| 118 ] | |
| 119 | |
| 120 filters += [ "cast_shell_broswer_test --no-sandbox --disable-gpu" ] | |
| 121 } | |
| 122 | |
| 123 if (!disable_display) { | |
| 124 tests += [ "//gpu:gpu_unittests" ] | |
| 125 } else { | |
| 126 filters += [ | |
| 127 # These are not supported by the backend right now. b/21737919 | |
| 128 "cast_media_unittests --gtest_filter=-AudioVideoPipelineDeviceTest.VorbisP layback:AudioVideoPipelineDeviceTest.WebmPlayback", | |
| 129 ] | |
| 130 } | |
| 131 } | |
| 132 | |
| 133 # Creates the build and run lists for all test targets. | |
| 134 cast_test_group_list("cast_test_lists") { | |
| 135 build_list_path = "$root_out_dir/tests/build_test_list.txt" | |
| 136 run_list_path = "$root_out_dir/tests/run_test_list.txt" | |
| 137 additional_options = [ "--ozone-platform=test" ] | |
| 138 | |
| 139 test_groups = [ ":cast_tests" ] | |
| 140 | |
| 141 if (chromecast_branding != "public") { | |
| 142 test_groups += [ "//chromecast/internal:internal_unittests" ] | |
|
mbjorge
2015/10/01 17:11:40
the name 'internal_unittests' looks more like a te
slan
2015/10/01 20:08:03
Done.
| |
| 143 } | |
| 47 } | 144 } |
| 48 | 145 |
| 49 source_set("cast_shell_common") { | 146 source_set("cast_shell_common") { |
| 50 deps = [ | 147 deps = [ |
| 51 # TODO(slan): add ":cast_locales_pak" (b/22959691) | 148 # TODO(slan): add ":cast_locales_pak" (b/22959691) |
| 52 ":cast_shell_pak", | 149 ":cast_shell_pak", |
| 53 "//chromecast/app", | 150 "//chromecast/app", |
| 54 "//chromecast/browser", | 151 "//chromecast/browser", |
| 55 "//chromecast/common", | 152 "//chromecast/common", |
| 56 "//chromecast/common/media", | 153 "//chromecast/common/media", |
| (...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 129 "$root_gen_dir/chromecast/internal/webui/cast_webui_resources.pak", | 226 "$root_gen_dir/chromecast/internal/webui/cast_webui_resources.pak", |
| 130 ] | 227 ] |
| 131 | 228 |
| 132 deps += [ | 229 deps += [ |
| 133 "//chromecast/internal/webui:chromecast_app_resources", | 230 "//chromecast/internal/webui:chromecast_app_resources", |
| 134 "//chromecast/internal/webui:chromecast_webui_resources", | 231 "//chromecast/internal/webui:chromecast_webui_resources", |
| 135 ] | 232 ] |
| 136 } | 233 } |
| 137 } | 234 } |
| 138 } | 235 } |
| OLD | NEW |