aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/cp_tests.mk133
1 files changed, 80 insertions, 53 deletions
diff --git a/tests/cp_tests.mk b/tests/cp_tests.mk
index 2082d7386..1dc4c5ac4 100644
--- a/tests/cp_tests.mk
+++ b/tests/cp_tests.mk
@@ -14,7 +14,13 @@ clean:: cp_clean
cp_clean:
- rm -rf cp_tests cp_*.{gnu,bb} cp
-cp_tests: cp_clean cp
+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_wo_a 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.";
@@ -27,6 +33,7 @@ cp_tests: cp_clean cp
@echo;
mkdir cp_tests;
+check_simple_cp:
@echo Copy a file to a copy of the file;
@echo ------------------------------;
cd cp_tests; \
@@ -52,6 +59,7 @@ cp_tests: cp_clean cp
@echo;
rm -rf cp_tests/*;
+check_cp_symlnk:
@echo; echo Copy a file pointed to by a symlink;
@echo ------------------------------;
cd cp_tests; \
@@ -84,6 +92,7 @@ cp_tests: cp_clean cp
@echo;
rm -rf cp_tests/*
+check_cp_symlink_w_a:
@echo; echo Copy a symlink, useing the -a switch.;
@echo ------------------------------;
cd cp_tests; \
@@ -115,38 +124,8 @@ cp_tests: cp_clean cp
@echo;
rm -rf cp_tests/*;
- @echo; echo Copy a directory into another directory with the -a switch;
- @echo ------------------------------;
- 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; \
- 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; \
- ls -lR . > ../cp_a_dir_dir.bb; \
- ${BCP} -a here/ there/; \
- ls -lR . >> ../cp_a_dir_dir.bb;
-
- @echo;
- diff -u cp_a_dir_dir.gnu cp_a_dir_dir.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 ------------------------------;
@@ -174,6 +153,7 @@ cp_tests: cp_clean cp
@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 ------------------------------;
@@ -203,6 +183,7 @@ cp_tests: cp_clean cp
@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 ------------------------------;
@@ -234,6 +215,8 @@ cp_tests: cp_clean cp
@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; \
@@ -264,6 +247,37 @@ cp_tests: cp_clean cp
@echo;
rm -rf cp_tests/{afile{1,2},symlink1,there1};
+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; \
@@ -298,30 +312,43 @@ cp_tests: cp_clean cp
@echo;
rm -rf cp_tests/dir{a,b};
- # Copy a directory to another directory, without the -a switch.
- @echo; echo Copy a directory to another directory, without the -a switch.
+
+check_cp_dir_to_dir_w_a_take_two:
+ @echo; echo Copy a directory into another directory with 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;
+ 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
- @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;
+ cd cp_tests/gnu; \
+ ls -lR . > ../../cp_a_dir_dir.gnu; \
+ ${GCP} -a here/ there/; \
+ ls -lR . >> ../../cp_a_dir_dir.gnu;
@echo;
- diff -u cp_a_star_adir.gnu cp_a_star_adir.bb;
+ rm -rf cp_tests/there/*;
+
+ sleep 1;
- # Done
@echo;
- rm -rf cp_tests;
- @echo; echo Done.
+ 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/*;
+
+