xzgrep: Improve the test script.

Now it should be close to the functionality of the original
version by Pavel Raiskup.
diff --git a/tests/Makefile.am b/tests/Makefile.am
index c4e17ed..8223a18 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -52,4 +52,5 @@
 endif
 
 clean-local:
-	-rm -f compress_generated_*
+	-rm -f compress_generated_* \
+		xzgrep_test_output xzgrep_test_1.xz xzgrep_test_2.xz
diff --git a/tests/test_scripts.sh b/tests/test_scripts.sh
index 7ac1fea..48a9308 100755
--- a/tests/test_scripts.sh
+++ b/tests/test_scripts.sh
@@ -54,19 +54,23 @@
 
 # The exit status must be 0 when a match was found at least from one file,
 # and 1 when no match was found in any file.
+cp "$srcdir/files/good-1-lzma2-1.xz" xzgrep_test_1.xz
+cp "$srcdir/files/good-2-lzma2.xz" xzgrep_test_2.xz
 for pattern in el Hello NOMATCH; do
 	for opts in "" "-l" "-h" "-H"; do
-		"$XZGREP" $opts $pattern \
-			"$srcdir/files/good-1-lzma2-1.xz" \
-			"$srcdir/files/good-2-lzma2.xz" > /dev/null 2>&1
-		status=$?
-		test $status = 0 && test $pattern != NOMATCH && continue
-		test $status = 1 && test $pattern = NOMATCH && continue
-		echo "wrong exit status from xzgrep"
-		(exit 1)
-		exit 1
+		echo "=> xzgrep $opts $pattern <="
+		"$XZGREP" $opts $pattern xzgrep_test_1.xz xzgrep_test_2.xz
+		echo retval $?
 	done
-done
+done > xzgrep_test_output 2>&1
+
+if cmp -s "$srcdir/xzgrep_expected_output" xzgrep_test_output ; then
+	:
+else
+	echo "unexpected output from xzgrep"
+	(exit 1)
+	exit 1
+fi
 
 (exit 0)
 exit 0
diff --git a/tests/xzgrep_expected_output b/tests/xzgrep_expected_output
new file mode 100644
index 0000000..e531d93
--- /dev/null
+++ b/tests/xzgrep_expected_output
@@ -0,0 +1,39 @@
+=> xzgrep  el <=
+xzgrep_test_1.xz:elit, sed do eiusmod tempor incididunt ut 
+xzgrep_test_1.xz:in voluptate velit esse cillum dolore eu 
+xzgrep_test_2.xz:Hello
+retval 0
+=> xzgrep -l el <=
+xzgrep_test_1.xz
+xzgrep_test_2.xz
+retval 0
+=> xzgrep -h el <=
+elit, sed do eiusmod tempor incididunt ut 
+in voluptate velit esse cillum dolore eu 
+Hello
+retval 0
+=> xzgrep -H el <=
+xzgrep_test_1.xz:elit, sed do eiusmod tempor incididunt ut 
+xzgrep_test_1.xz:in voluptate velit esse cillum dolore eu 
+xzgrep_test_2.xz:Hello
+retval 0
+=> xzgrep  Hello <=
+xzgrep_test_2.xz:Hello
+retval 0
+=> xzgrep -l Hello <=
+xzgrep_test_2.xz
+retval 0
+=> xzgrep -h Hello <=
+Hello
+retval 0
+=> xzgrep -H Hello <=
+xzgrep_test_2.xz:Hello
+retval 0
+=> xzgrep  NOMATCH <=
+retval 1
+=> xzgrep -l NOMATCH <=
+retval 1
+=> xzgrep -h NOMATCH <=
+retval 1
+=> xzgrep -H NOMATCH <=
+retval 1