|  | #!/usr/bin/env python | 
|  | # Copyright (c) 2018 The WebRTC project authors. All Rights Reserved. | 
|  | # | 
|  | # Use of this source code is governed by a BSD-style license | 
|  | # that can be found in the LICENSE file in the root of the source | 
|  | # tree. An additional intellectual property rights grant can be found | 
|  | # in the file PATENTS.  All contributing project authors may | 
|  | # be found in the AUTHORS file in the root of the source tree. | 
|  | """Generates a command-line for coverage.py. Useful for manual coverage runs. | 
|  |  | 
|  | Before running the generated command line, do this: | 
|  |  | 
|  | gn gen out/coverage --args='use_clang_coverage=true is_component_build=false' | 
|  | """ | 
|  |  | 
|  | import sys | 
|  |  | 
|  | TESTS = [ | 
|  | 'video_capture_tests', 'webrtc_nonparallel_tests', 'video_engine_tests', | 
|  | 'tools_unittests', 'test_support_unittests', | 
|  | 'system_wrappers_unittests', 'rtc_unittests', 'rtc_stats_unittests', | 
|  | 'rtc_pc_unittests', 'rtc_media_unittests', 'peerconnection_unittests', | 
|  | 'modules_unittests', 'modules_tests', 'low_bandwidth_audio_test', | 
|  | 'common_video_unittests', 'common_audio_unittests', | 
|  | 'audio_decoder_unittests' | 
|  | ] | 
|  |  | 
|  |  | 
|  | def main(): | 
|  | cmd = ([sys.executable, 'tools/code_coverage/coverage.py'] + TESTS + | 
|  | ['-b out/coverage', '-o out/report'] + | 
|  | ['-i=\'.*/out/.*|.*/third_party/.*|.*test.*\''] + | 
|  | ['-c \'out/coverage/%s\'' % t for t in TESTS]) | 
|  |  | 
|  | def WithXvfb(binary): | 
|  | return '-c \'%s testing/xvfb.py %s\'' % (sys.executable, binary) | 
|  |  | 
|  | modules_unittests = 'out/coverage/modules_unittests' | 
|  | cmd[cmd.index('-c \'%s\'' % | 
|  | modules_unittests)] = WithXvfb(modules_unittests) | 
|  |  | 
|  | print ' '.join(cmd) | 
|  | return 0 | 
|  |  | 
|  |  | 
|  | if __name__ == '__main__': | 
|  | sys.exit(main()) |