diff options
Diffstat (limited to 'qa/1000')
-rwxr-xr-x | qa/1000 | 71 |
1 files changed, 71 insertions, 0 deletions
@@ -0,0 +1,71 @@ +#!/bin/sh +# PCP QA Test No. 1000 +# pmdumptext segv +# https://bugzilla.redhat.com/show_bug.cgi?id=1131779 +# +# Copyright (c) 2014 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 + +which pmdumptext >/dev/null 2>&1 || _notrun "pmdumptext not installed" + +status=1 # failure is the default! +$sudo rm -rf $tmp.* $seq.full +trap "cd $here; rm -rf $tmp.*; exit \$status" 0 1 2 3 15 + +# filter ... +# Fri Aug 22 20:04:55 7950508.000 +# +_filter1() +{ + sed \ + -e 's/[A-Z][a-z][a-z] [A-Z][a-z][a-z] *[0-9][0-9]* [0-2][0-9]:[0-5][0-9]:[0-5][0-9]/DATE/' \ + -e 's/[ ][ ]*[0-9][0-9]*\.[0-9][0-9]*/ NUMBER/' +} + +# hostname(1) +# +_filter2() +{ + sed -e "s/`hostname`/MYHOSTNAME/g" +} + +# real QA test starts here +echo "=== expect output ===" +pmdumptext -s 1 'localhost:mem.util.used' | _filter1 + +echo +echo "=== expect No route to host, no valid metrics ===" +pmdumptext -s 1 'nosuchhost:mem.util.used' + +echo +echo "=== expect No route to host, no valid metrics [instance case] ===" +pmdumptext -s 1 'nosuchhost:proc.psinfo.utime[12345]' + +echo +echo "=== expect No route to host, no valid metrics -h [instance case] ===" +pmdumptext -s 1 -h nosuchhost 'proc.psinfo.utime[12345]' + +$sudo $PCP_RC_DIR/pcp stop >/dev/null +echo +echo "=== pmcd not running, default case ===" +pmdumptext -s 1 'sample.bin[bin-300]' 2>&1 | _filter2 +echo +echo "=== pmcd not running, host in metricspec case ===" +pmdumptext -s 1 'localhost:proc.psinfo.utime[12345]' +echo +echo "=== pmcd not running, -h localhost case ===" +pmdumptext -s 1 -h localhost 'proc.psinfo.utime[12345]' +$sudo $PCP_RC_DIR/pcp start >/dev/null + +# success, all done +status=0 + +exit |