1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/media/webrtc/trunk/testing/gtest/scripts/upload_gtest.py Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,78 @@ 1.4 +#!/usr/bin/env python 1.5 +# 1.6 +# Copyright 2009, Google Inc. 1.7 +# All rights reserved. 1.8 +# 1.9 +# Redistribution and use in source and binary forms, with or without 1.10 +# modification, are permitted provided that the following conditions are 1.11 +# met: 1.12 +# 1.13 +# * Redistributions of source code must retain the above copyright 1.14 +# notice, this list of conditions and the following disclaimer. 1.15 +# * Redistributions in binary form must reproduce the above 1.16 +# copyright notice, this list of conditions and the following disclaimer 1.17 +# in the documentation and/or other materials provided with the 1.18 +# distribution. 1.19 +# * Neither the name of Google Inc. nor the names of its 1.20 +# contributors may be used to endorse or promote products derived from 1.21 +# this software without specific prior written permission. 1.22 +# 1.23 +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 1.24 +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 1.25 +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 1.26 +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 1.27 +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 1.28 +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 1.29 +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 1.30 +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 1.31 +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 1.32 +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 1.33 +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 1.34 + 1.35 +"""upload_gtest.py v0.1.0 -- uploads a Google Test patch for review. 1.36 + 1.37 +This simple wrapper passes all command line flags and 1.38 +--cc=googletestframework@googlegroups.com to upload.py. 1.39 + 1.40 +USAGE: upload_gtest.py [options for upload.py] 1.41 +""" 1.42 + 1.43 +__author__ = 'wan@google.com (Zhanyong Wan)' 1.44 + 1.45 +import os 1.46 +import sys 1.47 + 1.48 +CC_FLAG = '--cc=' 1.49 +GTEST_GROUP = 'googletestframework@googlegroups.com' 1.50 + 1.51 + 1.52 +def main(): 1.53 + # Finds the path to upload.py, assuming it is in the same directory 1.54 + # as this file. 1.55 + my_dir = os.path.dirname(os.path.abspath(__file__)) 1.56 + upload_py_path = os.path.join(my_dir, 'upload.py') 1.57 + 1.58 + # Adds Google Test discussion group to the cc line if it's not there 1.59 + # already. 1.60 + upload_py_argv = [upload_py_path] 1.61 + found_cc_flag = False 1.62 + for arg in sys.argv[1:]: 1.63 + if arg.startswith(CC_FLAG): 1.64 + found_cc_flag = True 1.65 + cc_line = arg[len(CC_FLAG):] 1.66 + cc_list = [addr for addr in cc_line.split(',') if addr] 1.67 + if GTEST_GROUP not in cc_list: 1.68 + cc_list.append(GTEST_GROUP) 1.69 + upload_py_argv.append(CC_FLAG + ','.join(cc_list)) 1.70 + else: 1.71 + upload_py_argv.append(arg) 1.72 + 1.73 + if not found_cc_flag: 1.74 + upload_py_argv.append(CC_FLAG + GTEST_GROUP) 1.75 + 1.76 + # Invokes upload.py with the modified command line flags. 1.77 + os.execv(upload_py_path, upload_py_argv) 1.78 + 1.79 + 1.80 +if __name__ == '__main__': 1.81 + main()