OLD | NEW |
1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
5 | 5 |
6 """Generate and process code coverage. | 6 """Generate and process code coverage. |
7 | 7 |
8 TODO(jrg): rename this from coverage_posix.py to coverage_all.py! | 8 TODO(jrg): rename this from coverage_posix.py to coverage_all.py! |
9 | 9 |
10 Written for and tested on Mac, Linux, and Windows. To use this script | 10 Written for and tested on Mac, Linux, and Windows. To use this script |
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
130 can either mean hang, or can mean test takes 10x longer because we're in | 130 can either mean hang, or can mean test takes 10x longer because we're in |
131 coverage. Consider if we should increase a test timeout somewhere. | 131 coverage. Consider if we should increase a test timeout somewhere. |
132 FullscreenControllerBrowserTest.*': ditto. | 132 FullscreenControllerBrowserTest.*': ditto. |
133 PPAPITest.Fullscreen: ditto. | 133 PPAPITest.Fullscreen: ditto. |
134 OutOfProcessPPAPITest.Fullscreen: ditto. | 134 OutOfProcessPPAPITest.Fullscreen: ditto. |
135 IndexedDBLayoutTest.RegressionTests: ditto. | 135 IndexedDBLayoutTest.RegressionTests: ditto. |
136 PanelBrowserNavigatorTest.NavigateFromCrashedPanel: Fails on coverage bot. | 136 PanelBrowserNavigatorTest.NavigateFromCrashedPanel: Fails on coverage bot. |
137 StartupBrowserCreatorTest.OpenAppShortcutPanel: Fails on coverage bot. | 137 StartupBrowserCreatorTest.OpenAppShortcutPanel: Fails on coverage bot. |
138 FilePathWatcherTest.Callback: Fails with error 'Unable to terminate | 138 FilePathWatcherTest.Callback: Fails with error 'Unable to terminate |
139 process group' in process_util_posix.cc. | 139 process group' in process_util_posix.cc. |
| 140 WebGLConformanceTests.conformance_attribs_gl_enable_vertex_attrib: Fails |
| 141 with timeout (45000 ms) exceeded error. |
| 142 WebGLConformanceTests.conformance_attribs_gl_disabled_vertex_attrib: |
| 143 ditto. |
| 144 WebGLConformanceTests.conformance_attribs_gl_vertex_attrib_zero_issues: |
| 145 ditto. |
| 146 WebGLConformanceTests.conformance_attribs_gl_vertex_attrib: ditto. |
| 147 WebGLConformanceTests.conformance_attribs_gl_vertexattribpointer_offsets: |
| 148 ditto. |
| 149 WebGLConformanceTests.conformance_attribs_gl_vertexattribpointer: ditto. |
| 150 WebGLConformanceTests.conformance_buffers_buffer_bind_test: After |
| 151 disabling WebGLConformanceTests specified above, this test fails when run |
| 152 on local machine. |
| 153 WebGLConformanceTests.conformance_buffers_buffer_data_array_buffer: ditto. |
| 154 WebGLConformanceTests.conformance_buffers_index_validation_copies_indices: |
| 155 ditto. |
| 156 WebGLConformanceTests. |
| 157 conformance_buffers_index_validation_crash_with_buffer_sub_data: ditto. |
| 158 WebGLConformanceTests. |
| 159 conformance_buffers_index_validation_verifies_too_many_indices: ditto. |
| 160 WebGLConformanceTests. |
| 161 conformance_buffers_index_validation_with_resized_buffer: ditto. |
| 162 PageCycler*.*: Fails on coverage bot with "Missing test directory |
| 163 /....../slave/coverage-dbg-linux/build/src/data/page_cycler/moz" error. |
| 164 *FrameRateCompositingTest.*: Fails with |
| 165 "FATAL:chrome_content_browser_client.cc(893)] Check failed: |
| 166 command_line->HasSwitch(switches::kEnableStatsTable)." |
| 167 *FrameRateNoVsyncCanvasInternalTest.*: ditto. |
| 168 *FrameRateGpuCanvasInternalTest.*: ditto. |
| 169 TwoClientPasswordsSyncTest.DeleteAll: Fails on coverage bot. |
| 170 MigrationTwoClientTest.MigrationHellWithoutNigori: Fails with timeout |
| 171 (45000 ms) exceeded error. |
| 172 TwoClientSessionsSyncTest.DeleteActiveSession: ditto. |
| 173 MultipleClientSessionsSyncTest.EncryptedAndChanged: ditto. |
| 174 MigrationSingleClientTest.AllTypesIndividuallyTriggerNotification: ditto. |
140 | 175 |
141 """ | 176 """ |
142 gTestExclusions = { | 177 gTestExclusions = { |
143 'darwin2': { 'base_unittests': ('ProcessUtilTest.SpawnChild',), | 178 'darwin2': { 'base_unittests': ('ProcessUtilTest.SpawnChild',), |
144 'ipc_tests': ('IPCFuzzingTest.MsgBadPayloadArgs',), }, | 179 'ipc_tests': ('IPCFuzzingTest.MsgBadPayloadArgs',), }, |
145 'linux2': { 'browser_tests': | 180 'linux2': { |
146 ('*FullscreenControllerTest.*', | 181 'browser_tests': |
147 '*PageCyclerCachedBrowserTest.*', | 182 ('*FullscreenControllerTest.*', |
148 '*FullscreenControllerBrowserTest.*', | 183 '*PageCyclerCachedBrowserTest.*', |
149 'PPAPITest.Fullscreen', | 184 '*FullscreenControllerBrowserTest.*', |
150 'OutOfProcessPPAPITest.Fullscreen', | 185 'PPAPITest.Fullscreen', |
151 'IndexedDBLayoutTest.RegressionTests', | 186 'OutOfProcessPPAPITest.Fullscreen', |
152 'PanelBrowserNavigatorTest.NavigateFromCrashedPanel', | 187 'IndexedDBLayoutTest.RegressionTests', |
153 'StartupBrowserCreatorTest.OpenAppShortcutPanel', | 188 'PanelBrowserNavigatorTest.NavigateFromCrashedPanel', |
154 'FilePathWatcherTest.Callback',), }, | 189 'StartupBrowserCreatorTest.OpenAppShortcutPanel', |
| 190 'FilePathWatcherTest.Callback',), |
| 191 'gpu_tests': |
| 192 ('WebGLConformanceTests.conformance_attribs_gl_enable_vertex_attrib', |
| 193 'WebGLConformanceTests.' |
| 194 'conformance_attribs_gl_disabled_vertex_attrib', |
| 195 'WebGLConformanceTests.' |
| 196 'conformance_attribs_gl_vertex_attrib_zero_issues', |
| 197 'WebGLConformanceTests.conformance_attribs_gl_vertex_attrib', |
| 198 'WebGLConformanceTests.' |
| 199 'conformance_attribs_gl_vertexattribpointer_offsets', |
| 200 'WebGLConformanceTests.conformance_attribs_gl_vertexattribpointer', |
| 201 'WebGLConformanceTests.conformance_buffers_buffer_bind_test', |
| 202 'WebGLConformanceTests.' |
| 203 'conformance_buffers_buffer_data_array_buffer', |
| 204 'WebGLConformanceTests.' |
| 205 'conformance_buffers_index_validation_copies_indices', |
| 206 'WebGLConformanceTests.' |
| 207 'conformance_buffers_index_validation_crash_with_buffer_sub_data', |
| 208 'WebGLConformanceTests.' |
| 209 'conformance_buffers_index_validation_verifies_too_many_indices', |
| 210 'WebGLConformanceTests.' |
| 211 'conformance_buffers_index_validation_with_resized_buffer',), |
| 212 'performance_ui_tests': |
| 213 ('*PageCycler*.*', |
| 214 '*FrameRateCompositingTest.*', |
| 215 '*FrameRateNoVsyncCanvasInternalTest.*', |
| 216 '*FrameRateGpuCanvasInternalTest.*',), |
| 217 'sync_integration_tests': |
| 218 ('TwoClientPasswordsSyncTest.DeleteAll', |
| 219 'MigrationTwoClientTest.MigrationHellWithoutNigori', |
| 220 'TwoClientSessionsSyncTest.DeleteActiveSession', |
| 221 'MultipleClientSessionsSyncTest.EncryptedAndChanged', |
| 222 'MigrationSingleClientTest.' |
| 223 'AllTypesIndividuallyTriggerNotification',), }, |
155 } | 224 } |
156 | 225 |
157 | 226 |
158 def TerminateSignalHandler(sig, stack): | 227 def TerminateSignalHandler(sig, stack): |
159 """When killed, try and kill our child processes.""" | 228 """When killed, try and kill our child processes.""" |
160 signal.signal(sig, signal.SIG_DFL) | 229 signal.signal(sig, signal.SIG_DFL) |
161 for pid in gChildPIDs: | 230 for pid in gChildPIDs: |
162 if 'kill' in os.__all__: # POSIX | 231 if 'kill' in os.__all__: # POSIX |
163 os.kill(pid, sig) | 232 os.kill(pid, sig) |
164 else: | 233 else: |
(...skipping 841 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1006 if options.trim: | 1075 if options.trim: |
1007 coverage.TrimTests() | 1076 coverage.TrimTests() |
1008 coverage.RunTests() | 1077 coverage.RunTests() |
1009 if options.genhtml: | 1078 if options.genhtml: |
1010 coverage.GenerateHtml() | 1079 coverage.GenerateHtml() |
1011 return 0 | 1080 return 0 |
1012 | 1081 |
1013 | 1082 |
1014 if __name__ == '__main__': | 1083 if __name__ == '__main__': |
1015 sys.exit(main()) | 1084 sys.exit(main()) |
OLD | NEW |