OSDN Git Service

* tests/lha-test.in: added tests.
authorarai <arai@6a8cc165-1e22-0410-a132-eb4e3f353aba>
Sat, 25 May 2002 15:50:47 +0000 (15:50 +0000)
committerarai <arai@6a8cc165-1e22-0410-a132-eb4e3f353aba>
Sat, 25 May 2002 15:50:47 +0000 (15:50 +0000)
* tests/Makefile.am: added tests.

git-svn-id: svn+ssh://svn.sourceforge.jp/svnroot/lha/lha/trunk@102 6a8cc165-1e22-0410-a132-eb4e3f353aba

tests/Makefile.am [new file with mode: 0644]
tests/lha-test.in [new file with mode: 0644]

diff --git a/tests/Makefile.am b/tests/Makefile.am
new file mode 100644 (file)
index 0000000..9bad6ea
--- /dev/null
@@ -0,0 +1,5 @@
+## Process this file with automake to produce Makefile.in
+EXTRA_DIST = lha-test
+TESTSUITE = lha-test
+check-local:
+       bash $(TESTSUITE)
diff --git a/tests/lha-test.in b/tests/lha-test.in
new file mode 100644 (file)
index 0000000..8b4f4bd
--- /dev/null
@@ -0,0 +1,81 @@
+#!/bin/sh
+
+: ${lha=@top_builddir@/src/lha}
+
+trap "rm -rf test-*" 0 1 2 3 15
+
+test_number=0
+
+exec > test.log
+
+message() {
+  echo "$@" >&2
+  echo "$@"
+}
+
+check() {
+  ((test_number = test_number + 1))
+  status=$1
+  if [[ $status = 0 ]]; then
+    message test $test_number ... ok
+  else
+    message test $test_number ... failed
+  fi
+}
+
+message testing $lha
+message testing to create/list/extract lha archive
+
+for i in `seq 100`
+do
+    echo foo >> test-a
+done
+sed 's/foo/bar/g' < test-a > test-b
+sed 's/foo/baz/g' < test-a > test-c
+
+$lha c test-1.lzh test-a test-b test-c
+                                                       check $?
+test -s test-1.lzh
+                                                       check $?
+
+$lha l test-1.lzh
+check $?
+
+test -d test-1 || mkdir test-1
+mv test-[abc] test-1
+$lha x test-1.lzh
+                                                       check $?
+diff test-1/test-a test-a
+                                                       check $?
+diff test-1/test-b test-b
+                                                       check $?
+diff test-1/test-c test-c
+                                                       check $?
+
+message testing to lh5, lh6, lh7 methods
+$lha co5 test-2.lzh test-a test-b test-c
+                                                       check $?
+$lha co6 test-3.lzh test-a test-b test-c
+                                                       check $?
+$lha co7 test-4.lzh test-a test-b test-c
+                                                       check $?
+$lha v test-2.lzh | grep lh5
+                                                       check $?
+$lha v test-3.lzh | grep lh6
+                                                       check $?
+$lha v test-4.lzh | grep lh7
+                                                       check $?
+
+$lha xw=test-2 test-2.lzh
+                                                       check $?
+$lha xw=test-3 test-3.lzh
+                                                       check $?
+$lha xw=test-4 test-4.lzh
+                                                       check $?
+
+diff -r test-1 test-2
+                                                       check $?
+diff -r test-1 test-3
+                                                       check $?
+diff -r test-1 test-4
+                                                       check $?