1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
|
#!/bin/sh
# PCP QA Test No. 484
# check pmlogrewrite archive copying (no config)
#
# Copyright (c) 2011 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 pmlogrewrite >/dev/null 2>&1 || _notrun "pmlogrewrite not installed"
status=0 # success is the default!
trap "rm -f $tmp.*; exit \$status" 0 1 2 3 15
_filter()
{
sed \
-e "s;$tmp;TMP;g" \
-e "s/^\([+-][+-][+-] TMP\...t*\).*/\1/"
}
_cmp()
{
for file in $1.*
do
ls -l $file $2`echo $file | sed -e "s;$1;;"` >>$seq_full
done
pmdumplog -z -dilmst $1 | tee -a $seq_full >$tmp.in
pmdumplog -z -dilmst $2 | tee -a $seq_full >$tmp.out
echo "pmdumplog diffs ..."
diff -u $tmp.in $tmp.out | _filter
}
# real QA test starts here
# Notes
#
# archives/mirage ... diffs reflect semantically acceptable differences
#
for arch in archives/ok-foo archives/541380_v2 archives/mirage tmparch/bigbin \
archives/ok-mv-foo archives/mirage-1 archives/mirage-2 tmparch/gap \
tmparch/gap2 '-Dall archives/ok-foo'
do
echo | tee -a $seq_full
echo "=== $arch ===" | tee -a $seq_full
rm -f $tmp.new.*
pmlogrewrite -w -Dappl0,log $arch $tmp.new 2>$tmp.err | _filter
cat $tmp.err >>$seq_full
# strip any command line options preceding the archive basename
arch=`echo $arch | sed -e 's/.* //'`
_cmp $arch $tmp.new
done
# success, all done
exit
|