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 FBOTHERFILE="$STORE/$USER/freebusy-other/$SENDER" 16 TAB=`printf '\t'` 17 18 OUTGOING_SCRIPT="$THIS_DIR/../imip_person_outgoing.py" 19 20 PYTHONPATH="$THIS_DIR/.." 21 export PYTHONPATH 22 23 ACCEPT_SCRIPT="$THIS_DIR/test_handle.py" 24 ACCEPT_ARGS="accept $STORE" 25 26 DECLINE_SCRIPT="$THIS_DIR/test_handle.py" 27 DECLINE_ARGS="decline $STORE" 28 29 ERROR=err.tmp 30 31 rm -r $STORE 32 rm -r $STATIC 33 rm -r $PREFS 34 rm $ERROR 35 rm out*.tmp 36 37 mkdir -p "$PREFS/$USER" 38 echo 'Europe/Oslo' > "$PREFS/$USER/TZID" 39 echo 'share' > "$PREFS/$USER/freebusy_sharing" 40 41 "$PERSON_SCRIPT" $ARGS < "$TEMPLATES/fb-request-person-all.txt" 2>> $ERROR \ 42 | "$SHOWMAIL" \ 43 > out0.tmp 44 45 grep -q 'METHOD:REPLY' out0.tmp \ 46 && ! grep -q '^FREEBUSY' out0.tmp \ 47 && echo "Success" \ 48 || echo "Failed" 49 50 "$PERSON_SCRIPT" $ARGS < "$TEMPLATES/fb-request-person.txt" 2>> $ERROR \ 51 | "$SHOWMAIL" \ 52 > out1.tmp 53 54 grep -q 'METHOD:REPLY' out1.tmp \ 55 && ! grep -q '^FREEBUSY' out1.tmp \ 56 && echo "Success" \ 57 || echo "Failed" 58 59 "$PERSON_SCRIPT" $ARGS < "$TEMPLATES/event-request-person-recurring.txt" 2>> $ERROR \ 60 | "$SHOWMAIL" \ 61 > out2.tmp 62 63 ! grep -q 'METHOD:REPLY' out2.tmp \ 64 && echo "Success" \ 65 || echo "Failed" 66 67 ! grep -q "^20141212T090000Z${TAB}20141212T100000Z" "$FBFILE" \ 68 && echo "Success" \ 69 || echo "Failed" 70 71 grep -q "^20141212T090000Z${TAB}20141212T100000Z" "$FBOTHERFILE" \ 72 && echo "Success" \ 73 || echo "Failed" 74 75 "$ACCEPT_SCRIPT" $ACCEPT_ARGS "$USER" "event8@example.com" 2>> $ERROR \ 76 | tee out3.tmp \ 77 | "$OUTGOING_SCRIPT" $ARGS 2>> $ERROR 78 79 grep -q "^20141212T090000Z${TAB}20141212T100000Z" "$FBFILE" \ 80 && echo "Success" \ 81 || echo "Failed" 82 83 "$PERSON_SCRIPT" $ARGS < "$TEMPLATES/event-cancel-person-recurring-instance.txt" 2>> $ERROR \ 84 | "$SHOWMAIL" \ 85 > out4.tmp 86 87 ! grep -q 'METHOD:REPLY' out4.tmp \ 88 && echo "Success" \ 89 || echo "Failed" 90 91 [ `grep "event8@example.com" "$FBFILE" | wc -l` = '2' ] \ 92 && ! grep -q "^20141114T090000Z${TAB}20141114T100000Z" "$FBFILE" \ 93 && echo "Success" \ 94 || echo "Failed" 95 96 [ `grep "event8@example.com" "$FBOTHERFILE" | wc -l` = '2' ] \ 97 && ! grep -q "^20141114T090000Z${TAB}20141114T100000Z" "$FBOTHERFILE" \ 98 && echo "Success" \ 99 || echo "Failed" 100 101 "$PERSON_SCRIPT" $ARGS < "$TEMPLATES/event-request-person-recurring-reschedule-instance.txt" 2>> $ERROR \ 102 | "$SHOWMAIL" \ 103 > out5.tmp 104 105 ! grep -q 'METHOD:REPLY' out5.tmp \ 106 && echo "Success" \ 107 || echo "Failed" 108 109 ! grep -q "^20141011T080000Z${TAB}20141011T090000Z" "$FBFILE" \ 110 && grep -q "^20141010T080000Z${TAB}20141010T090000Z" "$FBFILE" \ 111 && echo "Success" \ 112 || echo "Failed" 113 114 grep -q "^20141011T080000Z${TAB}20141011T090000Z" "$FBOTHERFILE" \ 115 && ! grep -q "^20141010T080000Z${TAB}20141010T090000Z" "$FBOTHERFILE" \ 116 && echo "Success" \ 117 || echo "Failed" 118 119 "$ACCEPT_SCRIPT" $ACCEPT_ARGS "$USER" "event8@example.com" "20141010T080000Z" 2>> $ERROR \ 120 | tee out6.tmp \ 121 | "$OUTGOING_SCRIPT" $ARGS 2>> $ERROR 122 123 grep -q "^20141011T080000Z${TAB}20141011T090000Z" "$FBFILE" \ 124 && ! grep -q "^20141010T080000Z${TAB}20141010T090000Z" "$FBFILE" \ 125 && echo "Success" \ 126 || echo "Failed" 127 128 "$PERSON_SCRIPT" $ARGS < "$TEMPLATES/event-cancel-person-recurring.txt" 2>> $ERROR \ 129 | "$SHOWMAIL" \ 130 > out6.tmp 131 132 ! grep -q 'METHOD:REPLY' out6.tmp \ 133 && echo "Success" \ 134 || echo "Failed" 135 136 ! grep -q "event8@example.com" "$FBFILE" \ 137 && echo "Success" \ 138 || echo "Failed" 139 140 ! grep -q "event8@example.com" "$FBOTHERFILE" \ 141 && echo "Success" \ 142 || echo "Failed" 143 144 # Switch time zones. 145 146 echo 'Europe/Mariehamn' > "$PREFS/$USER/TZID" 147 148 "$PERSON_SCRIPT" $ARGS < "$TEMPLATES/event-request-person-recurring.txt" 2>> $ERROR \ 149 | "$SHOWMAIL" \ 150 > out7.tmp 151 152 ! grep -q 'METHOD:REPLY' out7.tmp \ 153 && echo "Success" \ 154 || echo "Failed" 155 156 ! grep -q "^20141212T090000Z${TAB}20141212T100000Z" "$FBFILE" \ 157 && echo "Success" \ 158 || echo "Failed" 159 160 grep -q "^20141212T090000Z${TAB}20141212T100000Z" "$FBOTHERFILE" \ 161 && echo "Success" \ 162 || echo "Failed" 163 164 "$ACCEPT_SCRIPT" $ACCEPT_ARGS "$USER" "event8@example.com" 2>> $ERROR \ 165 | tee out8.tmp \ 166 | "$OUTGOING_SCRIPT" $ARGS 2>> $ERROR 167 168 grep -q "^20141212T090000Z${TAB}20141212T100000Z" "$FBFILE" \ 169 && echo "Success" \ 170 || echo "Failed" 171 172 "$PERSON_SCRIPT" $ARGS < "$TEMPLATES/event-cancel-person-recurring.txt" 2>> $ERROR \ 173 | "$SHOWMAIL" \ 174 > out9.tmp 175 176 ! grep -q 'METHOD:REPLY' out9.tmp \ 177 && echo "Success" \ 178 || echo "Failed" 179 180 ! grep -q "event8@example.com" "$FBFILE" \ 181 && echo "Success" \ 182 || echo "Failed" 183 184 ! grep -q "event8@example.com" "$FBOTHERFILE" \ 185 && echo "Success" \ 186 || echo "Failed" 187 188 "$PERSON_SCRIPT" $ARGS < "$TEMPLATES/event-request-person-recurring-day-floating.txt" 2>> $ERROR \ 189 | "$SHOWMAIL" \ 190 > out10.tmp 191 192 ! grep -q 'METHOD:REPLY' out10.tmp \ 193 && echo "Success" \ 194 || echo "Failed" 195 196 ! grep -q "^20141211T220000Z${TAB}20141212T220000Z" "$FBFILE" \ 197 && echo "Success" \ 198 || echo "Failed" 199 200 grep -q "^20141211T220000Z${TAB}20141212T220000Z" "$FBOTHERFILE" \ 201 && echo "Success" \ 202 || echo "Failed" 203 204 "$ACCEPT_SCRIPT" $ACCEPT_ARGS "$USER" "event12@example.com" 2>> $ERROR \ 205 | tee out11.tmp \ 206 | "$OUTGOING_SCRIPT" $ARGS 2>> $ERROR 207 208 grep -q "^20141211T220000Z${TAB}20141212T220000Z" "$FBFILE" \ 209 && echo "Success" \ 210 || echo "Failed"