summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bin/output_filter.sh15
-rw-r--r--test/testflushrefresh.sh.in27
2 files changed, 37 insertions, 5 deletions
diff --git a/bin/output_filter.sh b/bin/output_filter.sh
index 58f1c48..35af819 100644
--- a/bin/output_filter.sh
+++ b/bin/output_filter.sh
@@ -17,6 +17,21 @@
# Created Date: 2011/5/3
+# Comment added to address HDFFV-8270:
+# As I understand it, the purpose of this file is to remove extraneous messages
+# that appear in stdout and stderr on some machines that have been tested outside
+# of the HDF Group realm. The purpose of this script is to filter those
+# extraneous messages from stdout and stderr so that when the output files are
+# compared to the expected output, the extra messages will not cause failures in
+# the tests. The system messages in the comments below are out of date, meaning
+# I suppose that while the script code to filter messages on the system was
+# correct correct when last used, the output in the comments doesn't match the
+# script code that follows. I don't currently have access to any of these
+# systems to see the current output and the effect of the script code. If using
+# this file in the future, please update the comments to match the scripts in use.
+# Larry Knox 2017/3/15
+
+
# Some systems will dump some messages to stdout for various reasons.
# Remove them from the stdout result file.
# $1 is the file name of the file to be filtered.
diff --git a/test/testflushrefresh.sh.in b/test/testflushrefresh.sh.in
index 83b7134..e7917a0 100644
--- a/test/testflushrefresh.sh.in
+++ b/test/testflushrefresh.sh.in
@@ -79,11 +79,22 @@ if [ $rc -ne 0 ] ; then
exit 0
fi
-# ========================
-# Launch the Test Program.
-# ========================
-./flushrefresh &
-pid_main=$!
+# HDF5 has several tests that create and delete signal files to communicate
+# between processes, and it seems that even though the names of the files are
+# different, occasionally the wrong file is deleted, interrupting the flow of
+# the test. Running each of these tests in its own directory should eliminate
+# the problem.
+mkdir -p flushrefresh_test/.libs
+cp flushrefresh flushrefresh_test
+
+# With the --disable-shared option, flushrefresh is built in the test directory,
+# otherwise it is in test/.libs with a wrapper script named flushrefresh in
+# the test directory. test/flushrefresh should always be copied,
+# .libs/flushrefresh should be copied only if it exists.
+if [ -f .libs/flushrefresh ]; then
+ cp .libs/flushrefresh flushrefresh_test/.libs
+fi
+cd flushrefresh_test
# =================================================
# Set up/initialize some variables to be used later
@@ -98,6 +109,12 @@ if [ -e $testfile ]; then
rm $testfile
fi
+# ========================
+# Launch the Test Program.
+# ========================
+./flushrefresh &
+pid_main=$!
+
# =======================================
# Run flush verification on test program.
# =======================================