diff options
author | 2017-01-04 16:05:46 -0800 | |
---|---|---|
committer | 2017-01-04 16:05:46 -0800 | |
commit | 4b53d3511395328ddf3a9d0d3bd48efaf1f7e57d (patch) | |
tree | d6c3d8fa1e5a4a97307d95aca43a9dad012c04d1 /test/core/util | |
parent | 6f3ce09f9cf756d1d6c08a6cdf1c3110247a407f (diff) |
Faster test building: avoid repeated linking
Diffstat (limited to 'test/core/util')
-rw-r--r-- | test/core/util/BUILD | 6 | ||||
-rwxr-xr-x | test/core/util/fuzzer_one_entry_runner.sh | 33 | ||||
-rw-r--r-- | test/core/util/grpc_fuzzer.bzl | 12 |
3 files changed, 45 insertions, 6 deletions
diff --git a/test/core/util/BUILD b/test/core/util/BUILD index e44e4e2105..e50e595d03 100644 --- a/test/core/util/BUILD +++ b/test/core/util/BUILD @@ -50,3 +50,9 @@ cc_library( deps = [":gpr_test_util", "//:grpc"], visibility = ["//test:__subpackages__"], ) + +sh_library( + name = "fuzzer_one_entry_runner", + srcs = ["fuzzer_one_entry_runner.sh"], + visibility = ["//test:__subpackages__"], +) diff --git a/test/core/util/fuzzer_one_entry_runner.sh b/test/core/util/fuzzer_one_entry_runner.sh new file mode 100755 index 0000000000..a0558a9c09 --- /dev/null +++ b/test/core/util/fuzzer_one_entry_runner.sh @@ -0,0 +1,33 @@ +#!/bin/sh + +# Test runner for fuzzer tests from bazel + +# Copyright 2017, 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. +$1 $2 diff --git a/test/core/util/grpc_fuzzer.bzl b/test/core/util/grpc_fuzzer.bzl index 3ec9e4e485..2f552a9fdb 100644 --- a/test/core/util/grpc_fuzzer.bzl +++ b/test/core/util/grpc_fuzzer.bzl @@ -28,16 +28,16 @@ # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. def grpc_fuzzer(name, corpus, srcs = [], deps = [], **kwargs): - native.cc_library( - name = "%s/one_entry" % name, + native.cc_binary( + name = '%s/one_entry.bin' % name, srcs = srcs, deps = deps + ["//test/core/util:one_corpus_entry_fuzzer"], **kwargs ) for entry in native.glob(['%s/*' % corpus]): - native.cc_test( + native.sh_test( name = '%s/one_entry/%s' % (name, entry), - deps = [':%s/one_entry' % name], - args = ['$(location %s)' % entry], - data = [entry], + data = [':%s/one_entry.bin' % name, entry], + srcs = ['//test/core/util:fuzzer_one_entry_runner'], + args = ['$(location :%s/one_entry.bin)' % name, '$(location %s)' % entry] ) |