1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/tests/test_resource_invitation_group.sh Thu Sep 10 22:09:38 2015 +0200
1.3 @@ -0,0 +1,76 @@
1.4 +#!/bin/sh
1.5 +
1.6 +THIS_DIR=`dirname $0`
1.7 +
1.8 +TEMPLATES="$THIS_DIR/templates"
1.9 +RESOURCE_SCRIPT="$THIS_DIR/../imip_resource.py"
1.10 +SHOWMAIL="$THIS_DIR/../tools/showmail.py"
1.11 +STORE=/tmp/store
1.12 +STATIC=/tmp/static
1.13 +PREFS=/tmp/prefs
1.14 +ARGS="-S $STORE -P $STATIC -p $PREFS -d"
1.15 +USER="mailto:resource-room-confroom@example.com"
1.16 +
1.17 +ERROR=err.tmp
1.18 +
1.19 +rm -r $STORE
1.20 +rm -r $STATIC
1.21 +rm -r $PREFS
1.22 +rm $ERROR
1.23 +rm out*.tmp
1.24 +
1.25 +mkdir -p "$PREFS/$USER"
1.26 +echo 'Europe/Oslo' > "$PREFS/$USER/TZID"
1.27 +echo 'share' > "$PREFS/$USER/freebusy_sharing"
1.28 +
1.29 +for N in `seq 1 5` ; do
1.30 + SENDER="mailto:person-$N@example.com"
1.31 + mkdir -p "$PREFS/$SENDER"
1.32 + echo 'Europe/Oslo' > "$PREFS/$SENDER/TZID"
1.33 +done
1.34 +
1.35 + "$RESOURCE_SCRIPT" $ARGS < "$TEMPLATES/fb-request-all.txt" 2>> $ERROR \
1.36 +| "$SHOWMAIL" \
1.37 +> out0.tmp
1.38 +
1.39 + grep -q 'METHOD:REPLY' out0.tmp \
1.40 +&& ! grep -q '^FREEBUSY' out0.tmp \
1.41 +&& echo "Success" \
1.42 +|| echo "Failed"
1.43 +
1.44 + "$RESOURCE_SCRIPT" $ARGS < "$TEMPLATES/fb-request.txt" 2>> $ERROR \
1.45 +| "$SHOWMAIL" \
1.46 +> out1.tmp
1.47 +
1.48 + grep -q 'METHOD:REPLY' out1.tmp \
1.49 +&& ! grep -q '^FREEBUSY' out1.tmp \
1.50 +&& echo "Success" \
1.51 +|| echo "Failed"
1.52 +
1.53 +# Loop until all requests have been satisfied.
1.54 +
1.55 +while [ ! -e outP1.tmp ] || [ `grep 'PARTSTAT' outP*.tmp | grep 'ACCEPTED' | wc -l` != '5' ] ; do
1.56 +
1.57 + # Request free/busy information.
1.58 +
1.59 + FBRESULT="outfbP.tmp"
1.60 + export SENDER="mailto:person-N@example.com"
1.61 + export SENDERADDRESS="person-N@example.com"
1.62 +
1.63 + envsubst < "$TEMPLATES/fb-request-group.txt" \
1.64 + | tee "infbP.tmp" \
1.65 + | "$RESOURCE_SCRIPT" $ARGS 2>> $ERROR \
1.66 + | "$SHOWMAIL" 2>> $ERROR \
1.67 + > "$FBRESULT"
1.68 +
1.69 + # Set the requesters on a race to book with this information.
1.70 +
1.71 + seq 1 5 | xargs -P0 -I{} "$THIS_DIR/resource_request.sh" {} "$FBRESULT"
1.72 + wait
1.73 + echo "Accepted: `grep 'ACCEPTED' outP*.tmp | wc -l`"
1.74 +
1.75 +done
1.76 +
1.77 + [ `grep 'PARTSTAT' outP*.tmp | grep 'ACCEPTED' | wc -l` = '5' ] \
1.78 +&& echo "Success" \
1.79 +|| echo "Failed"