File: 152

package info (click to toggle)
pcp 7.1.0-1
  • links: PTS
  • area: main
  • in suites: forky, sid
  • size: 252,748 kB
  • sloc: ansic: 1,483,656; sh: 182,366; xml: 160,462; cpp: 83,813; python: 24,980; perl: 18,327; yacc: 6,877; lex: 2,864; makefile: 2,738; awk: 165; fortran: 60; java: 52
file content (68 lines) | stat: -rwxr-xr-x 1,357 bytes parent folder | download
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
63
64
65
66
67
68
#! /bin/sh
# PCP QA Test No. 152
# pmcd.numclients was incorrect
#
# 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

# real QA test starts here
( date; pminfo -f pmcd.client ) >$tmp.before
pminfo -f pmcd.numclients | tee $seq_full | sed -e '/^$/d' >$tmp.out
N=`sed -n '/value/s/    value //p' $tmp.out`
echo "N=$N" >>$seq_full
sed "s/$N/N/" $tmp.out
# expect N+4, but pmie processes come and go, so N+4 +/- 1 seems
# about right
#
N=`expr $N + 4`
MIN=`expr $N - 1`
MAX=`expr $N + 1`
PAT="($MIN|$N|$MAX)"
echo "PAT=$PAT" >>$seq_full

for i in 1 2 3 4
do
    pmval -s3 -t5 pmcd.numagents >$tmp.$i 2>&1 &
done

while true
do
    touch $tmp.started
    for i in 1 2 3 4
    do
	[ -s $tmp.$i ] || rm -f $tmp.started
    done
    [ -f $tmp.started ] && break
    sleep 2
done

pminfo -f pmcd.numclients | tee -a $seq_full | sed -e '/^$/d' >$tmp.out
( date; pminfo -f pmcd.client ) >$tmp.after

if grep -E "value $PAT" $tmp.out >/dev/null
then
    sed <$tmp.out \
	-e "s/$MIN/N+4/" \
	-e "s/$N/N+4/" \
	-e "s/$MAX/N+4/"
else
    echo
    echo "Error: expected value $N"
    cat $tmp.out
    echo "--- before"
    cat $tmp.before
    echo
    echo "--- after"
    cat $tmp.after
fi

exit 0