summaryrefslogtreecommitdiff
path: root/qa/369
diff options
context:
space:
mode:
Diffstat (limited to 'qa/369')
-rwxr-xr-xqa/36988
1 files changed, 88 insertions, 0 deletions
diff --git a/qa/369 b/qa/369
new file mode 100755
index 0000000..b22ae46
--- /dev/null
+++ b/qa/369
@@ -0,0 +1,88 @@
+#!/bin/sh
+# PCP QA Test No. 369
+# Check out libpcp_import
+#
+# Copyright (c) 2012 Red Hat.
+# Copyright (c) 2010 Ken McDonell. All Rights Reserved.
+#
+
+seq=`basename $0`
+echo "QA output created by $seq"
+
+# get standard environment, filters and checks
+. ./common.product
+. ./common.filter
+. ./common.check
+
+[ -f ${PCP_LIB_DIR}/libpcp_import.${DSO_SUFFIX} ] || \
+ _notrun "No support for libpcp_import"
+perl -e "use PCP::LogImport" 2>/dev/null || \
+ _notrun "Perl PCP::LogImport module is not installed"
+
+rm -f $seq.out
+if [ $PCP_VER -ge 3801 ]
+then
+ ln $seq.out.4 $seq.out || exit 1
+elif [ $PCP_VER -ge 3800 ]
+then
+ ln $seq.out.3 $seq.out || exit 1
+elif [ $PCP_VER -ge 3609 ]
+then
+ ln $seq.out.2 $seq.out || exit 1
+else
+ ln $seq.out.1 $seq.out || exit 1
+fi
+
+status=0 # success is the default!
+$sudo rm -rf $tmp.* $seq.full
+trap "cd $here; rm -rf $tmp; exit \$status" 0 1 2 3 15
+
+_filter1()
+{
+ sed \
+ -e '/pmResult/s/ .* numpmid/ ... numpmid/' \
+ -e '/[0-9][0-9]:[0-9][0-9]:[0-9][0-9]/s/[^ ]*/TIMESTAMP/' \
+ -e '/^EXPORT_FAIL$/d' \
+ -e '/::EXPORT_FAIL$/d'
+}
+
+_filter2()
+{
+ _filter_pmdumplog \
+ | sed \
+ -e '/PID for pmlogger:/s/[0-9][0-9]*/PID/'
+}
+
+_filter3()
+{
+ $PCP_AWK_PROG '
+BEGIN { part = "part1" }
+NF == 0 { part = "part2" }
+ { print >part }'
+ if [ -f part1 ]
+ then
+ # first part of output is in non-deterministic order, so sort it
+ #
+ _filter1 <part1 | LC_COLLATE=POSIX sort
+ fi
+ [ -f part2 ] && _filter1 <part2
+}
+
+mkdir $tmp
+cd $tmp
+
+# real QA test starts here
+echo "C version ..." | tee -a $here/$seq.full
+$here/src/check_import 2>&1 | tee -a $here/$seq.full | _filter1
+pminfo -dm -a myarchive
+pmdumplog -a myarchive 2>&1 | _filter2
+
+echo
+echo "Perl wrapper version ..." | tee -a $here/$seq.full
+rm -f myarchive.*
+perl $here/src/check_import.perl 2>&1 | tee -a $here/$seq.full | _filter3
+pminfo -dm -a myarchive
+pmdumplog -a myarchive 2>&1 | _filter2
+
+# success, all done
+exit