1 #!/bin/sh 2 3 THIS_DIR=`dirname $0` 4 5 TEMPLATES="$THIS_DIR/templates" 6 PERSON_SCRIPT="$THIS_DIR/../imip_person.py" 7 SHOWMAIL="$THIS_DIR/../tools/showmail.py" 8 STORE=/tmp/store 9 STATIC=/tmp/static 10 PREFS=/tmp/prefs 11 ARGS="-S $STORE -P $STATIC -p $PREFS -d" 12 USER="mailto:vincent.vole@example.com" 13 SENDER="mailto:paul.boddie@example.com" 14 FBFILE="$STORE/$USER/freebusy" 15 FBOFFERFILE="$STORE/$USER/freebusy-offers" 16 FBSENDERFILE="$STORE/$SENDER/freebusy" 17 FBSENDEROTHERFILE="$STORE/$SENDER/freebusy-other/$USER" 18 FBSENDERREQUESTS="$STORE/$SENDER/requests" 19 TAB=`printf '\t'` 20 21 OUTGOING_SCRIPT="$THIS_DIR/../imip_person_outgoing.py" 22 23 PYTHONPATH="$THIS_DIR/.." 24 export PYTHONPATH 25 26 ACCEPT_SCRIPT="$THIS_DIR/test_handle.py" 27 ACCEPT_ARGS="accept $STORE" 28 29 COUNTER_SCRIPT="$THIS_DIR/test_handle.py" 30 COUNTER_ARGS="counter $STORE" 31 32 DECLINE_SCRIPT="$THIS_DIR/test_handle.py" 33 DECLINE_ARGS="decline $STORE" 34 35 ERROR=err.tmp 36 37 rm -r $STORE 38 rm -r $STATIC 39 rm -r $PREFS 40 rm $ERROR 41 rm out*.tmp 42 43 mkdir -p "$PREFS/$USER" 44 echo 'Europe/Oslo' > "$PREFS/$USER/TZID" 45 echo 'share' > "$PREFS/$USER/freebusy_sharing" 46 echo 'PT60S' > "$PREFS/$USER/freebusy_offers" 47 48 "$PERSON_SCRIPT" $ARGS < "$TEMPLATES/fb-request-person-all.txt" 2>> $ERROR \ 49 | "$SHOWMAIL" \ 50 > out0.tmp 51 52 grep -q 'METHOD:REPLY' out0.tmp \ 53 && ! grep -q '^FREEBUSY' out0.tmp \ 54 && echo "Success" \ 55 || echo "Failed" 56 57 # Attempt to schedule an event. 58 59 "$OUTGOING_SCRIPT" $ARGS < "$TEMPLATES/event-request-person.txt" 2>> $ERROR 60 61 grep -q "^20141126T150000Z${TAB}20141126T160000Z" "$FBSENDERFILE" \ 62 && echo "Success" \ 63 || echo "Failed" 64 65 # Present the request to the recipient. 66 67 "$PERSON_SCRIPT" $ARGS < "$TEMPLATES/event-request-person.txt" 2>> $ERROR \ 68 | "$SHOWMAIL" \ 69 > out1.tmp 70 71 ! grep -q 'METHOD:REPLY' out1.tmp \ 72 && echo "Success" \ 73 || echo "Failed" 74 75 ! [ -e "$FBFILE" ] \ 76 || ! grep -q "event6@example.com" "$FBFILE" \ 77 && echo "Success" \ 78 || echo "Failed" 79 80 ! [ -e "$FBOTHERFILE" ] \ 81 || ! grep -q "event6@example.com" "$FBOTHERFILE" \ 82 && echo "Success" \ 83 || echo "Failed" 84 85 # Counter the invitation. 86 87 "$COUNTER_SCRIPT" $COUNTER_ARGS "$USER" 20141126T170000 20141126T180000 "event6@example.com" 2>> $ERROR \ 88 | tee out2r.tmp \ 89 | "$SHOWMAIL" \ 90 > out2.tmp 91 92 # Note that the invitation has only been prepared, not processed. 93 94 ! [ -e "$FBFILE" ] \ 95 || ( ! grep -q "^20141126T150000Z${TAB}20141126T160000Z" "$FBFILE" \ 96 && ! grep -q "^20141126T160000Z${TAB}20141126T170000Z" "$FBFILE" ) \ 97 && echo "Success" \ 98 || echo "Failed" 99 100 grep -q 'METHOD:COUNTER' out2.tmp \ 101 && grep -q 'DTSTART;TZID=Europe/Oslo.*:20141126T170000' out2.tmp \ 102 && echo "Success" \ 103 || echo "Failed" 104 105 ! [ -e "$FBOFFERFILE" ] \ 106 || ! grep -q "^20141126T160000Z${TAB}20141126T170000Z" "$FBOFFERFILE" \ 107 && echo "Success" \ 108 || echo "Failed" 109 110 # Send the counter-proposal. 111 112 "$OUTGOING_SCRIPT" $ARGS < out2r.tmp 2>> $ERROR 113 114 ! [ -e "$FBFILE" ] \ 115 || ( ! grep -q "^20141126T150000Z${TAB}20141126T160000Z" "$FBFILE" \ 116 && ! grep -q "^20141126T160000Z${TAB}20141126T170000Z" "$FBFILE" ) \ 117 && echo "Success" \ 118 || echo "Failed" 119 120 grep -q "^20141126T160000Z${TAB}20141126T170000Z" "$FBOFFERFILE" \ 121 && echo "Success" \ 122 || echo "Failed"