summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorRichard Maw <richard.maw@codethink.co.uk>2011-10-06 09:05:27 +0100
committerRichard Maw <richard.maw@codethink.co.uk>2011-10-06 09:05:27 +0100
commit1e28cd5acc4a33a0f166fb9df5ec3ea9e5d7e1ee (patch)
tree32e06ae6cec026df0e44c4adeaca15e9b8999125 /tests
parentddf863c9d17fa4f9caee338dedff882315f32a6c (diff)
downloadtbdiff-1e28cd5acc4a33a0f166fb9df5ec3ea9e5d7e1ee.tar.gz
Removed bashisms from test scripts, so sh should be able to run them
The temporary test directory is now made using mktemp -d instead of using uuid mktemp comes with coreutils, uuid does not, and mktemp makes the directory for you.
Diffstat (limited to 'tests')
-rwxr-xr-xtests/00_regular_file_diff.sh4
-rwxr-xr-xtests/01_regular_file_add_remove.sh4
-rwxr-xr-xtests/02_fifo_diff.sh4
-rwxr-xr-xtests/03_fifo_add_remove.sh4
-rwxr-xr-xtests/04_symlink_diff.sh4
-rwxr-xr-xtests/05_symlink_add_remove.sh4
-rwxr-xr-xtests/06_dir_diff.sh4
-rwxr-xr-xtests/07_dir_add_remove.sh4
-rw-r--r--tests/test_lib.sh30
9 files changed, 34 insertions, 28 deletions
diff --git a/tests/00_regular_file_diff.sh b/tests/00_regular_file_diff.sh
index 4eb6672..3bd3310 100755
--- a/tests/00_regular_file_diff.sh
+++ b/tests/00_regular_file_diff.sh
@@ -14,14 +14,14 @@ TEST_TOOLS=$3
ORG_FILE=$ORIGIN/b.txt
TGT_FILE=$TARGET/b.txt
-function setup {
+setup () {
echo 1 > $ORG_FILE && \
echo 2 > $TGT_FILE && \
chown :cdrom $TGT_FILE && \
chmod 707 $TGT_FILE
}
-function check_results {
+check_results () {
check_content $ORG_FILE "2" && \
check_perm $ORG_FILE 707 && \
check_group $ORG_FILE cdrom && \
diff --git a/tests/01_regular_file_add_remove.sh b/tests/01_regular_file_add_remove.sh
index cdf3eab..f97d407 100755
--- a/tests/01_regular_file_add_remove.sh
+++ b/tests/01_regular_file_add_remove.sh
@@ -11,13 +11,13 @@ TEST_TOOLS=$3
############# Test specific code ############
-function setup {
+setup () {
touch $ORIGIN/remove && \
echo 1 > $TARGET/add && \
chown -h :cdrom $TARGET/add
}
-function check_results {
+check_results () {
test -f $ORIGIN/add && \
test ! -f $ORIGIN/remove && \
check_content $ORIGIN/add "1" && \
diff --git a/tests/02_fifo_diff.sh b/tests/02_fifo_diff.sh
index 0bf719e..14bc3ac 100755
--- a/tests/02_fifo_diff.sh
+++ b/tests/02_fifo_diff.sh
@@ -11,14 +11,14 @@ TEST_TOOLS=$3
############# Test specific code ############
-function setup {
+setup () {
mkfifo $ORIGIN/remove && \
mkfifo $TARGET/add && \
chmod 707 $TARGET/add && \
chown -h :cdrom $TARGET/add
}
-function check_results {
+check_results () {
test -p $ORIGIN/add && \
test ! -p $ORIGIN/remove && \
check_same_mtime $ORIGIN/add $TARGET/add && \
diff --git a/tests/03_fifo_add_remove.sh b/tests/03_fifo_add_remove.sh
index 58ffa67..fb42406 100755
--- a/tests/03_fifo_add_remove.sh
+++ b/tests/03_fifo_add_remove.sh
@@ -11,14 +11,14 @@ TEST_TOOLS=$3
############# Test specific code ############
-function setup {
+setup () {
mkfifo $ORIGIN/remove && \
mkfifo $TARGET/add && \
chmod 707 $TARGET/add && \
chown -h :cdrom $TARGET/add
}
-function check_results {
+check_results () {
test -p $ORIGIN/add && \
test ! -p $ORIGIN/remove && \
check_same_mtime $ORIGIN/add $TARGET/add && \
diff --git a/tests/04_symlink_diff.sh b/tests/04_symlink_diff.sh
index 4b080cf..5c8dc5f 100755
--- a/tests/04_symlink_diff.sh
+++ b/tests/04_symlink_diff.sh
@@ -11,13 +11,13 @@ TEST_TOOLS=$3
############# Test specific code ############
-function setup {
+setup () {
ln -s /foo $ORIGIN/a && \
ln -s /bar $TARGET/a && \
chown -h :cdrom $TARGET/a
}
-function check_results {
+check_results () {
test -L $ORIGIN/a && \
check_symlink $ORIGIN/a "/bar" && \
check_group $ORIGIN/a cdrom && \
diff --git a/tests/05_symlink_add_remove.sh b/tests/05_symlink_add_remove.sh
index 147b8f0..5e841bf 100755
--- a/tests/05_symlink_add_remove.sh
+++ b/tests/05_symlink_add_remove.sh
@@ -11,13 +11,13 @@ TEST_TOOLS=$3
############# Test specific code ############
-function setup {
+setup () {
ln -s /foo $ORIGIN/remove && \
ln -s /bar $TARGET/add && \
chown -h :cdrom $TARGET/add
}
-function check_results {
+check_results () {
test -L $ORIGIN/add && \
test ! -L $ORIGIN/remove && \
check_symlink $ORIGIN/add "/bar" && \
diff --git a/tests/06_dir_diff.sh b/tests/06_dir_diff.sh
index cc86793..3d8fd13 100755
--- a/tests/06_dir_diff.sh
+++ b/tests/06_dir_diff.sh
@@ -11,7 +11,7 @@ TEST_TOOLS=$3
############# Test specific code ############
-function setup {
+setup () {
mkdir $ORIGIN/a && \
mkdir $TARGET/a && \
echo "1" > $TARGET/a/1 && \
@@ -19,7 +19,7 @@ function setup {
chmod 707 $TARGET/a
}
-function check_results {
+check_results () {
test -d $ORIGIN/a && \
test -f $ORIGIN/a/1 && \
check_same_mode $ORIGIN/a $TARGET/a #&& \
diff --git a/tests/07_dir_add_remove.sh b/tests/07_dir_add_remove.sh
index fe34a0e..eed19d2 100755
--- a/tests/07_dir_add_remove.sh
+++ b/tests/07_dir_add_remove.sh
@@ -11,14 +11,14 @@ TEST_TOOLS=$3
############# Test specific code ############
-function setup {
+setup () {
mkdir -p $ORIGIN/remove/1/2/3/4 && \
mkdir -p $TARGET/add/4/3/2/1 && \
chown -h :cdrom $TARGET/add
chown -h :cdrom $TARGET/add/4/3/2/1
}
-function check_results {
+check_results () {
test -d $ORIGIN/add/4/3/2/1 && \
test ! -d $ORIGIN/remove && \
check_same_mtime $ORIGIN/add $TARGET/add && \
diff --git a/tests/test_lib.sh b/tests/test_lib.sh
index 342ee39..4645166 100644
--- a/tests/test_lib.sh
+++ b/tests/test_lib.sh
@@ -1,47 +1,47 @@
OK=" OK"
FAIL=" FAIL"
-TESTDIR=/tmp/tbdiff-test-`uuid`
+TESTDIR=`mktemp -d`
IMGFILE=$TESTDIR/tbdiff.img
ORIGIN=$TESTDIR/orig
TARGET=$TESTDIR/target
# check_same_mtime FILE_A FILE_B
-function check_same_mtime {
+check_same_mtime () {
test $(stat -c %Y $1) = $(stat -c %Y $2)
}
# check_same_uidgid FILE_A FILE_B
-function check_same_uidgid {
+check_same_uidgid () {
test $(stat -c "%u.%g" $1) = $(stat -c "%u.%g" $2)
}
# check_same_mode FILE_A FILE_B
-function check_same_mode {
+check_same_mode () {
test $(stat -c "%f" $1) = $(stat -c "%f" $2)
}
# check_content FILE EXPECTED_OCTAL_PERMISSIONS
-function check_perm {
+check_perm () {
test $(stat -c %a $1) = $2
}
# check_content FILE EXPECTED_OCTAL_PERMISSIONS
-function check_symlink {
+check_symlink () {
test $(readlink $1) = $2
}
# check_content FILE EXPECTED_CONTENT
-function check_content {
+check_content () {
test $(cat $1) = $2
}
# check_group FILE EXPECTED_GROUP_NAME
-function check_group {
+check_group () {
test $(stat -c %G $1) = $2
}
-function start {
+start () {
if [ $# -ne 2 ]
then
echo "ERROR: Not enough arguments."
@@ -61,15 +61,21 @@ function start {
fi
}
-function cleanup_and_exit {
+cleanup_and_exit () {
rm -rf $TESTDIR
exit 1
}
-function main {
+main () {
start $@
echo -n "$TEST_ID Setting up $TEST_NAME test: "
- rm -rf $TESTDIR && \
+ if [ ! -d $TESTDIR ]
+ then
+ echo $FAIL
+ echo "Couldn't create temporary directory for test. " \
+ "Please check mktemp accepts -d and permissions." >&2
+ cleanup_and_exit
+ fi
mkdir -p $ORIGIN && \
mkdir -p $TARGET && \
setup