From 1f27fa98380c134cd0f5f03b4cd3dfe2e83c09b7 Mon Sep 17 00:00:00 2001
From: Ron Yorston <rmy@pobox.com>
Date: Fri, 9 Feb 2018 09:52:52 +0000
Subject: testsuite: allow tests to work in paths containing spaces

Tweak some tests so they work when the path to the test directory or
$HOME contains spaces.

Signed-off-by: Ron Yorston <rmy@pobox.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
---
 testsuite/grep.tests                       | 2 +-
 testsuite/printf.tests                     | 2 +-
 testsuite/pwd/pwd-prints-working-directory | 2 +-
 testsuite/sum.tests                        | 6 +++---
 testsuite/xargs/xargs-works                | 6 ++++--
 5 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/testsuite/grep.tests b/testsuite/grep.tests
index d0b0d2767..e57889790 100755
--- a/testsuite/grep.tests
+++ b/testsuite/grep.tests
@@ -15,7 +15,7 @@
 
 testing "grep (exit with error)" "grep nonexistent 2> /dev/null ; echo \$?" \
 	"1\n" "" ""
-testing "grep (exit success)" "grep grep $0 > /dev/null 2>&1 ; echo \$?" "0\n" \
+testing "grep (exit success)" "grep grep '$0' > /dev/null 2>&1 ; echo \$?" "0\n" \
 	"" ""
 # Test various data sources and destinations
 
diff --git a/testsuite/printf.tests b/testsuite/printf.tests
index 9a3c87473..963ded94b 100755
--- a/testsuite/printf.tests
+++ b/testsuite/printf.tests
@@ -20,7 +20,7 @@ testing "printf produces no further output 2" \
 	"" ""
 
 testing "printf repeatedly uses pattern for each argv" \
-	"${bb}printf '%s\n' foo \$HOME" \
+	"${bb}printf '%s\n' foo '$HOME'" \
 	"foo\n$HOME\n" \
 	"" ""
 
diff --git a/testsuite/pwd/pwd-prints-working-directory b/testsuite/pwd/pwd-prints-working-directory
index 971adb5a6..fc7fea7c9 100644
--- a/testsuite/pwd/pwd-prints-working-directory
+++ b/testsuite/pwd/pwd-prints-working-directory
@@ -1,4 +1,4 @@
 # shell's $PWD may leave symlinks unresolved.
 # "pwd" may be a built-in and have the same problem.
 # External pwd _can't_ have that problem (current dir on Unix is physical).
-test $(`which pwd`) = $(busybox pwd)
+test "$(`which pwd`)" = "$(busybox pwd)"
diff --git a/testsuite/sum.tests b/testsuite/sum.tests
index b9f4cbfa8..e6379349f 100755
--- a/testsuite/sum.tests
+++ b/testsuite/sum.tests
@@ -13,12 +13,12 @@
 #   test can create a file "actual" instead of writing to stdout
 
 testing "sum -r file doesn't print file's name" \
-        "sum -r $0 | grep -c $0 && echo wrongly_printed_filename || echo yes" \
+        "sum -r '$0' | grep -c '$0' && echo wrongly_printed_filename || echo yes" \
 	"0\nyes\n" "" ""
 testing "sum -r file file does print both names" \
-        "sum -r $0 $0 | grep -c $0 && echo yes || echo wrongly_omitted_filename" \
+        "sum -r '$0' '$0' | grep -c '$0' && echo yes || echo wrongly_omitted_filename" \
 	"2\nyes\n" "" ""
 testing "sum -s file does print file's name" \
-        "sum -s $0 | grep -c $0 && echo yes || echo wrongly_omitted_filename" \
+        "sum -s '$0' | grep -c '$0' && echo yes || echo wrongly_omitted_filename" \
 	"1\nyes\n" "" ""
 exit $FAILCOUNT
diff --git a/testsuite/xargs/xargs-works b/testsuite/xargs/xargs-works
index c95869e89..a4bba7630 100644
--- a/testsuite/xargs/xargs-works
+++ b/testsuite/xargs/xargs-works
@@ -1,4 +1,6 @@
+# FEATURE: CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM
+
 [ -n "$d" ] || d=..
-find "$d" -name \*works -type f | xargs md5sum > logfile.gnu
-find "$d" -name \*works -type f | busybox xargs md5sum > logfile.bb
+find "$d" -name \*works -type f -print0 | xargs -0 md5sum > logfile.gnu
+find "$d" -name \*works -type f -print0 | busybox xargs -0 md5sum > logfile.bb
 diff -u logfile.gnu logfile.bb
-- 
cgit v1.2.3