summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2022-05-21 18:38:26 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2022-05-21 18:43:42 -0700
commit80bcb074aeed9b508a02940c8036c4ea5a1b9c63 (patch)
tree5dd6237af4385b34dddb0101b74967bf5566bd36
parentd6276889a04a5502c1f9d80ffc9f0ae5f7b628e0 (diff)
downloadgrep-80bcb074aeed9b508a02940c8036c4ea5a1b9c63.tar.gz
tests: port to platforms lacking Perl
* tests/init.cfg (require_perl_): New function. * tests/big-hole, tests/hash-collision-perf, tests/long-pattern-perf: * tests/many-regex-performance, tests/mb-non-UTF8-performance: Use it.
-rwxr-xr-xtests/big-hole1
-rwxr-xr-xtests/hash-collision-perf2
-rw-r--r--tests/init.cfg7
-rwxr-xr-xtests/long-pattern-perf1
-rwxr-xr-xtests/many-regex-performance1
-rwxr-xr-xtests/mb-non-UTF8-performance1
6 files changed, 13 insertions, 0 deletions
diff --git a/tests/big-hole b/tests/big-hole
index eac077f0..2899a3b7 100755
--- a/tests/big-hole
+++ b/tests/big-hole
@@ -4,6 +4,7 @@
. "${srcdir=.}/init.sh"; path_prepend_ ../src
expensive_
+require_perl_
# Skip this test if there is no usable SEEK_HOLE support,
# as is the case with linux-3.5.0 on ext4 and tmpfs file systems.
diff --git a/tests/hash-collision-perf b/tests/hash-collision-perf
index d701140f..7b8d373d 100755
--- a/tests/hash-collision-perf
+++ b/tests/hash-collision-perf
@@ -21,6 +21,8 @@
fail=0
+require_perl_
+
: > empty || framework_failure_
# Construct a test case that consumes enough CPU time that we don't
diff --git a/tests/init.cfg b/tests/init.cfg
index 72cab203..515482c6 100644
--- a/tests/init.cfg
+++ b/tests/init.cfg
@@ -138,6 +138,13 @@ require_JP_EUC_locale_()
skip_ "$locale locale not found"
}
+# Skip the current test if we lack Perl.
+require_perl_()
+{
+ test "$PERL" && $PERL -e 'use warnings' > /dev/null 2>&1 \
+ || skip_ 'configure did not find a usable version of Perl'
+}
+
expensive_()
{
if test "$RUN_EXPENSIVE_TESTS" != yes; then
diff --git a/tests/long-pattern-perf b/tests/long-pattern-perf
index 2d5e7c14..4557bbf6 100755
--- a/tests/long-pattern-perf
+++ b/tests/long-pattern-perf
@@ -24,6 +24,7 @@ fail=0
# system load during the two test runs, so we'll mark it as
# "expensive", making it less likely to be run by regular users.
expensive_
+require_perl_
echo x > in || framework_failure_
# Note that we want 10x the byte count (not line count) in the larger file.
diff --git a/tests/many-regex-performance b/tests/many-regex-performance
index e16e0323..4a5adacd 100755
--- a/tests/many-regex-performance
+++ b/tests/many-regex-performance
@@ -26,6 +26,7 @@ fail=0
# system load during the two test runs, so we'll mark it as
# "expensive", making it less likely to be run by regular users.
expensive_
+require_perl_
# Make the quick/small input large enough so that even on high-end
# systems this first invocation takes at least 10ms of user time.
diff --git a/tests/mb-non-UTF8-performance b/tests/mb-non-UTF8-performance
index a6208d8d..f3b33afe 100755
--- a/tests/mb-non-UTF8-performance
+++ b/tests/mb-non-UTF8-performance
@@ -26,6 +26,7 @@ fail=0
# system load during the two test runs, so we'll mark it as
# "expensive", making it less likely to be run by regular users.
expensive_
+require_perl_
# Make the input large enough so that even on high-end systems
# the unibyte test takes at least 10ms of user time.