aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorElliott Hughes <enh@google.com>2019-07-24 14:52:28 -0700
committerRob Landley <rob@landley.net>2019-07-24 21:33:12 -0500
commitb891b49e08082f1385ae7150063841c0766f53c8 (patch)
treebcc018e0cbf566c02e50e5e9b894d532ab5e029b /tests
parent6bf1360b72816b3ddc95b33de1bb111d718399b1 (diff)
downloadtoybox-b891b49e08082f1385ae7150063841c0766f53c8.tar.gz
tests: fix for empty /etc/passwd or /etc/group.
It turns out some Android devices have an empty /etc/passwd and/or /etc/group, which was defeating the previous workaround. Switch to testing the intention more directly: we'll try the file in /etc, and if that didn't work, we'll assume we need a workaround.
Diffstat (limited to 'tests')
-rwxr-xr-xtests/chgrp.test11
-rwxr-xr-xtests/chown.test17
2 files changed, 11 insertions, 17 deletions
diff --git a/tests/chgrp.test b/tests/chgrp.test
index 5c7e4258..a137baed 100755
--- a/tests/chgrp.test
+++ b/tests/chgrp.test
@@ -9,13 +9,10 @@ then
exit
fi
-if [ -f /etc/group ]; then
- # We chgrp between "root" and the last group in /etc/group.
- GRP="$(sed -n '$s/:.*//p' /etc/group)"
-else
- # Or assume we're on Android and pick a well-known group.
- GRP=shell
-fi
+# We chgrp between "root" and the last group in /etc/group.
+GRP="$(sed -n '$s/:.*//p' /etc/group)"
+# Or if that fails, assume we're on Android and pick a well-known group.
+: "${GRP:=shell}"
# Set up a little testing hierarchy
diff --git a/tests/chown.test b/tests/chown.test
index 20be541a..f79d5c1a 100755
--- a/tests/chown.test
+++ b/tests/chown.test
@@ -9,16 +9,13 @@ then
exit
fi
-if [ -f /etc/group ]; then
- # We chown between user "root" and the last user in /etc/passwd,
- # and group "root" and the last group in /etc/group.
- USR="$(sed -n '$s/:.*//p' /etc/passwd)"
- GRP="$(sed -n '$s/:.*//p' /etc/group)"
-else
- # Or we assume we're on Android...
- USR="shell"
- GRP="daemon"
-fi
+# We chown between user "root" and the last user in /etc/passwd,
+# and group "root" and the last group in /etc/group.
+USR="$(sed -n '$s/:.*//p' /etc/passwd)"
+GRP="$(sed -n '$s/:.*//p' /etc/group)"
+# Or if that fails, we assume we're on Android...
+: "${USR:=shell}"
+: "${GRP:=daemon}"
# Set up a little testing hierarchy