summaryrefslogtreecommitdiff
path: root/qa/122
diff options
context:
space:
mode:
authorIgor Pashev <pashev.igor@gmail.com>2014-10-26 12:33:50 +0400
committerIgor Pashev <pashev.igor@gmail.com>2014-10-26 12:33:50 +0400
commit47e6e7c84f008a53061e661f31ae96629bc694ef (patch)
tree648a07f3b5b9d67ce19b0fd72e8caa1175c98f1a /qa/122
downloadpcp-debian.tar.gz
Debian 3.9.10debian/3.9.10debian
Diffstat (limited to 'qa/122')
-rwxr-xr-xqa/12267
1 files changed, 67 insertions, 0 deletions
diff --git a/qa/122 b/qa/122
new file mode 100755
index 0000000..00f67cb
--- /dev/null
+++ b/qa/122
@@ -0,0 +1,67 @@
+#! /bin/sh
+# PCP QA Test No. 122
+# arg parsing botches for
+# pmtrace -h host -v value tag
+# pmtrace -D ...
+#
+# Copyright (c) 2002 Silicon Graphics, Inc. All Rights Reserved.
+#
+
+seq=`basename $0`
+echo "QA output created by $seq"
+
+# get standard environment, filters and checks
+. ./common.product
+. ./common.filter
+. ./common.check
+
+status=0 # success is the default!
+$sudo rm -rf $tmp.*
+trap "rm -f $tmp.*; exit \$status" 0 1 2 3 15
+
+rm -f $seq.full
+
+# stolen from getpmcdhosts
+#
+check=`echo a | od -x 2>&1 | sed -e 's/^0[^ ]* *//' -e 's/ //g' -e '/^$/d'`
+case "$check"
+in
+ 0a61)
+ # little, want big
+ #
+ want=big
+ echo "I am little endian, looking for pmtrace PMDA on a big endian platform" >>$seq.full
+ ;;
+ 610a)
+ # big, want little
+ #
+ want=little
+ echo "I am big endian, looking for pmtrace PMDA on a little endian platform" >>$seq.full
+ ;;
+ *)
+ echo "Arrgh ... od -x returned something odd ($check)"
+ echo a | od -x
+ status=1
+ exit
+ ;;
+esac
+
+# find the trace PMDA running somewhere else with tho other endianess
+#
+host=`./getpmcdhosts -L -n 1 -a trace -e $want`
+if [ -z "$host" ]
+then
+ echo "Cannot find $want endian host running pmdatrace" >$seq.notrun
+ exit
+fi
+echo "remote host: $host" >>$seq.full
+
+# real QA test starts here
+for val in 42 1234.5678 -3.14132
+do
+ pmtrace -h $host -v $val "qa/$seq-value"
+ pminfo -h $host -f trace.observe.value | grep "qa/$seq-value"
+done
+
+# success, all done
+exit