diff options
author | Igor Pashev <pashev.igor@gmail.com> | 2014-10-26 12:33:50 +0400 |
---|---|---|
committer | Igor Pashev <pashev.igor@gmail.com> | 2014-10-26 12:33:50 +0400 |
commit | 47e6e7c84f008a53061e661f31ae96629bc694ef (patch) | |
tree | 648a07f3b5b9d67ce19b0fd72e8caa1175c98f1a /qa/369 | |
download | pcp-debian.tar.gz |
Debian 3.9.10debian/3.9.10debian
Diffstat (limited to 'qa/369')
-rwxr-xr-x | qa/369 | 88 |
1 files changed, 88 insertions, 0 deletions
@@ -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 |