summaryrefslogtreecommitdiff
path: root/tests/cp_tests.mk
diff options
context:
space:
mode:
authorEric Andersen2004-04-06 11:10:30 +0000
committerEric Andersen2004-04-06 11:10:30 +0000
commit650fe63467e693990cf357c51b74db3278088a56 (patch)
tree660b1fb0e4d7f99802a85cdd00166fafbf3132dc /tests/cp_tests.mk
parent39396b95fc7c46bfa29ec576357fb7f8e755762c (diff)
downloadbusybox-650fe63467e693990cf357c51b74db3278088a56.zip
busybox-650fe63467e693990cf357c51b74db3278088a56.tar.gz
Kill off the old 'tests' stuff. Write a ton of new tests for the
'testsuite' dir. Fix a bunch of broken tests. Fix the testsuite 'runtest' script so it actually reports all failures and provides meaningful feedback. -Erik
Diffstat (limited to 'tests/cp_tests.mk')
-rw-r--r--tests/cp_tests.mk360
1 files changed, 0 insertions, 360 deletions
diff --git a/tests/cp_tests.mk b/tests/cp_tests.mk
deleted file mode 100644
index b96c5ce..0000000
--- a/tests/cp_tests.mk
+++ /dev/null
@@ -1,360 +0,0 @@
-# cp_tests.mk - Set of test cases for busybox cp
-# -------------
-# Copyright (C) 2000 Karl M. Hegbloom <karlheg@debian.org> GPL
-#
-
-# GNU `cp'
-GCP = /bin/cp
-# BusyBox `cp'
-BCP = $(shell pwd)/cp
-
-all:: cp_tests
-clean:: cp_clean
-
-cp_clean:
- - rm -rf cp_tests cp_*.{gnu,bb} cp
-
-# check_cp_dir_to_dir_wo_a removed from this list; see below
-cp_tests: cp_clean cp check_exists check_simple_cp check_cp_symlnk \
- check_cp_symlink_w_a check_cp_files_to_dir check_cp_files_to_dir_w_d \
- check_cp_files_to_dir_w_p check_cp_files_to_dir_w_p_and_d \
- check_cp_dir_to_dir_w_a \
- check_cp_dir_to_dir_w_a_take_two
-
-check_exists:
- @echo;
- @echo "No output from diff means busybox cp is functioning properly.";
- @echo "Some tests might show timestamp differences that are Ok.";
-
- @echo;
- @echo Verify that busybox cp exists;
- @echo ------------------------------;
- [ -x ${BCP} ] || exit 0
-
- @echo;
- mkdir cp_tests;
-
-check_simple_cp:
- @echo Copy a file to a copy of the file;
- @echo ------------------------------;
- cd cp_tests; \
- echo A file > afile; \
- ls -l afile > ../cp_afile_afilecopy.gnu; \
- ${GCP} afile afilecopy; \
- ls -l afile afilecopy >> ../cp_afile_afilecopy.gnu;
-
- @echo;
- rm -rf cp_tests/*;
-
- @echo;
- cd cp_tests; \
- echo A file > afile; \
- ls -l afile > ../cp_afile_afilecopy.bb; \
- ${BCP} afile afilecopy; \
- ls -l afile afilecopy >> ../cp_afile_afilecopy.bb;
-
- @echo;
- @echo Might show timestamp differences.
- -diff -u cp_afile_afilecopy.gnu cp_afile_afilecopy.bb;
-
- @echo;
- rm -rf cp_tests/*;
-
-check_cp_symlnk:
- @echo; echo Copy a file pointed to by a symlink;
- @echo ------------------------------;
- cd cp_tests; \
- mkdir here there; \
- echo A file > afile; \
- cd here; \
- ln -s ../afile .; \
-
- @echo;
- cd cp_tests; \
- ls -lR . > ../cp_symlink.gnu; \
- ${GCP} here/afile there; \
- ls -lR . >> ../cp_symlink.gnu;
-
- @echo;
- rm -rf cp_tests/there/*;
-
- sleep 1;
-
- @echo;
- cd cp_tests; \
- ls -lR . > ../cp_symlink.bb; \
- ${BCP} here/afile there; \
- ls -lR . >> ../cp_symlink.bb;
-
- @echo;
- @echo Will show timestamp difference.
- -diff -u cp_symlink.gnu cp_symlink.bb;
-
- @echo;
- rm -rf cp_tests/*
-
-check_cp_symlink_w_a:
- @echo; echo Copy a symlink, useing the -a switch.;
- @echo ------------------------------;
- cd cp_tests; \
- echo A file > afile; \
- mkdir here there; \
- cd here; \
- ln -s ../afile .
-
- cd cp_tests; \
- ls -lR . > ../cp_a_symlink.gnu; \
- ${GCP} -a here/afile there; \
- ls -lR . >> ../cp_a_symlink.gnu;
-
- @echo;
- rm -rf cp_tests/there/*;
-
- sleep 1;
-
- @echo;
- cd cp_tests; \
- echo A file > afile; \
- ls -lR . > ../cp_a_symlink.bb; \
- ${BCP} -a here/afile there; \
- ls -lR . >> ../cp_a_symlink.bb;
-
- @echo;
- diff -u cp_a_symlink.gnu cp_a_symlink.bb;
-
- @echo;
- rm -rf cp_tests/*;
-
-
-check_cp_files_to_dir:
- # Copy a set of files to a directory.
- @echo; echo Copy a set of files to a directory.;
- @echo ------------------------------;
- cd cp_tests; \
- echo A file number one > afile1; \
- echo A file number two, blah. > afile2; \
- ln -s afile1 symlink1; \
- mkdir there;
-
- cd cp_tests; \
- ${GCP} afile1 afile2 symlink1 there/; \
- ls -lR > ../cp_files_dir.gnu;
-
- @echo;
- rm -rf cp_tests/there/*;
-
- @echo;
- cd cp_tests; \
- ${BCP} afile1 afile2 symlink1 there/; \
- ls -lR > ../cp_files_dir.bb;
-
- @echo;
- diff -u cp_files_dir.gnu cp_files_dir.bb;
-
- @echo;
- rm -rf cp_tests/*;
-
-check_cp_files_to_dir_w_d:
- # Copy a set of files to a directory with the -d switch.
- @echo; echo Copy a set of files to a directory with the -d switch.;
- @echo ------------------------------;
- cd cp_tests; \
- echo A file number one > afile1; \
- echo A file number two, blah. > afile2; \
- ln -s afile1 symlink1; \
- mkdir there1; \
- ${GCP} -d afile1 afile2 symlink1 there1/; \
- ls -lR > ../cp_d_files_dir.gnu;
-
- @echo;
- rm -rf cp_tests/{afile{1,2},symlink1,there1};
-
- @echo;
- cd cp_tests; \
- echo A file number one > afile1; \
- echo A file number two, blah. > afile2; \
- ln -s afile1 symlink1; \
- mkdir there1; \
- ${BCP} -d afile1 afile2 symlink1 there1/; \
- ls -lR > ../cp_d_files_dir.bb;
-
- @echo;
- diff -u cp_d_files_dir.gnu cp_d_files_dir.bb;
-
- @echo;
- rm -rf cp_tests/{afile{1,2},symlink1,there1};
-
-check_cp_files_to_dir_w_p:
- # Copy a set of files to a directory with the -p switch.
- @echo; echo Copy a set of files to a directory with the -p switch.;
- @echo ------------------------------;
- cd cp_tests; \
- echo A file number one > afile1; \
- echo A file number two, blah. > afile2; \
- touch --date='Sat Jan 29 21:24:08 PST 2000' afile1; \
- ln -s afile1 symlink1; \
- mkdir there1; \
- ${GCP} -p afile1 afile2 symlink1 there1/; \
- ls -lR > ../cp_p_files_dir.gnu;
-
- @echo;
- rm -rf cp_tests/{afile{1,2},symlink1,there1};
-
- @echo;
- cd cp_tests; \
- echo A file number one > afile1; \
- echo A file number two, blah. > afile2; \
- touch --date='Sat Jan 29 21:24:08 PST 2000' afile1; \
- ln -s afile1 symlink1; \
- mkdir there1; \
- ${BCP} -p afile1 afile2 symlink1 there1/; \
- ls -lR > ../cp_p_files_dir.bb;
-
- @echo;
- diff -u cp_p_files_dir.gnu cp_p_files_dir.bb;
-
- @echo;
- rm -rf cp_tests/{afile{1,2},symlink1,there1};
-
-
-check_cp_files_to_dir_w_p_and_d:
- @echo; echo Copy a set of files to a directory with -p and -d switches.
- @echo ------------------------------;
- cd cp_tests; \
- echo A file number one > afile1; \
- echo A file number two, blah. > afile2; \
- touch --date='Sat Jan 29 21:24:08 PST 2000' afile1; \
- ln -s afile1 symlink1; \
- mkdir there1; \
- ${GCP} -p -d afile1 afile2 symlink1 there1/; \
- ls -lR > ../cp_pd_files_dir.gnu;
-
- @echo;
- rm -rf cp_tests/{afile{1,2},symlink1,there1};
-
- @echo;
- cd cp_tests; \
- echo A file number one > afile1; \
- echo A file number two, blah. > afile2; \
- touch --date='Sat Jan 29 21:24:08 PST 2000' afile1; \
- ln -s afile1 symlink1; \
- mkdir there1; \
- ${BCP} -p -d afile1 afile2 symlink1 there1/; \
- ls -lR > ../cp_pd_files_dir.bb;
-
- @echo;
- diff -u cp_pd_files_dir.gnu cp_pd_files_dir.bb;
-
- @echo;
- rm -rf cp_tests/{afile{1,2},symlink1,there1};
-
-# This test doesn't work any more; gnu cp now _does_ copy a directory
-# to a subdirectory of itself. What's worse, that "feature" has no
-# (documented) way to be disabled with command line switches.
-# It's not obvious that busybox cp should mimic this behavior.
-# For now, this test is removed from the cp_tests list, above.
-check_cp_dir_to_dir_wo_a:
- # Copy a directory to another directory, without the -a switch.
- @echo; echo Copy a directory to another directory, without the -a switch.
- @echo ------------------------------;
- @echo There should be an error message about cannot cp a dir to a subdir of itself.
- cd cp_tests; \
- touch a b c; \
- mkdir adir; \
- ls -lR . > ../cp_a_star_adir.gnu; \
- ${GCP} -a * adir; \
- ls -lR . >> ../cp_a_star_adir.gnu;
-
- @echo
- @echo There should be an error message about cannot cp a dir to a subdir of itself.
- cd cp_tests; \
- rm -rf adir; \
- mkdir adir; \
- ls -lR . > ../cp_a_star_adir.bb; \
- ${BCP} -a * adir; \
- ls -lR . >> ../cp_a_star_adir.bb;
-
- @echo;
- diff -u cp_a_star_adir.gnu cp_a_star_adir.bb;
-
- # Done
- @echo;
- rm -rf cp_tests;
- @echo; echo Done.
-
-
-check_cp_dir_to_dir_w_a:
- @echo; echo Copy a directory into another directory with the -a switch.
- @echo ------------------------------;
- cd cp_tests; \
- mkdir dir{a,b}; \
- echo A file > dira/afile; \
- echo A file in dirb > dirb/afileindirb; \
- ln -s dira/afile dira/alinktoafile; \
- mkdir dira/subdir1; \
- echo Another file > dira/subdir1/anotherfile; \
- ls -lR . > ../cp_a_dira_dirb.gnu; \
- ${GCP} -a dira dirb; \
- ls -lR . >> ../cp_a_dira_dirb.gnu;
-
- @echo;
- rm -rf cp_tests/dir{a,b};
-
- @echo;
- cd cp_tests; \
- mkdir dir{a,b}; \
- echo A file > dira/afile; \
- echo A file in dirb > dirb/afileindirb; \
- ln -s dira/afile dira/alinktoafile; \
- mkdir dira/subdir1; \
- echo Another file > dira/subdir1/anotherfile; \
- ls -lR . > ../cp_a_dira_dirb.bb; \
- ${BCP} -a dira dirb; \
- ls -lR . >> ../cp_a_dira_dirb.bb;
-
- @echo;
- diff -u cp_a_dira_dirb.gnu cp_a_dira_dirb.bb;
-
- @echo;
- rm -rf cp_tests/dir{a,b};
-
-
-check_cp_dir_to_dir_w_a_take_two:
- @echo; echo Copy a directory into another directory with the -a switch;
- @echo ------------------------------;
- mkdir -p cp_tests/gnu; \
- mkdir -p cp_tests/bb; \
- cd cp_tests; \
- mkdir here there; \
- echo A file > here/afile; \
- mkdir here/adir; \
- touch here/adir/afileinadir; \
- ln -s $$(pwd) here/alink;
-
- @echo;
- cd cp_tests/gnu; \
- ls -lR . > ../../cp_a_dir_dir.gnu; \
- ${GCP} -a here/ there/; \
- ls -lR . >> ../../cp_a_dir_dir.gnu;
-
- @echo;
- rm -rf cp_tests/there/*;
-
- sleep 1;
-
- @echo;
- cd cp_tests/bb; \
- ls -lR . > ../../cp_a_dir_dir.bb; \
- ${BCP} -a here/ there/; \
- ls -lR . >> ../../cp_a_dir_dir.bb;
-
- @echo;
- echo "Erik 1"
- diff -u cp_a_dir_dir.gnu cp_a_dir_dir.bb;
- echo "Erik 2"
-
- @echo;
- echo "Erik 3"
- rm -rf cp_tests/*;
-
-