summaryrefslogtreecommitdiff
path: root/qa/202
diff options
context:
space:
mode:
Diffstat (limited to 'qa/202')
-rwxr-xr-xqa/20280
1 files changed, 80 insertions, 0 deletions
diff --git a/qa/202 b/qa/202
new file mode 100755
index 0000000..c271184
--- /dev/null
+++ b/qa/202
@@ -0,0 +1,80 @@
+#! /bin/sh
+# PCP QA Test No. 202
+# check EOL marker in pmlogmerge
+#
+# Copyright (c) 1995-2002 Silicon Graphics, Inc. All Rights Reserved.
+#
+
+seq=`basename $0`
+echo "QA output created by $seq"
+
+# get standard filters
+. ./common.product
+. ./common.filter
+
+trap "rm -f $tmp.*; exit" 0 1 2 3 15
+#debug# tmp=`pwd`/tmp
+rm -f $tmp.* $seq.full
+
+_filter()
+{
+ pmdumplog $1 \
+ | tee -a $seq.full \
+ | $PCP_AWK_PROG '
+/\<mark\>/ { mark++; next }
+/^[0-9][0-9]:[0-9][0-9]:[0-9][0-9]\./ { rec++ }
+END { printf "%d records",rec
+ if (mark) printf ", and %d marks",mark
+ print ""
+ }'
+ pmdumplog $1 \
+ | $PCP_AWK_PROG >$1.stamp '
+/\<mark\>/ { print $1 "-mark"; next }
+/^[0-9][0-9]:[0-9][0-9]:[0-9][0-9]\./ { print $1 }'
+}
+
+# real QA test starts here
+rm -f $tmp.A.*
+echo "log mandatory on 40 msec sample.milliseconds" \
+| pmlogger -s 4 -l $tmp.log $tmp.A >>$seq.full 2>&1
+echo
+echo log.A
+cat $tmp.log >>$seq.full
+ls -l $tmp.A.* >>$seq.full
+pmdumplog -l $tmp.A >>$seq.full
+_filter $tmp.A
+
+rm -f $tmp.B.*
+echo "log mandatory on 50 msec sample.milliseconds" \
+| pmlogger -s 6 -l $tmp.log $tmp.B >>$seq.full 2>&1
+echo
+echo log.B
+cat $tmp.log >>$seq.full
+ls -l $tmp.B.* >>$seq.full
+pmdumplog -l $tmp.A >>$seq.full
+_filter $tmp.B
+
+rm -f $tmp.C.*
+pmlogextract $tmp.A $tmp.B $tmp.C
+echo
+echo "log.C == pmlogextract log.A log.B"
+_filter $tmp.C
+
+echo
+echo "mismatch timestamps"
+cat $tmp.A.stamp $tmp.B.stamp \
+| comm -3 - $tmp.C.stamp \
+| sed -e 's/[0-9][0-9]:[0-9][0-9]:[0-9][0-9]\.[0-9][0-9][0-9]/timestamp/g'
+
+echo
+echo "pmval [no interpolate] ..."
+pmval -U $tmp.C sample.milliseconds 2>&1 \
+| tee -a $seq.full \
+| $PCP_AWK_PROG '
+/suspended/ { mark++; next }
+/^[0-9][0-9]:[0-9][0-9]:[0-9][0-9]\./ { rec++ }
+END { printf "%d records",rec
+ if (mark) printf ", and %d marks",mark
+ print ""
+ }'
+