summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Brown <ben.brown@codethink.co.uk>2013-12-18 17:41:24 +0000
committerBen Brown <ben.brown@codethink.co.uk>2013-12-19 09:33:09 +0000
commit646dcf88fb2a79a9567f3fadf9711e2e6bc58176 (patch)
tree8d23b425ff558ab9f94a678d9b440f5bf2d06a91
parent1d7bbf4e3a75a6be688090c9b06e11fca849cdce (diff)
downloadtbdiff-646dcf88fb2a79a9567f3fadf9711e2e6bc58176.tar.gz
Remove old tests and any code specific to those tests
-rwxr-xr-xtests/08_chardev_diff.sh29
-rwxr-xr-xtests/09_chardev_add_remove.sh30
-rwxr-xr-xtests/10_blockdev_diff.sh29
-rwxr-xr-xtests/11_blockdev_add_remove.sh30
-rwxr-xr-xtests/12_socket_remove.sh42
-rwxr-xr-xtests/13_socket_add.sh38
-rwxr-xr-xtests/14_socket_diff.sh44
-rwxr-xr-xtests/15_xattr_add.sh37
-rwxr-xr-xtests/dir_add_remove.sh.disabled41
-rwxr-xr-xtests/dir_diff.sh.disabled40
-rwxr-xr-xtests/fifo_add_remove.sh.disabled32
-rwxr-xr-xtests/fifo_diff.sh.disabled32
-rwxr-xr-xtests/regular_file_add_remove.sh.disabled32
-rwxr-xr-xtests/regular_file_diff.sh.disabled40
-rwxr-xr-xtests/run_tests.sh18
-rw-r--r--tests/sockbind.c70
-rwxr-xr-xtests/symlink_add_remove.sh.disabled48
-rwxr-xr-xtests/symlink_diff.sh.disabled57
-rw-r--r--tests/test_lib.sh152
19 files changed, 2 insertions, 839 deletions
diff --git a/tests/08_chardev_diff.sh b/tests/08_chardev_diff.sh
deleted file mode 100755
index c0cc72c..0000000
--- a/tests/08_chardev_diff.sh
+++ /dev/null
@@ -1,29 +0,0 @@
-#!/bin/bash
-
-TEST_ID="08"
-TEST_NAME="Character device difference"
-
-CREATE=`pwd`/$1
-DEPLOY=`pwd`/$2
-TEST_TOOLS=$3
-
-. ./test_lib.sh
-
-############# Test specific code ############
-
-setup_origin () {
- mknod $ORIGIN/tochange c `stat /dev/null -c '%t %T'`
-}
-
-setup_target () {
- mknod $TARGET/tochange c `stat /dev/full -c '%t %T'`
-}
-
-check_results () {
- test -c $ORIGIN/tochange &&
- test "`stat -c '%t %T' $ORIGIN/tochange`" = \
- "`stat -c '%t %T' $TARGET/tochange`"
-}
-
-#############################################
-main $@
diff --git a/tests/09_chardev_add_remove.sh b/tests/09_chardev_add_remove.sh
deleted file mode 100755
index edd7c93..0000000
--- a/tests/09_chardev_add_remove.sh
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/bin/bash
-
-TEST_ID="09"
-TEST_NAME="Character device add and remove"
-
-CREATE=`pwd`/$1
-DEPLOY=`pwd`/$2
-TEST_TOOLS=$3
-
-. ./test_lib.sh
-
-############# Test specific code ############
-
-setup_block_major_minor="`stat /dev/null -c '%t %T'`"
-
-setup_origin () {
- mknod $ORIGIN/toremove c $setup_block_major_minor
-}
-
-setup_target () {
- mknod $TARGET/toadd c $setup_block_major_minor
-}
-
-check_results () {
- test -c $ORIGIN/toadd &&
- test ! -c $ORIGIN/toremove
-}
-
-#############################################
-main $@
diff --git a/tests/10_blockdev_diff.sh b/tests/10_blockdev_diff.sh
deleted file mode 100755
index ebb529a..0000000
--- a/tests/10_blockdev_diff.sh
+++ /dev/null
@@ -1,29 +0,0 @@
-#!/bin/bash
-
-TEST_ID="10"
-TEST_NAME="Block device difference"
-
-CREATE=`pwd`/$1
-DEPLOY=`pwd`/$2
-TEST_TOOLS=$3
-
-. ./test_lib.sh
-
-############# Test specific code ############
-
-setup_origin () {
- mknod $ORIGIN/tochange b `stat /dev/null -c '%t %T'`
-}
-
-setup_target () {
- mknod $TARGET/tochange b `stat /dev/full -c '%t %T'`
-}
-
-check_results () {
- test -b $ORIGIN/tochange &&
- test "`stat -c '%t %T' $ORIGIN/tochange`" = \
- "`stat -c '%t %T' $TARGET/tochange`"
-}
-
-#############################################
-main $@
diff --git a/tests/11_blockdev_add_remove.sh b/tests/11_blockdev_add_remove.sh
deleted file mode 100755
index 3cc4ecb..0000000
--- a/tests/11_blockdev_add_remove.sh
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/bin/bash
-
-TEST_ID="11"
-TEST_NAME="Block device add and remove"
-
-CREATE=`pwd`/$1
-DEPLOY=`pwd`/$2
-TEST_TOOLS=$3
-
-. ./test_lib.sh
-
-############# Test specific code ############
-
-setup_block_major_minor="`stat /dev/null -c '%t %T'`"
-
-setup_origin () {
- mknod $ORIGIN/toremove b $setup_block_major_minor
-}
-
-setup_target () {
- mknod $TARGET/toadd b $setup_block_major_minor
-}
-
-check_results () {
- test -b $ORIGIN/toadd &&
- test ! -b $ORIGIN/toremove
-}
-
-#############################################
-main $@
diff --git a/tests/12_socket_remove.sh b/tests/12_socket_remove.sh
deleted file mode 100755
index d594b2a..0000000
--- a/tests/12_socket_remove.sh
+++ /dev/null
@@ -1,42 +0,0 @@
-#!/bin/bash
-
-TEST_ID="12"
-TEST_NAME="Socket device removal"
-
-CREATE=`pwd`/$1
-DEPLOY=`pwd`/$2
-TEST_TOOLS=$3
-
-. ./test_lib.sh
-
-############# Test specific code ############
-# sockets can only be moved, linked or removed by the file system
-# creation is only performed by the program that acts as the server
-# tbdiff won't be doing that so the only sensible operation is removal
-SOCKBIND=`mktemp`
-setup_origin () {
- # sockbind creates a socket then writes any data written to it to stdout
- # have to fork it because it will never stop, have to wait for it to
- # make the socket
- gcc sockbind.c -o $SOCKBIND 2>/dev/null >/dev/null
- $SOCKBIND "$ORIGIN/toremove" &
- SOCKBINDPID=$!
- until test -S "$ORIGIN/toremove"; do :; done
- kill $SOCKBINDPID && wait $SOCKBINDPID 2>/dev/null
- rm -f $SOCKBIND
-}
-
-setup_target () {
- true
-}
-
-create_test_return () {
- test $1 = 0
-}
-
-check_results () {
- test ! -S "$ORIGIN/toremove"
-}
-
-#############################################
-main $@
diff --git a/tests/13_socket_add.sh b/tests/13_socket_add.sh
deleted file mode 100755
index b8c84d6..0000000
--- a/tests/13_socket_add.sh
+++ /dev/null
@@ -1,38 +0,0 @@
-#!/bin/bash
-
-TEST_ID="13"
-TEST_NAME="Socket device addition"
-
-CREATE=`pwd`/$1
-DEPLOY=`pwd`/$2
-TEST_TOOLS=$3
-
-. ./test_lib.sh
-
-############# Test specific code ############
-# sockets can't be added sensibly, test that it hasn't been
-SOCKBIND=`mktemp`
-setup_origin () {
- true
-}
-
-setup_target () {
- gcc sockbind.c -o $SOCKBIND 2>/dev/null >/dev/null
- $SOCKBIND "$TARGET/toadd" &
- SOCKBINDPID=$!
- until test -S "$TARGET/toadd"; do :; done
- kill $SOCKBINDPID && wait $SOCKBINDPID 2>/dev/null
- rm -f $SOCKBIND
-}
-
-#tbdiff-create should fail when it would have to add a socket
-create_test_return () {
- test "$1" != "0"
-}
-
-check_results () {
- false #test should never reach this
-}
-
-#############################################
-main $@
diff --git a/tests/14_socket_diff.sh b/tests/14_socket_diff.sh
deleted file mode 100755
index d7d393f..0000000
--- a/tests/14_socket_diff.sh
+++ /dev/null
@@ -1,44 +0,0 @@
-#!/bin/bash
-
-TEST_ID="14"
-TEST_NAME="Socket device difference"
-
-CREATE=`pwd`/$1
-DEPLOY=`pwd`/$2
-TEST_TOOLS=$3
-
-. ./test_lib.sh
-
-############# Test specific code ############
-# sockets can't be changed sensibly, test that it hasn't been
-
-SOCKBIND=`mktemp`
-setup_origin () {
- gcc sockbind.c -o $SOCKBIND 2>/dev/null >/dev/null
- $SOCKBIND "$ORIGIN/tochange" &
- SOCKBINDPID=$!
- until test -S "$ORIGIN/tochange"; do :; done
- kill $SOCKBINDPID
- wait $SOCKBINDPID 2>/dev/null || true #wait returns false
-}
-
-setup_target () {
- $SOCKBIND "$TARGET/tochange" &
- SOCKBINDPID=$!
- until test -S "$TARGET/tochange"; do :; done
- kill $SOCKBINDPID &&
- wait $SOCKBINDPID 2>/dev/null #surpress terminated output
- rm -f $SOCKBIND
-}
-
-#tbdiff-create should fail to make a patch if it would have to change a socket
-create_test_return () {
- test "$1" != 0
-}
-
-check_results () {
- false #test should never reach this
-}
-
-#############################################
-main $@
diff --git a/tests/15_xattr_add.sh b/tests/15_xattr_add.sh
deleted file mode 100755
index 1dcec4c..0000000
--- a/tests/15_xattr_add.sh
+++ /dev/null
@@ -1,37 +0,0 @@
-#!/bin/bash
-
-TEST_ID="15"
-TEST_NAME="Extended Attributes manipulation"
-
-CREATE=`pwd`/$1
-DEPLOY=`pwd`/$2
-TEST_TOOLS=$3
-
-. ./test_lib.sh
-
-############# Test specific code ############
-if is_command getfattr && is_command setfattr; then :; else
- echo Test requires commands: getfattr, setfattr, attr >&2
- exit 127
-fi
-
-setup_origin () {
- touch $ORIGIN/file &&
- setfattr -n "user.preserve" -v "true" $ORIGIN/file &&
- setfattr -n "user.change" -v "false" $ORIGIN/file &&
- setfattr -n "user.remove" -v "false" $ORIGIN/file
-}
-
-setup_target () {
- touch $TARGET/file &&
- setfattr -n "user.preserve" -v "true" $TARGET/file &&
- setfattr -n "user.change" -v "true" $TARGET/file &&
- setfattr -n "user.add" -v "true" $TARGET/file
-}
-
-check_results () {
- check_xattrs $ORIGIN/file $TARGET/file
-}
-
-#############################################
-main $@
diff --git a/tests/dir_add_remove.sh.disabled b/tests/dir_add_remove.sh.disabled
deleted file mode 100755
index 295b0f9..0000000
--- a/tests/dir_add_remove.sh.disabled
+++ /dev/null
@@ -1,41 +0,0 @@
-#!/bin/bash
-
-TEST_ID="07"
-TEST_NAME="Directory add remove"
-
-CREATE=`pwd`/$1
-DEPLOY=`pwd`/$2
-TEST_TOOLS=$3
-
-. ./test_lib.sh
-
-############# Test specific code ############
-
-setup_origin () {
- mkdir -p $ORIGIN/remove/1/2/3/4
-}
-
-setup_target () {
- mkdir -p $TARGET/add/4/3/2/1 &&
- mkdir -p $TARGET/addsticky &&
- mkdir -p $TARGET/addsetgid &&
- chown -h :cdrom $TARGET/add &&
- chown -h :cdrom $TARGET/add/4/3/2/1 &&
- chmod +t $TARGET/addsticky &&
- chmod g+s $TARGET/addsetgid
-}
-
-check_results () {
- test -d $ORIGIN/add/4/3/2/1 &&
- test ! -d $ORIGIN/remove &&
- test -k $ORIGIN/addsticky &&
- test -g $ORIGIN/addsetgid &&
- check_same_mtime $ORIGIN/add $TARGET/add &&
- check_same_mode $ORIGIN/add $TARGET/add &&
- check_same_uidgid $ORIGIN/add $TARGET/add &&
- check_same_mode $ORIGIN/add $TARGET/add &&
- check_same_uidgid $ORIGIN/add/4/3/2/1 $TARGET/add/4/3/2/1
-}
-
-#############################################
-main $@
diff --git a/tests/dir_diff.sh.disabled b/tests/dir_diff.sh.disabled
deleted file mode 100755
index f9f56dd..0000000
--- a/tests/dir_diff.sh.disabled
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/bin/bash
-
-TEST_ID="06"
-TEST_NAME="Dir difference"
-
-CREATE=`pwd`/$1
-DEPLOY=`pwd`/$2
-TEST_TOOLS=$3
-
-. ./test_lib.sh
-
-############# Test specific code ############
-
-setup_origin () {
- mkdir $ORIGIN/a $ORIGIN/sticky $ORIGIN/setgid
-}
-
-setup_target () {
- mkdir $TARGET/a $TARGET/sticky $TARGET/setgid &&
- echo "1" > $TARGET/a/1 &&
- chown -h :cdrom $TARGET/a &&
- chmod +t $TARGET/sticky &&
- chmod g+s $TARGET/setgid &&
- chmod 707 $TARGET/a
-}
-
-check_results () {
- test -d $ORIGIN/a &&
- test -f $ORIGIN/a/1 &&
- test -k $ORIGIN/sticky &&
- test -g $ORIGIN/setgid &&
- check_same_mode $ORIGIN/a $TARGET/a && \
- check_same_uidgid $ORIGIN/a $TARGET/a && \
- check_same_mode $ORIGIN/a/1 $TARGET/a/1 &&
- check_same_uidgid $ORIGIN/a/1 $TARGET/a/1 &&
- check_content $ORIGIN/a/1 "1"
-}
-
-#############################################
-main $@
diff --git a/tests/fifo_add_remove.sh.disabled b/tests/fifo_add_remove.sh.disabled
deleted file mode 100755
index 9db6d12..0000000
--- a/tests/fifo_add_remove.sh.disabled
+++ /dev/null
@@ -1,32 +0,0 @@
-#!/bin/bash
-
-TEST_ID="03"
-TEST_NAME="Named pipe (FIFO) add remove test"
-
-CREATE=`pwd`/$1
-DEPLOY=`pwd`/$2
-TEST_TOOLS=$3
-
-. ./test_lib.sh
-
-############# Test specific code ############
-
-setup_origin () {
- mkfifo $ORIGIN/remove
-}
-
-setup_target () {
- mkfifo $TARGET/add &&
- chmod 707 $TARGET/add &&
- chown -h :cdrom $TARGET/add
-}
-
-check_results () {
- test -p $ORIGIN/add && \
- test ! -p $ORIGIN/remove && \
- check_same_mtime $ORIGIN/add $TARGET/add && \
- check_same_uidgid $ORIGIN/add $TARGET/add
-}
-
-#############################################
-main $@
diff --git a/tests/fifo_diff.sh.disabled b/tests/fifo_diff.sh.disabled
deleted file mode 100755
index f256414..0000000
--- a/tests/fifo_diff.sh.disabled
+++ /dev/null
@@ -1,32 +0,0 @@
-#!/bin/bash
-
-TEST_ID="02"
-TEST_NAME="Named pipe (FIFO) diff test"
-
-CREATE=`pwd`/$1
-DEPLOY=`pwd`/$2
-TEST_TOOLS=$3
-
-. ./test_lib.sh
-
-############# Test specific code ############
-
-setup_origin () {
- mkfifo $ORIGIN/remove
-}
-
-setup_target () {
- mkfifo $TARGET/add &&
- chmod 707 $TARGET/add &&
- chown -h :cdrom $TARGET/add
-}
-
-check_results () {
- test -p $ORIGIN/add && \
- test ! -p $ORIGIN/remove && \
- check_same_mtime $ORIGIN/add $TARGET/add && \
- check_same_uidgid $ORIGIN/add $TARGET/add
-}
-
-#############################################
-main $@
diff --git a/tests/regular_file_add_remove.sh.disabled b/tests/regular_file_add_remove.sh.disabled
deleted file mode 100755
index 66b5bc8..0000000
--- a/tests/regular_file_add_remove.sh.disabled
+++ /dev/null
@@ -1,32 +0,0 @@
-#!/bin/bash
-
-TEST_ID="01"
-TEST_NAME="Regular file add remove"
-
-CREATE=`pwd`/$1
-DEPLOY=`pwd`/$2
-TEST_TOOLS=$3
-
-. ./test_lib.sh
-
-############# Test specific code ############
-
-setup_origin () {
- touch $ORIGIN/remove
-}
-
-setup_target () {
- echo 1 > $TARGET/add &&
- chown -h :cdrom $TARGET/add
-}
-
-check_results () {
- test -f $ORIGIN/add && \
- test ! -f $ORIGIN/remove && \
- check_content $ORIGIN/add "1" && \
- check_same_mtime $ORIGIN/add $TARGET/add && \
- check_same_uidgid $ORIGIN/add $TARGET/add
-}
-
-#############################################
-main $@
diff --git a/tests/regular_file_diff.sh.disabled b/tests/regular_file_diff.sh.disabled
deleted file mode 100755
index 0e12454..0000000
--- a/tests/regular_file_diff.sh.disabled
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/bin/bash
-
-TEST_ID="00"
-TEST_NAME="Simple file diff"
-
-CREATE=`pwd`/$1
-DEPLOY=`pwd`/$2
-TEST_TOOLS=$3
-
-. ./test_lib.sh
-
-############# Test specific code ############
-
-ORG_FILE=$ORIGIN/b.txt
-TGT_FILE=$TARGET/b.txt
-
-setup_origin () {
- echo 1 >$ORIGIN/a.txt &&
- chgrp tty $ORIGIN/a.txt &&
- echo 1 > $ORG_FILE
-}
-
-setup_target () {
- echo 2 >$TARGET/a.txt &&
- chgrp tty $TARGET/a.txt &&
- echo 2 > $TGT_FILE &&
- chown :cdrom $TGT_FILE &&
- chmod 707 $TGT_FILE
-}
-
-check_results () {
- check_group $ORIGIN/a.txt tty &&
- check_content $ORG_FILE "2" && \
- check_perm $ORG_FILE 707 && \
- check_group $ORG_FILE cdrom && \
- check_same_mtime $ORG_FILE $TGT_FILE
-}
-
-#############################################
-main $@
diff --git a/tests/run_tests.sh b/tests/run_tests.sh
index 6fa2f29..ea92924 100755
--- a/tests/run_tests.sh
+++ b/tests/run_tests.sh
@@ -12,24 +12,6 @@ then
exit 1
fi
-ALLTESTSDIR=`pwd`
-
-for i in [0-9][0-9]*.sh
-do
- cd $ALLTESTSDIR
- echo "#### Running $i"
- ./$i ../tbdiff-create/tbdiff-create ../tbdiff-deploy/tbdiff-deploy
- if [ $? -ne 0 ]
- then
- echo "Test program $i failed" 1>&2
- cd $ALLTESTSDIR
- echo "-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-"
- exit 1
- fi
- echo "#####################################################################"
-done
-
-
echo "Starting baserock-system-config-sync tests"
merge_pass_folder="bscs-merge.pass"
merge_fail_folder="bscs-merge.fail"
diff --git a/tests/sockbind.c b/tests/sockbind.c
deleted file mode 100644
index f98b5ed..0000000
--- a/tests/sockbind.c
+++ /dev/null
@@ -1,70 +0,0 @@
-#include <stdio.h>
-#include <stddef.h>
-#include <string.h>
-#include <assert.h>
-#include <unistd.h>
-#include <sys/socket.h>
-#include <sys/un.h>
-
-#define MAX_CLIENTS 1
-#ifdef DEBUG
-#define DEBUGPRINT(fmt, ...) fprintf(stderr, "DEBUG: %s %s %d: " fmt, \
- __FILE__, __func__, __LINE__, __VA_ARGS__)
-#else
-#define DEBUGPRINT(...) (void)0
-#endif
-
-int main(int argc, char *argv[]){
- struct sockaddr_un sock = {
- .sun_family = AF_UNIX
- };
- int sfd;
- if (argc < 1){
- fprintf(stderr, "Usage: %s PATH\n", argv[0]);
- return 1;
- }
- strncpy(sock.sun_path, argv[1], sizeof(sock) - offsetof(struct sockaddr_un, sun_path));
- DEBUGPRINT("%s", "Constructed socket address\n");
- if ((sfd = socket(AF_UNIX, SOCK_STREAM, 0)) == -1){
- perror("socket");
- return 2;
- }
- DEBUGPRINT("Created socket fd=%d\n", sfd);
- if (bind(sfd, (struct sockaddr*)&sock, sizeof(sock)) == -1){
- perror("bind");
- return 3;
- }
- if (listen(sfd, MAX_CLIENTS) == -1){
- perror("listen");
- return 4;
- }
- DEBUGPRINT("Listening to %d clients\n", MAX_CLIENTS);
- {
- struct sockaddr_un client_address;
- socklen_t client_size = sizeof(client_address);
- int cfd;
- while ((cfd = accept(sfd, (struct sockaddr*)&client_address,
- &client_size)) != -1) {
- char buf[BUFSIZ];
- ssize_t rdcount = -1;
- DEBUGPRINT("Listening to client fd=%d\n", cfd);
- while ((rdcount = read(cfd, buf, sizeof(buf))) > 0) {
- DEBUGPRINT("Read %zi bytes from client, "
- "message was:\n%.*s", rdcount,
- rdcount, buf);
- write(STDOUT_FILENO, buf, rdcount);
- }
- assert(rdcount == 0 || rdcount == -1);
- if (rdcount == -1) {
- perror("read");
- return 5;
- }
- DEBUGPRINT("Finished listening to fd=%d\n", cfd);
- close(cfd);
- }
- }
-
- close(sfd);
- unlink(argv[1]);
- return 0;
-}
diff --git a/tests/symlink_add_remove.sh.disabled b/tests/symlink_add_remove.sh.disabled
deleted file mode 100755
index badf199..0000000
--- a/tests/symlink_add_remove.sh.disabled
+++ /dev/null
@@ -1,48 +0,0 @@
-#!/bin/bash
-
-TEST_ID="05"
-TEST_NAME="Symlink add/remove"
-
-CREATE=`pwd`/$1
-DEPLOY=`pwd`/$2
-TEST_TOOLS=$3
-
-. ./test_lib.sh
-
-############# Test specific code ############
-
-setup_origin () {
- (
- cd $ORIGIN
- ln -s /foo remove &&
- mkdir -p data &&
- touch data/a data/b &&
- ln -s data datalink
- )
-}
-
-setup_target () {
- mkdir -p $TARGET/data &&
- touch $TARGET/data/a $TARGET/data/b &&
- ln -s /bar $TARGET/add &&
- chown -h :cdrom $TARGET/add
-}
-
-check_results () {
- test -L $ORIGIN/add &&
- test ! -L $ORIGIN/remove &&
- check_symlink $ORIGIN/add "/bar" &&
- check_same_mtime $ORIGIN/add $TARGET/add &&
- check_same_uidgid $ORIGIN/add $TARGET/add &&
- test ! -L $ORIGIN/datalink &&
- echo datalink not link &&
- test -d $ORIGIN/data &&
- echo data is dir &&
- test -f $ORIGIN/data/a &&
- echo a is dir &&
- test -f $ORIGIN/data/b &&
- echo b is dir
-}
-
-#############################################
-main $@
diff --git a/tests/symlink_diff.sh.disabled b/tests/symlink_diff.sh.disabled
deleted file mode 100755
index d975191..0000000
--- a/tests/symlink_diff.sh.disabled
+++ /dev/null
@@ -1,57 +0,0 @@
-#!/bin/bash
-
-TEST_ID="04"
-TEST_NAME="Symlink diff"
-
-CREATE=`pwd`/$1
-DEPLOY=`pwd`/$2
-TEST_TOOLS=$3
-
-. ./test_lib.sh
-
-############# Test specific code ############
-
-setup_origin () {
- (
- cd $ORIGIN &&
- echo 1 >file &&
- chown :cdrom file &&
- mkdir -p dir &&
- chown :cdrom dir &&
- ln -s file flink &&
- ln -s dir dlink
- ln -s /foo a
- )
-}
-
-setup_target () {
- (
- cd $TARGET &&
- echo 1 >file &&
- chown :cdrom file &&
- mkdir -p dir &&
- chown :cdrom dir &&
- ln -s file flink &&
- ln -s dir dlink
- chgrp -h daemon flink dlink &&
- ln -s /bar a &&
- chown -h :cdrom a
- )
-}
-
-check_results () {
- test -f $ORIGIN/file &&
- check_group $ORIGIN/file cdrom &&
- test -d $ORIGIN/dir &&
- check_group $ORIGIN/dir cdrom &&
- check_group $ORIGIN/flink daemon &&
- check_group $ORIGIN/dlink daemon &&
- test -L $ORIGIN/a && \
- check_symlink $ORIGIN/a "/bar" && \
- check_group $ORIGIN/a cdrom && \
- check_same_mtime $ORIGIN/a $TARGET/a && \
- check_same_uidgid $ORIGIN/a $TARGET/a
-}
-
-#############################################
-main $@
diff --git a/tests/test_lib.sh b/tests/test_lib.sh
index 81a6bc7..fde3fe2 100644
--- a/tests/test_lib.sh
+++ b/tests/test_lib.sh
@@ -4,9 +4,6 @@ FAIL=" FAIL"
TESTDIR="$PWD/temp"
rm -rf "$TESTDIR"
mkdir "$TESTDIR"
-IMGFILE=$TESTDIR/tbdiff.img
-ORIGIN=$TESTDIR/orig
-TARGET=$TESTDIR/target
nums=( zero one two three four five six seven )
files=( null a.txt b.txt dirdir dirdir/fifo dirdir/symlinkb dirdir/chardev \
@@ -38,152 +35,7 @@ insertfiles() {
fi
}
-# check_same_mtime FILE_A FILE_B
-check_same_mtime () {
- test $(stat -c %Y $1) = $(stat -c %Y $2)
-}
-
-# check_same_uidgid FILE_A FILE_B
-check_same_uidgid () {
- test $(stat -c "%u.%g" $1) = $(stat -c "%u.%g" $2)
-}
-
-# check_same_mode FILE_A FILE_B
-check_same_mode () {
- test $(stat -c "%f" $1) = $(stat -c "%f" $2)
-}
-
-# check_content FILE EXPECTED_OCTAL_PERMISSIONS
-check_perm () {
- test $(stat -c %a $1) = $2
-}
-
-# check_content FILE EXPECTED_OCTAL_PERMISSIONS
-check_symlink () {
- test $(readlink $1) = $2
-}
-
-# check_content FILE EXPECTED_CONTENT
-check_content () {
- test $(cat $1) = $2
-}
-
-# check_group FILE EXPECTED_GROUP_NAME
-check_group () {
- test $(stat -c %G $1) = $2
-}
-
-check_xattrs () {
- test "`getfattr -d $1 2>/dev/null | tail -n +2`" = \
- "`getfattr -d $2 2>/dev/null | tail -n +2`"
-}
-
-# tests whether a command exists
-is_command () {
- type $1 >/dev/null 2>/dev/null
-}
-
-#check_command COMMAND_STRING TEST_COMMAND COMMAND_DESCRIPTION
-check_command () {
- COMMAND_STRING="$1"
- COMMAND_DESCRIPTION="$2"
- TEST_COMMAND="$3"
- eval $COMMAND_STRING
- RETVAL=$?
- if is_command "$TEST_COMMAND"; then #test explicitly checks return
- if $TEST_COMMAND $RETVAL; then
- if [ "$RETVAL" != "0" ]; then
- echo $COMMAND_STRING expected failure in \
- $COMMAND_DESCRIPTION >&2
- echo $OK
- exit 0
- fi
- else
- if [ "$RETVAL" = "0" ]; then
- echo $COMMAND_STRING Unexpected success in \
- $COMMAND_DESCRIPTION >&2
- echo $FAIL
- cleanup_and_exit
- else
- echo $COMMAND_STRING Unexpected failure in \
- $COMMAND_DESCRIPTION >&2
- echo $FAIL
- cleanup_and_exit
- fi
- fi
- elif [ "$RETVAL" != "0" ]; then #return value expected to be 0
- echo $COMMAND_STRING Unexpected failure $COMMAND_DESCRIPTION >&2
- echo $FAIL
- cleanup_and_exit
- fi
-}
-
-start () {
- if [ $# -ne 2 ]
- then
- echo "ERROR: Not enough arguments."
- cleanup_and_exit
- fi
-
- if [ ! -f "$1" ]
- then
- echo "ERROR: $1 is an invalid tbdiff-create path" 1>&2
- cleanup_and_exit
- fi
-
- if [ ! -f "$2" ]
- then
- echo "ERROR: $1 is an invalid tbdiff-deploy path" 1>&2
- cleanup_and_exit
- fi
-}
-
cleanup_and_exit () {
- rm -rf $TESTDIR
- exit 1
-}
-command_succeeded () {
- test "$1" = "0"
-}
-main () {
- start "$@"
- echo -n "$TEST_ID Setting up $TEST_NAME test: "
- 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 &&
- check_command 'setup_origin' "$TEST_ID-$TEST_NAME: creating origin" \
- 'command_succeeded' &&
- mkdir -p $TARGET &&
- check_command 'setup_target' "$TEST_ID-$TEST_NAME: creating target" \
- 'command_succeeded' &&
-
- echo $OK
-
- echo "$TEST_ID Performing $TEST_NAME image creation and deployment: "
- sleep 2s &&
- CWD=$(pwd) &&
- check_command "$CREATE $IMGFILE $ORIGIN $TARGET" \
- "$TEST_ID-$TEST_NAME: creating image" \
- 'create_test_return'
-
- cd $ORIGIN &&
- check_command "$DEPLOY $IMGFILE" \
- "$TEST_ID-$TEST_NAME: deploying image" \
- 'deploy_test_return'
-
- cd $CWD
- echo -n "$TEST_ID Checking $TEST_NAME results: "
- check_results
- if test "x$?" != "x0"
- then
- echo $FAIL
- echo "Applying image did not produce the expected results" 1>&2
- cleanup_and_exit
- fi
- echo $OK
+ rm -rf $TESTDIR
+ exit 1
}