aboutsummaryrefslogtreecommitdiffhomepage
path: root/tools
diff options
context:
space:
mode:
authorGravatar Craig Tiller <craig.tiller@gmail.com>2016-01-06 17:05:34 -0800
committerGravatar Craig Tiller <craig.tiller@gmail.com>2016-01-06 17:05:34 -0800
commit54ed674d406e43a9c54ad103b5ea454d73a64c3b (patch)
tree537260382904f46194fcc618a0f5d2c8e7c57b6f /tools
parentc12f8a9d392393f34784a5a61364c68d7a3566ea (diff)
parentfc5281f66d9bd134d893e23bb45757677b1096c2 (diff)
Merge github.com:grpc/grpc into proto_names
Diffstat (limited to 'tools')
-rwxr-xr-xtools/distrib/check_copyright.py106
-rwxr-xr-xtools/distrib/clang_format_code.sh28
-rw-r--r--tools/dockerfile/grpc_clang_format/Dockerfile29
-rwxr-xr-xtools/dockerfile/grpc_clang_format/clang_format_all_the_things.sh28
-rwxr-xr-xtools/jenkins/run_jenkins.sh14
-rwxr-xr-xtools/profiling/latency_profile/profile_analyzer.py29
-rwxr-xr-xtools/profiling/latency_profile/run_latency_profile.sh28
-rwxr-xr-xtools/run_tests/check_sources_and_headers.py28
-rwxr-xr-xtools/run_tests/run_sanity.sh3
-rwxr-xr-xtools/run_tests/run_tests.py37
-rw-r--r--tools/run_tests/sources_and_headers.json712
-rw-r--r--tools/run_tests/tests.json19
12 files changed, 403 insertions, 658 deletions
diff --git a/tools/distrib/check_copyright.py b/tools/distrib/check_copyright.py
index fac2a5af09..f54e5fad80 100755
--- a/tools/distrib/check_copyright.py
+++ b/tools/distrib/check_copyright.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python2.7
-# Copyright 2015, Google Inc.
+# Copyright 2015-2016, Google Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -30,7 +30,9 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
import argparse
+import datetime
import os
+import re
import sys
import subprocess
@@ -52,10 +54,6 @@ argp.add_argument('-a', '--ancient',
default=0,
action='store_const',
const=1)
-argp.add_argument('-f', '--fix',
- default=0,
- action='store_const',
- const=1)
args = argp.parse_args()
# open the license text
@@ -66,30 +64,49 @@ with open('LICENSE') as f:
# key is the file extension, value is a format string
# that given a line of license text, returns what should
# be in the file
-LICENSE_FMT = {
- '.c': ' * %s',
- '.cc': ' * %s',
- '.h': ' * %s',
- '.m': ' * %s',
- '.php': ' * %s',
- '.py': '# %s',
- '.rb': '# %s',
- '.sh': '# %s',
- '.proto': '// %s',
- '.js': ' * %s',
- '.cs': '// %s',
- '.mak': '# %s',
- 'Makefile': '# %s',
- 'Dockerfile': '# %s',
+LICENSE_PREFIX = {
+ '.c': r'\s*\*\s*',
+ '.cc': r'\s*\*\s*',
+ '.h': r'\s*\*\s*',
+ '.m': r'\s*\*\s*',
+ '.php': r'\s*\*\s*',
+ '.js': r'\s*\*\s*',
+ '.py': r'#\s*',
+ '.pyx': r'#\s*',
+ '.pxd': r'#\s*',
+ '.pxi': r'#\s*',
+ '.rb': r'#\s*',
+ '.sh': r'#\s*',
+ '.proto': r'//\s*',
+ '.cs': r'//\s*',
+ '.mak': r'#\s*',
+ 'Makefile': r'#\s*',
+ 'Dockerfile': r'#\s*',
+ 'LICENSE': '',
}
-# pregenerate the actual text that we should have
-LICENSE_TEXT = dict(
- (k, '\n'.join((v % line).rstrip() for line in LICENSE))
- for k, v in LICENSE_FMT.iteritems())
+KNOWN_BAD = set([
+ 'src/php/tests/bootstrap.php',
+])
+
+
+RE_YEAR = r'Copyright (?:[0-9]+\-)?([0-9]+), Google Inc\.'
+RE_LICENSE = dict(
+ (k, r'\n'.join(
+ LICENSE_PREFIX[k] +
+ (RE_YEAR if re.search(RE_YEAR, line) else re.escape(line))
+ for line in LICENSE))
+ for k, v in LICENSE_PREFIX.iteritems())
+
+
+def load(name):
+ with open(name) as f:
+ return '\n'.join(line.rstrip() for line in f.read().splitlines())
+
+
+assert(re.search(RE_LICENSE['LICENSE'], load('LICENSE')))
+assert(re.search(RE_LICENSE['Makefile'], load('Makefile')))
-OLD_LICENSE_TEXT = dict(
- (k, v.replace('2015', '2014')) for k, v in LICENSE_TEXT.iteritems())
def log(cond, why, filename):
if not cond: return
@@ -98,29 +115,32 @@ def log(cond, why, filename):
else:
print filename
+
# scan files, validate the text
for filename in subprocess.check_output('git ls-tree -r --name-only -r HEAD',
shell=True).splitlines():
+ if filename in KNOWN_BAD: continue
ext = os.path.splitext(filename)[1]
base = os.path.basename(filename)
- if ext in LICENSE_TEXT:
- license = LICENSE_TEXT[ext]
- old_license = OLD_LICENSE_TEXT[ext]
- elif base in LICENSE_TEXT:
- license = LICENSE_TEXT[base]
- old_license = OLD_LICENSE_TEXT[base]
+ if ext in RE_LICENSE:
+ re_license = RE_LICENSE[ext]
+ elif base in RE_LICENSE:
+ re_license = RE_LICENSE[base]
else:
log(args.skips, 'skip', filename)
continue
- with open(filename) as f:
- text = '\n'.join(line.rstrip() for line in f.read().splitlines())
- if license in text:
- pass
- elif old_license in text:
- log(args.ancient, 'old', filename)
- if args.fix:
- with open(filename, 'w') as f:
- f.write(text.replace('Copyright 2014, Google Inc.', 'Copyright 2015, Google Inc.') + '\n')
- elif 'DO NOT EDIT' not in text and 'AssemblyInfo.cs' not in filename:
- log(1, 'missing', filename)
+ text = load(filename)
+ ok = True
+ m = re.search(re_license, text)
+ if m:
+ last_modified = int(subprocess.check_output('git log -1 --format="%ad" --date=short -- ' + filename, shell=True)[0:4])
+ latest_claimed = int(m.group(1))
+ if last_modified > latest_claimed:
+ print '%s modified %d but copyright only extends to %d' % (filename, last_modified, latest_claimed)
+ ok = False
+ elif 'DO NOT EDIT' not in text and 'AssemblyInfo.cs' not in filename and filename != 'src/boringssl/err_data.c':
+ log(1, 'copyright missing', filename)
+ ok = False
+
+sys.exit(0 if ok else 1)
diff --git a/tools/distrib/clang_format_code.sh b/tools/distrib/clang_format_code.sh
index 55f4c52ec2..bc913cb6c1 100755
--- a/tools/distrib/clang_format_code.sh
+++ b/tools/distrib/clang_format_code.sh
@@ -1,4 +1,32 @@
#!/bin/bash
+# Copyright 2015, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+# * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
set -ex
diff --git a/tools/dockerfile/grpc_clang_format/Dockerfile b/tools/dockerfile/grpc_clang_format/Dockerfile
index a0fff2f2b5..4b101f6f53 100644
--- a/tools/dockerfile/grpc_clang_format/Dockerfile
+++ b/tools/dockerfile/grpc_clang_format/Dockerfile
@@ -1,3 +1,32 @@
+# Copyright 2015, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+# * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
FROM ubuntu:vivid
RUN apt-get update
RUN apt-get -y install clang-format-3.6
diff --git a/tools/dockerfile/grpc_clang_format/clang_format_all_the_things.sh b/tools/dockerfile/grpc_clang_format/clang_format_all_the_things.sh
index 5da9dfabba..60fd30cd6f 100755
--- a/tools/dockerfile/grpc_clang_format/clang_format_all_the_things.sh
+++ b/tools/dockerfile/grpc_clang_format/clang_format_all_the_things.sh
@@ -1,4 +1,32 @@
#!/bin/bash
+# Copyright 2015, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+# * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# directories to run against
DIRS="src/core src/cpp test/core test/cpp include"
diff --git a/tools/jenkins/run_jenkins.sh b/tools/jenkins/run_jenkins.sh
index 4bb6c39a1c..9b6ba71948 100755
--- a/tools/jenkins/run_jenkins.sh
+++ b/tools/jenkins/run_jenkins.sh
@@ -54,7 +54,7 @@ if [ "$platform" == "linux" ]
then
echo "building $language on Linux"
- ./tools/run_tests/run_tests.py --use_docker -t -l $language -c $config -x report.xml $@ || true
+ ./tools/run_tests/run_tests.py --use_docker -t -l $language -c $config -x report.xml $@ || TESTS_FAILED="true"
elif [ "$platform" == "windows" ]
then
@@ -63,19 +63,19 @@ then
# Prevent msbuild from picking up "platform" env variable, which would break the build
unset platform
- python tools/run_tests/run_tests.py -t -l $language -c $config -x report.xml $@ || true
+ python tools/run_tests/run_tests.py -t -l $language -c $config -x report.xml $@ || TESTS_FAILED="true"
elif [ "$platform" == "macos" ]
then
echo "building $language on MacOS"
- ./tools/run_tests/run_tests.py -t -l $language -c $config -x report.xml $@ || true
+ ./tools/run_tests/run_tests.py -t -l $language -c $config -x report.xml $@ || TESTS_FAILED="true"
elif [ "$platform" == "freebsd" ]
then
echo "building $language on FreeBSD"
- MAKE=gmake ./tools/run_tests/run_tests.py -t -l $language -c $config -x report.xml $@ || true
+ MAKE=gmake ./tools/run_tests/run_tests.py -t -l $language -c $config -x report.xml $@ || TESTS_FAILED="true"
else
echo "Unknown platform $platform"
@@ -87,3 +87,9 @@ then
mkdir -p reports
echo 'No reports generated.' > reports/index.html
fi
+
+if [ "$TESTS_FAILED" != "" ]
+then
+ exit 1
+fi
+
diff --git a/tools/profiling/latency_profile/profile_analyzer.py b/tools/profiling/latency_profile/profile_analyzer.py
index b2a38ea60a..dad0712d40 100755
--- a/tools/profiling/latency_profile/profile_analyzer.py
+++ b/tools/profiling/latency_profile/profile_analyzer.py
@@ -1,4 +1,33 @@
#!/usr/bin/env python2.7
+# Copyright 2015, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+# * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
import argparse
import collections
import hashlib
diff --git a/tools/profiling/latency_profile/run_latency_profile.sh b/tools/profiling/latency_profile/run_latency_profile.sh
index 64c3e58fcb..54a25a9cb7 100755
--- a/tools/profiling/latency_profile/run_latency_profile.sh
+++ b/tools/profiling/latency_profile/run_latency_profile.sh
@@ -1,4 +1,32 @@
#!/bin/bash
+# Copyright 2015, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+# * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
set -ex
diff --git a/tools/run_tests/check_sources_and_headers.py b/tools/run_tests/check_sources_and_headers.py
index 605bdedec3..cee32888dc 100755
--- a/tools/run_tests/check_sources_and_headers.py
+++ b/tools/run_tests/check_sources_and_headers.py
@@ -1,4 +1,32 @@
#!/usr/bin/env python2.7
+# Copyright 2015, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+# * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
import json
import os
diff --git a/tools/run_tests/run_sanity.sh b/tools/run_tests/run_sanity.sh
index 6a80f1f81c..690332daae 100755
--- a/tools/run_tests/run_sanity.sh
+++ b/tools/run_tests/run_sanity.sh
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2015, Google Inc.
+# Copyright 2015-2016, Google Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -58,5 +58,6 @@ if [ -f cache.mk ] ; then
fi
./tools/buildgen/generate_projects.sh
+./tools/distrib/check_copyright.py
./tools/distrib/clang_format_code.sh
diff --git a/tools/run_tests/run_tests.py b/tools/run_tests/run_tests.py
index c1de211d47..857e7b5f5d 100755
--- a/tools/run_tests/run_tests.py
+++ b/tools/run_tests/run_tests.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python2.7
-# Copyright 2015, Google Inc.
+# Copyright 2015-2016, Google Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -53,6 +53,7 @@ import jobset
import report_utils
import watch_dirs
+
ROOT = os.path.abspath(os.path.join(os.path.dirname(sys.argv[0]), '../..'))
os.chdir(ROOT)
@@ -646,6 +647,9 @@ argp.add_argument('--build_only',
action='store_const',
const=True,
help='Perform all the build steps but dont run any tests.')
+argp.add_argument('--update_submodules', default=[], nargs='*',
+ help='Update some submodules before building. If any are updated, also run generate_projects. ' +
+ 'Submodules are specified as SUBMODULE_NAME:BRANCH; if BRANCH is omitted, master is assumed.')
argp.add_argument('-a', '--antagonists', default=0, type=int)
argp.add_argument('-x', '--xml_report', default=None, type=str,
help='Generates a JUnit-compatible XML report')
@@ -681,6 +685,33 @@ if args.use_docker:
env=env)
sys.exit(0)
+# update submodules if necessary
+need_to_regenerate_projects = False
+for spec in args.update_submodules:
+ spec = spec.split(':', 1)
+ if len(spec) == 1:
+ submodule = spec[0]
+ branch = 'master'
+ elif len(spec) == 2:
+ submodule = spec[0]
+ branch = spec[1]
+ cwd = 'third_party/%s' % submodule
+ def git(cmd, cwd=cwd):
+ print 'in %s: git %s' % (cwd, cmd)
+ subprocess.check_call('git %s' % cmd, cwd=cwd, shell=True)
+ git('fetch')
+ git('checkout %s' % branch)
+ git('pull origin %s' % branch)
+ if os.path.exists('src/%s/gen_build_yaml.py' % submodule):
+ need_to_regenerate_projects = True
+if need_to_regenerate_projects:
+ if jobset.platform_string() == 'linux':
+ subprocess.check_call('tools/buildgen/generate_projects.sh', shell=True)
+ else:
+ print 'WARNING: may need to regenerate projects, but since we are not on'
+ print ' Linux this step is being skipped. Compilation MAY fail.'
+
+
# grab config
run_configs = set(_CONFIGS[cfg]
for cfg in itertools.chain.from_iterable(
@@ -692,7 +723,7 @@ if args.travis:
_FORCE_ENVIRON_FOR_WRAPPERS = {'GRPC_TRACE': 'api'}
if 'all' in args.language:
- lang_list = _LANGUAGES.keys()
+ lang_list = _LANGUAGES.keys()
else:
lang_list = args.language
# We don't support code coverage on ObjC
@@ -939,7 +970,7 @@ def _build_and_run(
newline_on_success=newline_on_success, travis=args.travis)
if num_failures:
return 1
-
+
if build_only:
return 0
diff --git a/tools/run_tests/sources_and_headers.json b/tools/run_tests/sources_and_headers.json
index f721e7e5f5..8d86fa3bf3 100644
--- a/tools/run_tests/sources_and_headers.json
+++ b/tools/run_tests/sources_and_headers.json
@@ -2033,8 +2033,19 @@
},
{
"deps": [
+ "gpr",
+ "grpc"
+ ],
+ "headers": [],
+ "language": "c89",
+ "name": "public_headers_must_be_c89",
+ "src": [
+ "test/core/surface/public_headers_must_be_c89.c"
+ ]
+ },
+ {
+ "deps": [
"end2end_certs",
- "end2end_fixture_h2_census",
"end2end_tests",
"gpr",
"gpr_test_util",
@@ -2044,12 +2055,13 @@
"headers": [],
"language": "c",
"name": "h2_census_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_census.c"
+ ]
},
{
"deps": [
"end2end_certs",
- "end2end_fixture_h2_compress",
"end2end_tests",
"gpr",
"gpr_test_util",
@@ -2059,12 +2071,13 @@
"headers": [],
"language": "c",
"name": "h2_compress_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_compress.c"
+ ]
},
{
"deps": [
"end2end_certs",
- "end2end_fixture_h2_fakesec",
"end2end_tests",
"gpr",
"gpr_test_util",
@@ -2074,12 +2087,13 @@
"headers": [],
"language": "c",
"name": "h2_fakesec_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_fakesec.c"
+ ]
},
{
"deps": [
"end2end_certs",
- "end2end_fixture_h2_full",
"end2end_tests",
"gpr",
"gpr_test_util",
@@ -2089,12 +2103,13 @@
"headers": [],
"language": "c",
"name": "h2_full_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_full.c"
+ ]
},
{
"deps": [
"end2end_certs",
- "end2end_fixture_h2_full+pipe",
"end2end_tests",
"gpr",
"gpr_test_util",
@@ -2104,12 +2119,13 @@
"headers": [],
"language": "c",
"name": "h2_full+pipe_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_full+pipe.c"
+ ]
},
{
"deps": [
"end2end_certs",
- "end2end_fixture_h2_full+poll",
"end2end_tests",
"gpr",
"gpr_test_util",
@@ -2119,12 +2135,13 @@
"headers": [],
"language": "c",
"name": "h2_full+poll_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_full+poll.c"
+ ]
},
{
"deps": [
"end2end_certs",
- "end2end_fixture_h2_full+poll+pipe",
"end2end_tests",
"gpr",
"gpr_test_util",
@@ -2134,12 +2151,13 @@
"headers": [],
"language": "c",
"name": "h2_full+poll+pipe_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_full+poll+pipe.c"
+ ]
},
{
"deps": [
"end2end_certs",
- "end2end_fixture_h2_oauth2",
"end2end_tests",
"gpr",
"gpr_test_util",
@@ -2149,12 +2167,13 @@
"headers": [],
"language": "c",
"name": "h2_oauth2_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_oauth2.c"
+ ]
},
{
"deps": [
"end2end_certs",
- "end2end_fixture_h2_proxy",
"end2end_tests",
"gpr",
"gpr_test_util",
@@ -2164,12 +2183,13 @@
"headers": [],
"language": "c",
"name": "h2_proxy_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_proxy.c"
+ ]
},
{
"deps": [
"end2end_certs",
- "end2end_fixture_h2_sockpair",
"end2end_tests",
"gpr",
"gpr_test_util",
@@ -2179,12 +2199,13 @@
"headers": [],
"language": "c",
"name": "h2_sockpair_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_sockpair.c"
+ ]
},
{
"deps": [
"end2end_certs",
- "end2end_fixture_h2_sockpair+trace",
"end2end_tests",
"gpr",
"gpr_test_util",
@@ -2194,12 +2215,13 @@
"headers": [],
"language": "c",
"name": "h2_sockpair+trace_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_sockpair+trace.c"
+ ]
},
{
"deps": [
"end2end_certs",
- "end2end_fixture_h2_sockpair_1byte",
"end2end_tests",
"gpr",
"gpr_test_util",
@@ -2209,12 +2231,13 @@
"headers": [],
"language": "c",
"name": "h2_sockpair_1byte_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_sockpair_1byte.c"
+ ]
},
{
"deps": [
"end2end_certs",
- "end2end_fixture_h2_ssl",
"end2end_tests",
"gpr",
"gpr_test_util",
@@ -2224,12 +2247,13 @@
"headers": [],
"language": "c",
"name": "h2_ssl_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_ssl.c"
+ ]
},
{
"deps": [
"end2end_certs",
- "end2end_fixture_h2_ssl+poll",
"end2end_tests",
"gpr",
"gpr_test_util",
@@ -2239,12 +2263,13 @@
"headers": [],
"language": "c",
"name": "h2_ssl+poll_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_ssl+poll.c"
+ ]
},
{
"deps": [
"end2end_certs",
- "end2end_fixture_h2_ssl_proxy",
"end2end_tests",
"gpr",
"gpr_test_util",
@@ -2254,12 +2279,13 @@
"headers": [],
"language": "c",
"name": "h2_ssl_proxy_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_ssl_proxy.c"
+ ]
},
{
"deps": [
"end2end_certs",
- "end2end_fixture_h2_uchannel",
"end2end_tests",
"gpr",
"gpr_test_util",
@@ -2269,12 +2295,13 @@
"headers": [],
"language": "c",
"name": "h2_uchannel_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_uchannel.c"
+ ]
},
{
"deps": [
"end2end_certs",
- "end2end_fixture_h2_uds",
"end2end_tests",
"gpr",
"gpr_test_util",
@@ -2284,12 +2311,13 @@
"headers": [],
"language": "c",
"name": "h2_uds_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_uds.c"
+ ]
},
{
"deps": [
"end2end_certs",
- "end2end_fixture_h2_uds+poll",
"end2end_tests",
"gpr",
"gpr_test_util",
@@ -2299,11 +2327,12 @@
"headers": [],
"language": "c",
"name": "h2_uds+poll_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_uds+poll.c"
+ ]
},
{
"deps": [
- "end2end_nosec_fixture_h2_census",
"end2end_nosec_tests",
"gpr",
"gpr_test_util",
@@ -2313,11 +2342,12 @@
"headers": [],
"language": "c",
"name": "h2_census_nosec_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_census.c"
+ ]
},
{
"deps": [
- "end2end_nosec_fixture_h2_compress",
"end2end_nosec_tests",
"gpr",
"gpr_test_util",
@@ -2327,11 +2357,12 @@
"headers": [],
"language": "c",
"name": "h2_compress_nosec_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_compress.c"
+ ]
},
{
"deps": [
- "end2end_nosec_fixture_h2_full",
"end2end_nosec_tests",
"gpr",
"gpr_test_util",
@@ -2341,11 +2372,12 @@
"headers": [],
"language": "c",
"name": "h2_full_nosec_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_full.c"
+ ]
},
{
"deps": [
- "end2end_nosec_fixture_h2_full+pipe",
"end2end_nosec_tests",
"gpr",
"gpr_test_util",
@@ -2355,11 +2387,12 @@
"headers": [],
"language": "c",
"name": "h2_full+pipe_nosec_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_full+pipe.c"
+ ]
},
{
"deps": [
- "end2end_nosec_fixture_h2_full+poll",
"end2end_nosec_tests",
"gpr",
"gpr_test_util",
@@ -2369,11 +2402,12 @@
"headers": [],
"language": "c",
"name": "h2_full+poll_nosec_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_full+poll.c"
+ ]
},
{
"deps": [
- "end2end_nosec_fixture_h2_full+poll+pipe",
"end2end_nosec_tests",
"gpr",
"gpr_test_util",
@@ -2383,11 +2417,12 @@
"headers": [],
"language": "c",
"name": "h2_full+poll+pipe_nosec_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_full+poll+pipe.c"
+ ]
},
{
"deps": [
- "end2end_nosec_fixture_h2_proxy",
"end2end_nosec_tests",
"gpr",
"gpr_test_util",
@@ -2397,11 +2432,12 @@
"headers": [],
"language": "c",
"name": "h2_proxy_nosec_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_proxy.c"
+ ]
},
{
"deps": [
- "end2end_nosec_fixture_h2_sockpair",
"end2end_nosec_tests",
"gpr",
"gpr_test_util",
@@ -2411,11 +2447,12 @@
"headers": [],
"language": "c",
"name": "h2_sockpair_nosec_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_sockpair.c"
+ ]
},
{
"deps": [
- "end2end_nosec_fixture_h2_sockpair+trace",
"end2end_nosec_tests",
"gpr",
"gpr_test_util",
@@ -2425,11 +2462,12 @@
"headers": [],
"language": "c",
"name": "h2_sockpair+trace_nosec_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_sockpair+trace.c"
+ ]
},
{
"deps": [
- "end2end_nosec_fixture_h2_sockpair_1byte",
"end2end_nosec_tests",
"gpr",
"gpr_test_util",
@@ -2439,11 +2477,12 @@
"headers": [],
"language": "c",
"name": "h2_sockpair_1byte_nosec_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_sockpair_1byte.c"
+ ]
},
{
"deps": [
- "end2end_nosec_fixture_h2_uchannel",
"end2end_nosec_tests",
"gpr",
"gpr_test_util",
@@ -2453,11 +2492,12 @@
"headers": [],
"language": "c",
"name": "h2_uchannel_nosec_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_uchannel.c"
+ ]
},
{
"deps": [
- "end2end_nosec_fixture_h2_uds",
"end2end_nosec_tests",
"gpr",
"gpr_test_util",
@@ -2467,11 +2507,12 @@
"headers": [],
"language": "c",
"name": "h2_uds_nosec_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_uds.c"
+ ]
},
{
"deps": [
- "end2end_nosec_fixture_h2_uds+poll",
"end2end_nosec_tests",
"gpr",
"gpr_test_util",
@@ -2481,7 +2522,9 @@
"headers": [],
"language": "c",
"name": "h2_uds+poll_nosec_test",
- "src": []
+ "src": [
+ "test/core/end2end/fixtures/h2_uds+poll.c"
+ ]
},
{
"deps": [
@@ -4282,551 +4325,6 @@
"grpc_test_util"
],
"headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_fixture_h2_census",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_census.c"
- ]
- },
- {
- "deps": [
- "end2end_certs",
- "gpr",
- "gpr_test_util",
- "grpc",
- "grpc_test_util"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_fixture_h2_compress",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_compress.c"
- ]
- },
- {
- "deps": [
- "end2end_certs",
- "gpr",
- "gpr_test_util",
- "grpc",
- "grpc_test_util"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_fixture_h2_fakesec",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_fakesec.c"
- ]
- },
- {
- "deps": [
- "end2end_certs",
- "gpr",
- "gpr_test_util",
- "grpc",
- "grpc_test_util"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_fixture_h2_full",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_full.c"
- ]
- },
- {
- "deps": [
- "end2end_certs",
- "gpr",
- "gpr_test_util",
- "grpc",
- "grpc_test_util"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_fixture_h2_full+pipe",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_full+pipe.c"
- ]
- },
- {
- "deps": [
- "end2end_certs",
- "gpr",
- "gpr_test_util",
- "grpc",
- "grpc_test_util"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_fixture_h2_full+poll",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_full+poll.c"
- ]
- },
- {
- "deps": [
- "end2end_certs",
- "gpr",
- "gpr_test_util",
- "grpc",
- "grpc_test_util"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_fixture_h2_full+poll+pipe",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_full+poll+pipe.c"
- ]
- },
- {
- "deps": [
- "end2end_certs",
- "gpr",
- "gpr_test_util",
- "grpc",
- "grpc_test_util"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_fixture_h2_oauth2",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_oauth2.c"
- ]
- },
- {
- "deps": [
- "end2end_certs",
- "gpr",
- "gpr_test_util",
- "grpc",
- "grpc_test_util"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_fixture_h2_proxy",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_proxy.c"
- ]
- },
- {
- "deps": [
- "end2end_certs",
- "gpr",
- "gpr_test_util",
- "grpc",
- "grpc_test_util"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_fixture_h2_sockpair",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_sockpair.c"
- ]
- },
- {
- "deps": [
- "end2end_certs",
- "gpr",
- "gpr_test_util",
- "grpc",
- "grpc_test_util"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_fixture_h2_sockpair+trace",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_sockpair+trace.c"
- ]
- },
- {
- "deps": [
- "end2end_certs",
- "gpr",
- "gpr_test_util",
- "grpc",
- "grpc_test_util"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_fixture_h2_sockpair_1byte",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_sockpair_1byte.c"
- ]
- },
- {
- "deps": [
- "end2end_certs",
- "gpr",
- "gpr_test_util",
- "grpc",
- "grpc_test_util"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_fixture_h2_ssl",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_ssl.c"
- ]
- },
- {
- "deps": [
- "end2end_certs",
- "gpr",
- "gpr_test_util",
- "grpc",
- "grpc_test_util"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_fixture_h2_ssl+poll",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_ssl+poll.c"
- ]
- },
- {
- "deps": [
- "end2end_certs",
- "gpr",
- "gpr_test_util",
- "grpc",
- "grpc_test_util"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_fixture_h2_ssl_proxy",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_ssl_proxy.c"
- ]
- },
- {
- "deps": [
- "end2end_certs",
- "gpr",
- "gpr_test_util",
- "grpc",
- "grpc_test_util"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_fixture_h2_uchannel",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_uchannel.c"
- ]
- },
- {
- "deps": [
- "end2end_certs",
- "gpr",
- "gpr_test_util",
- "grpc",
- "grpc_test_util"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_fixture_h2_uds",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_uds.c"
- ]
- },
- {
- "deps": [
- "end2end_certs",
- "gpr",
- "gpr_test_util",
- "grpc",
- "grpc_test_util"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_fixture_h2_uds+poll",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_uds+poll.c"
- ]
- },
- {
- "deps": [
- "gpr",
- "gpr_test_util",
- "grpc_test_util_unsecure",
- "grpc_unsecure"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_nosec_fixture_h2_census",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_census.c"
- ]
- },
- {
- "deps": [
- "gpr",
- "gpr_test_util",
- "grpc_test_util_unsecure",
- "grpc_unsecure"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_nosec_fixture_h2_compress",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_compress.c"
- ]
- },
- {
- "deps": [
- "gpr",
- "gpr_test_util",
- "grpc_test_util_unsecure",
- "grpc_unsecure"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_nosec_fixture_h2_full",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_full.c"
- ]
- },
- {
- "deps": [
- "gpr",
- "gpr_test_util",
- "grpc_test_util_unsecure",
- "grpc_unsecure"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_nosec_fixture_h2_full+pipe",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_full+pipe.c"
- ]
- },
- {
- "deps": [
- "gpr",
- "gpr_test_util",
- "grpc_test_util_unsecure",
- "grpc_unsecure"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_nosec_fixture_h2_full+poll",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_full+poll.c"
- ]
- },
- {
- "deps": [
- "gpr",
- "gpr_test_util",
- "grpc_test_util_unsecure",
- "grpc_unsecure"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_nosec_fixture_h2_full+poll+pipe",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_full+poll+pipe.c"
- ]
- },
- {
- "deps": [
- "gpr",
- "gpr_test_util",
- "grpc_test_util_unsecure",
- "grpc_unsecure"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_nosec_fixture_h2_proxy",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_proxy.c"
- ]
- },
- {
- "deps": [
- "gpr",
- "gpr_test_util",
- "grpc_test_util_unsecure",
- "grpc_unsecure"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_nosec_fixture_h2_sockpair",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_sockpair.c"
- ]
- },
- {
- "deps": [
- "gpr",
- "gpr_test_util",
- "grpc_test_util_unsecure",
- "grpc_unsecure"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_nosec_fixture_h2_sockpair+trace",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_sockpair+trace.c"
- ]
- },
- {
- "deps": [
- "gpr",
- "gpr_test_util",
- "grpc_test_util_unsecure",
- "grpc_unsecure"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_nosec_fixture_h2_sockpair_1byte",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_sockpair_1byte.c"
- ]
- },
- {
- "deps": [
- "gpr",
- "gpr_test_util",
- "grpc_test_util_unsecure",
- "grpc_unsecure"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_nosec_fixture_h2_uchannel",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_uchannel.c"
- ]
- },
- {
- "deps": [
- "gpr",
- "gpr_test_util",
- "grpc_test_util_unsecure",
- "grpc_unsecure"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_nosec_fixture_h2_uds",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_uds.c"
- ]
- },
- {
- "deps": [
- "gpr",
- "gpr_test_util",
- "grpc_test_util_unsecure",
- "grpc_unsecure"
- ],
- "headers": [
- "test/core/end2end/end2end_tests.h"
- ],
- "language": "c",
- "name": "end2end_nosec_fixture_h2_uds+poll",
- "src": [
- "test/core/end2end/end2end_tests.h",
- "test/core/end2end/fixtures/h2_uds+poll.c"
- ]
- },
- {
- "deps": [
- "end2end_certs",
- "gpr",
- "gpr_test_util",
- "grpc",
- "grpc_test_util"
- ],
- "headers": [
"test/core/end2end/end2end_tests.h",
"test/core/end2end/tests/cancel_test_helpers.h"
],
diff --git a/tools/run_tests/tests.json b/tools/run_tests/tests.json
index 0b5f847af1..d4839e235f 100644
--- a/tools/run_tests/tests.json
+++ b/tools/run_tests/tests.json
@@ -2068,6 +2068,25 @@
],
"exclude_configs": [],
"flaky": false,
+ "language": "c89",
+ "name": "public_headers_must_be_c89",
+ "platforms": [
+ "linux",
+ "mac",
+ "posix",
+ "windows"
+ ]
+ },
+ {
+ "args": [],
+ "ci_platforms": [
+ "linux",
+ "mac",
+ "posix",
+ "windows"
+ ],
+ "exclude_configs": [],
+ "flaky": false,
"language": "c",
"name": "badreq_bad_client_test",
"platforms": [