[CalendarServer-changes] [9839] CalDAVTester/branches/users/gaya/invitecleanTester

source_changes at macosforge.org source_changes at macosforge.org
Sat Sep 22 13:53:21 PDT 2012


Revision: 9839
          http://trac.calendarserver.org//changeset/9839
Author:   gaya at apple.com
Date:     2012-09-22 13:53:20 -0700 (Sat, 22 Sep 2012)
Log Message:
-----------
update from trunk

Modified Paths:
--------------
    CalDAVTester/branches/users/gaya/invitecleanTester/odsetup.py
    CalDAVTester/branches/users/gaya/invitecleanTester/run.py
    CalDAVTester/branches/users/gaya/invitecleanTester/src/caldavtest.py
    CalDAVTester/branches/users/gaya/invitecleanTester/src/httpshandler.py
    CalDAVTester/branches/users/gaya/invitecleanTester/src/manager.py
    CalDAVTester/branches/users/gaya/invitecleanTester/src/request.py
    CalDAVTester/branches/users/gaya/invitecleanTester/src/serverinfo.py
    CalDAVTester/branches/users/gaya/invitecleanTester/src/test.py
    CalDAVTester/branches/users/gaya/invitecleanTester/src/testsuite.py
    CalDAVTester/branches/users/gaya/invitecleanTester/src/xmlUtils.py
    CalDAVTester/branches/users/gaya/invitecleanTester/testcaldav.py
    CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/aclItems.py
    CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/addressDataMatch.py
    CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/calendarDataMatch.py
    CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/dataMatch.py
    CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/dataString.py
    CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/freeBusy.py
    CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/header.py
    CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/multistatusItems.py
    CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/postFreeBusy.py
    CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/prepostcondition.py
    CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/propfindItems.py
    CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/propfindValues.py
    CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/statusCode.py
    CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/xmlDataMatch.py
    CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/xmlElementMatch.py

Added Paths:
-----------
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/proppatches/10.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/proppatches/11.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/proppatches/12.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/recurrenceput/22.ics
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/invites/self-error/
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/invites/self-error/1.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/1.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/2.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/3.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/4.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/5.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/6.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/7.xml

Removed Paths:
-------------
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/invites/self-error/1.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/1.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/2.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/3.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/4.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/5.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/6.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/7.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/Common/MKCALENDAR/sharedcalendar.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/Common/MKCOL/sharedaddressbook.xml

Property Changed:
----------------
    CalDAVTester/branches/users/gaya/invitecleanTester/
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/1.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/10.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/11.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/12.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/13.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/14.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/15.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/16.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/17.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/18.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/19.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/2.ics
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/20.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/21.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/22.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/23.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/24.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/25.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/26.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/27.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/28.ics
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/29.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/3.ics
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/30.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/31.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/32.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/4.ics
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/5.ics
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/6.ics
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/7.ics
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/8.ics
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/9.ics
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/implicit/schedulechanges/organizerchange/1.ics
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/implicit/schedulechanges/organizerchange/2.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/implicit/schedulechanges/organizerchange/3.xml
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/implicit/schedulechanges/organizerchange/4.ics
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/implicit/schedulechanges/organizerchange/5.ics
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/implicit/schedulechanges/organizerchange/6.ics
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/implicit/schedulechanges/organizerchange/7.ics
    CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/implicit/schedulechanges/organizerchange/8.ics


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes:8221-8346
/CalDAVTester/branches/users/cdaboo/conditional-4466:4467-4469
/CalDAVTester/branches/users/cdaboo/implicitauto-2948:2949-2989
/CalDAVTester/branches/users/cdaboo/location-partial-accept-3574:3575-3581
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228:5229-5440
/CalDAVTester/trunk:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes:8221-8346
/CalDAVTester/branches/users/cdaboo/conditional-4466:4467-4469
/CalDAVTester/branches/users/cdaboo/implicitauto-2948:2949-2989
/CalDAVTester/branches/users/cdaboo/location-partial-accept-3574:3575-3581
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228:5229-5440
/CalDAVTester/trunk:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/1.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/1.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/1.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/1.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/1.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/1.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/1.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/1.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/1.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/1.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/1.xml:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/1.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/1.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/1.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/1.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/1.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/1.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/1.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/1.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/1.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/1.xml:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/10.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/10.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/10.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/10.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/10.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/10.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/10.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/10.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/10.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/10.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/10.xml:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/10.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/10.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/10.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/10.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/10.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/10.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/10.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/10.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/10.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/10.xml:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/11.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/11.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/11.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/11.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/11.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/11.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/11.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/11.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/11.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/11.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/11.xml:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/11.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/11.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/11.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/11.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/11.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/11.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/11.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/11.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/11.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/11.xml:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/12.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/12.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/12.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/12.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/12.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/12.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/12.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/12.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/12.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/12.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/12.xml:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/12.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/12.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/12.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/12.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/12.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/12.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/12.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/12.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/12.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/12.xml:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/13.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/13.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/13.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/13.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/13.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/13.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/13.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/13.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/13.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/13.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/13.xml:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/13.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/13.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/13.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/13.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/13.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/13.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/13.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/13.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/13.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/13.xml:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/14.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/14.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/14.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/14.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/14.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/14.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/14.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/14.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/14.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/14.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/14.xml:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/14.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/14.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/14.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/14.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/14.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/14.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/14.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/14.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/14.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/14.xml:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/15.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/15.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/15.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/15.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/15.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/15.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/15.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/15.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/15.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/15.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/15.xml:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/15.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/15.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/15.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/15.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/15.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/15.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/15.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/15.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/15.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/15.xml:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/16.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/16.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/16.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/16.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/16.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/16.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/16.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/16.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/16.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/16.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/16.xml:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/16.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/16.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/16.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/16.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/16.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/16.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/16.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/16.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/16.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/16.xml:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/17.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/17.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/17.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/17.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/17.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/17.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/17.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/17.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/17.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/17.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/17.xml:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/17.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/17.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/17.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/17.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/17.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/17.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/17.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/17.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/17.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/17.xml:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/18.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/18.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/18.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/18.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/18.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/18.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/18.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/18.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/18.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/18.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/18.xml:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/18.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/18.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/18.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/18.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/18.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/18.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/18.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/18.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/18.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/18.xml:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/19.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/19.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/19.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/19.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/19.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/19.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/19.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/19.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/19.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/19.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/19.xml:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/19.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/19.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/19.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/19.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/19.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/19.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/19.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/19.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/19.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/19.xml:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/2.ics
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/2.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/2.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/2.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/2.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/2.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/2.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/2.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/2.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/2.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/2.ics:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/2.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/2.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/2.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/2.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/2.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/2.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/2.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/2.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/2.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/2.ics:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/20.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/20.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/20.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/20.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/20.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/20.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/20.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/20.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/20.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/20.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/20.xml:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/20.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/20.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/20.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/20.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/20.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/20.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/20.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/20.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/20.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/20.xml:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/21.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/21.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/21.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/21.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/21.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/21.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/21.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/21.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/21.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/21.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/21.xml:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/21.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/21.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/21.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/21.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/21.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/21.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/21.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/21.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/21.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/21.xml:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/22.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/22.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/22.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/22.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/22.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/22.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/22.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/22.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/22.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/22.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/22.xml:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/22.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/22.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/22.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/22.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/22.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/22.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/22.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/22.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/22.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/22.xml:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/23.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/23.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/23.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/23.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/23.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/23.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/23.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/23.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/23.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/23.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/23.xml:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/23.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/23.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/23.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/23.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/23.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/23.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/23.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/23.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/23.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/23.xml:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/24.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/24.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/24.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/24.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/24.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/24.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/24.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/24.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/24.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/24.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/24.xml:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/24.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/24.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/24.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/24.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/24.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/24.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/24.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/24.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/24.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/24.xml:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/25.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/25.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/25.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/25.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/25.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/25.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/25.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/25.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/25.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/25.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/25.xml:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/25.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/25.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/25.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/25.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/25.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/25.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/25.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/25.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/25.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/25.xml:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/26.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/26.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/26.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/26.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/26.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/26.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/26.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/26.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/26.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/26.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/26.xml:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/26.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/26.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/26.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/26.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/26.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/26.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/26.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/26.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/26.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/26.xml:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/27.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/27.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/27.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/27.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/27.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/27.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/27.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/27.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/27.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/27.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/27.xml:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/27.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/27.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/27.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/27.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/27.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/27.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/27.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/27.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/27.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/27.xml:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/28.ics
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/28.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/28.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/28.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/28.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/28.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/28.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/28.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/28.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/28.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/28.ics:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/28.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/28.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/28.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/28.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/28.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/28.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/28.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/28.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/28.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/28.ics:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/29.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/29.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/29.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/29.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/29.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/29.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/29.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/29.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/29.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/29.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/29.xml:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/29.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/29.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/29.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/29.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/29.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/29.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/29.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/29.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/29.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/29.xml:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/3.ics
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/3.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/3.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/3.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/3.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/3.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/3.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/3.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/3.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/3.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/3.ics:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/3.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/3.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/3.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/3.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/3.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/3.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/3.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/3.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/3.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/3.ics:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/30.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/30.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/30.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/30.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/30.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/30.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/30.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/30.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/30.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/30.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/30.xml:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/30.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/30.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/30.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/30.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/30.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/30.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/30.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/30.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/30.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/30.xml:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/31.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/31.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/31.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/31.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/31.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/31.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/31.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/31.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/31.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/31.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/31.xml:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/31.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/31.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/31.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/31.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/31.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/31.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/31.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/31.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/31.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/31.xml:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/32.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/32.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/32.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/32.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/32.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/32.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/32.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/32.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/32.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/32.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/32.xml:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/32.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/32.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/32.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/32.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/32.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/32.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/32.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/32.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/32.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/32.xml:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/4.ics
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/4.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/4.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/4.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/4.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/4.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/4.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/4.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/4.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/4.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/4.ics:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/4.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/4.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/4.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/4.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/4.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/4.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/4.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/4.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/4.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/4.ics:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/5.ics
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/5.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/5.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/5.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/5.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/5.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/5.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/5.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/5.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/5.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/5.ics:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/5.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/5.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/5.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/5.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/5.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/5.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/5.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/5.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/5.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/5.ics:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/6.ics
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/6.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/6.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/6.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/6.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/6.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/6.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/6.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/6.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/6.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/6.ics:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/6.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/6.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/6.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/6.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/6.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/6.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/6.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/6.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/6.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/6.ics:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/7.ics
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/7.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/7.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/7.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/7.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/7.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/7.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/7.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/7.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/7.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/7.ics:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/7.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/7.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/7.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/7.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/7.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/7.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/7.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/7.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/7.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/7.ics:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/8.ics
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/8.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/8.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/8.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/8.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/8.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/8.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/8.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/8.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/8.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/8.ics:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/8.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/8.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/8.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/8.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/8.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/8.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/8.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/8.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/8.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/8.ics:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/errors/9.ics
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/9.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/9.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/9.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/9.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/9.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/9.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/9.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/9.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/9.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/9.ics:9426-9795
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/errors/9.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/errors/9.txt:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/errors/9.txt:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/errors/9.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/errors/9.txt:2949-2989
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/errors/9.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/errors/9.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/errors/9.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/errors/9.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/errors/9.ics:9426-9832


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/implicit/schedulechanges/organizerchange/1.ics
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/implicit/schedulechanges/organizerchange/1.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/implicit/schedulechanges/1.ics:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/implicit/schedulechanges/1.ics:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/implicit/schedulechanges/organizerchange/1.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/implicit/schedulechanges/1.ics:2949-2989
/CalDAVTester/branches/users/cdaboo/location-partial-accept-3574/Resource/implicit/schedulechanges/1.ics:3575-3581
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/implicit/schedulechanges/1.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/implicit/schedulechanges/organizerchange/1.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/implicit/schedulechanges/organizerchange/1.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/implicit/schedulechanges/organizerchange/1.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/implicit/schedulechanges/organizerchange/1.ics:9426-9795
/CalDAVTester/trunk/Resource/implicit/schedulechanges/1.ics:2451,3035,3142,3165,3190,3405,3432
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/implicit/schedulechanges/organizerchange/1.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/implicit/schedulechanges/1.ics:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/implicit/schedulechanges/1.ics:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/implicit/schedulechanges/organizerchange/1.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/implicit/schedulechanges/1.ics:2949-2989
/CalDAVTester/branches/users/cdaboo/location-partial-accept-3574/Resource/implicit/schedulechanges/1.ics:3575-3581
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/implicit/schedulechanges/1.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/implicit/schedulechanges/organizerchange/1.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/implicit/schedulechanges/organizerchange/1.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/implicit/schedulechanges/organizerchange/1.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/implicit/schedulechanges/organizerchange/1.ics:9426-9832
/CalDAVTester/trunk/Resource/implicit/schedulechanges/1.ics:2451,3035,3142,3165,3190,3405,3432


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/implicit/schedulechanges/organizerchange/2.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/implicit/schedulechanges/organizerchange/2.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/implicit/schedulechanges/2.xml:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/implicit/schedulechanges/2.xml:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/implicit/schedulechanges/organizerchange/2.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/implicit/schedulechanges/2.xml:2949-2989
/CalDAVTester/branches/users/cdaboo/location-partial-accept-3574/Resource/implicit/schedulechanges/2.xml:3575-3581
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/implicit/schedulechanges/2.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/implicit/schedulechanges/organizerchange/2.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/implicit/schedulechanges/organizerchange/2.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/implicit/schedulechanges/organizerchange/2.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/implicit/schedulechanges/organizerchange/2.xml:9426-9795
/CalDAVTester/trunk/Resource/implicit/schedulechanges/2.xml:2451,3035,3142,3165,3190,3405,3432
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/implicit/schedulechanges/organizerchange/2.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/implicit/schedulechanges/2.xml:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/implicit/schedulechanges/2.xml:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/implicit/schedulechanges/organizerchange/2.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/implicit/schedulechanges/2.xml:2949-2989
/CalDAVTester/branches/users/cdaboo/location-partial-accept-3574/Resource/implicit/schedulechanges/2.xml:3575-3581
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/implicit/schedulechanges/2.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/implicit/schedulechanges/organizerchange/2.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/implicit/schedulechanges/organizerchange/2.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/implicit/schedulechanges/organizerchange/2.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/implicit/schedulechanges/organizerchange/2.xml:9426-9832
/CalDAVTester/trunk/Resource/implicit/schedulechanges/2.xml:2451,3035,3142,3165,3190,3405,3432


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/implicit/schedulechanges/organizerchange/3.xml
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/implicit/schedulechanges/organizerchange/3.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/implicit/schedulechanges/3.xml:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/implicit/schedulechanges/3.xml:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/implicit/schedulechanges/organizerchange/3.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/implicit/schedulechanges/3.xml:2949-2989
/CalDAVTester/branches/users/cdaboo/location-partial-accept-3574/Resource/implicit/schedulechanges/3.xml:3575-3581
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/implicit/schedulechanges/3.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/implicit/schedulechanges/organizerchange/3.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/implicit/schedulechanges/organizerchange/3.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/implicit/schedulechanges/organizerchange/3.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/implicit/schedulechanges/organizerchange/3.xml:9426-9795
/CalDAVTester/trunk/Resource/implicit/schedulechanges/3.xml:2451,3035,3142,3165,3190,3405,3432
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/implicit/schedulechanges/organizerchange/3.xml:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/implicit/schedulechanges/3.xml:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/implicit/schedulechanges/3.xml:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/implicit/schedulechanges/organizerchange/3.xml:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/implicit/schedulechanges/3.xml:2949-2989
/CalDAVTester/branches/users/cdaboo/location-partial-accept-3574/Resource/implicit/schedulechanges/3.xml:3575-3581
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/implicit/schedulechanges/3.xml:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/implicit/schedulechanges/organizerchange/3.xml:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/implicit/schedulechanges/organizerchange/3.xml:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/implicit/schedulechanges/organizerchange/3.xml:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/implicit/schedulechanges/organizerchange/3.xml:9426-9832
/CalDAVTester/trunk/Resource/implicit/schedulechanges/3.xml:2451,3035,3142,3165,3190,3405,3432


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/implicit/schedulechanges/organizerchange/4.ics
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/implicit/schedulechanges/organizerchange/4.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/implicit/schedulechanges/4.ics:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/implicit/schedulechanges/4.ics:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/implicit/schedulechanges/organizerchange/4.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/implicit/schedulechanges/4.ics:2949-2989
/CalDAVTester/branches/users/cdaboo/location-partial-accept-3574/Resource/implicit/schedulechanges/4.ics:3575-3581
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/implicit/schedulechanges/4.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/implicit/schedulechanges/organizerchange/4.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/implicit/schedulechanges/organizerchange/4.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/implicit/schedulechanges/organizerchange/4.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/implicit/schedulechanges/organizerchange/4.ics:9426-9795
/CalDAVTester/trunk/Resource/implicit/schedulechanges/4.ics:2451,3035,3142,3165,3190,3405,3432
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/implicit/schedulechanges/organizerchange/4.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/implicit/schedulechanges/4.ics:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/implicit/schedulechanges/4.ics:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/implicit/schedulechanges/organizerchange/4.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/implicit/schedulechanges/4.ics:2949-2989
/CalDAVTester/branches/users/cdaboo/location-partial-accept-3574/Resource/implicit/schedulechanges/4.ics:3575-3581
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/implicit/schedulechanges/4.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/implicit/schedulechanges/organizerchange/4.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/implicit/schedulechanges/organizerchange/4.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/implicit/schedulechanges/organizerchange/4.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/implicit/schedulechanges/organizerchange/4.ics:9426-9832
/CalDAVTester/trunk/Resource/implicit/schedulechanges/4.ics:2451,3035,3142,3165,3190,3405,3432


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/implicit/schedulechanges/organizerchange/5.ics
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/implicit/schedulechanges/organizerchange/5.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/implicit/schedulechanges/5.ics:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/implicit/schedulechanges/5.ics:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/implicit/schedulechanges/organizerchange/5.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/implicit/schedulechanges/5.ics:2949-2989
/CalDAVTester/branches/users/cdaboo/location-partial-accept-3574/Resource/implicit/schedulechanges/5.ics:3575-3581
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/implicit/schedulechanges/5.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/implicit/schedulechanges/organizerchange/5.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/implicit/schedulechanges/organizerchange/5.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/implicit/schedulechanges/organizerchange/5.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/implicit/schedulechanges/organizerchange/5.ics:9426-9795
/CalDAVTester/trunk/Resource/implicit/schedulechanges/5.ics:2451,3035,3142,3165,3190,3405,3432
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/implicit/schedulechanges/organizerchange/5.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/implicit/schedulechanges/5.ics:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/implicit/schedulechanges/5.ics:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/implicit/schedulechanges/organizerchange/5.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/implicit/schedulechanges/5.ics:2949-2989
/CalDAVTester/branches/users/cdaboo/location-partial-accept-3574/Resource/implicit/schedulechanges/5.ics:3575-3581
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/implicit/schedulechanges/5.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/implicit/schedulechanges/organizerchange/5.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/implicit/schedulechanges/organizerchange/5.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/implicit/schedulechanges/organizerchange/5.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/implicit/schedulechanges/organizerchange/5.ics:9426-9832
/CalDAVTester/trunk/Resource/implicit/schedulechanges/5.ics:2451,3035,3142,3165,3190,3405,3432


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/implicit/schedulechanges/organizerchange/6.ics
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/implicit/schedulechanges/organizerchange/6.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/implicit/schedulechanges/6.ics:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/implicit/schedulechanges/6.ics:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/implicit/schedulechanges/organizerchange/6.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/implicit/schedulechanges/6.ics:2949-2989
/CalDAVTester/branches/users/cdaboo/location-partial-accept-3574/Resource/implicit/schedulechanges/6.ics:3575-3581
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/implicit/schedulechanges/6.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/implicit/schedulechanges/organizerchange/6.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/implicit/schedulechanges/organizerchange/6.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/implicit/schedulechanges/organizerchange/6.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/implicit/schedulechanges/organizerchange/6.ics:9426-9795
/CalDAVTester/trunk/Resource/implicit/schedulechanges/6.ics:2451,3035,3142,3165,3190,3405,3432
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/implicit/schedulechanges/organizerchange/6.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/implicit/schedulechanges/6.ics:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/implicit/schedulechanges/6.ics:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/implicit/schedulechanges/organizerchange/6.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/implicit/schedulechanges/6.ics:2949-2989
/CalDAVTester/branches/users/cdaboo/location-partial-accept-3574/Resource/implicit/schedulechanges/6.ics:3575-3581
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/implicit/schedulechanges/6.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/implicit/schedulechanges/organizerchange/6.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/implicit/schedulechanges/organizerchange/6.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/implicit/schedulechanges/organizerchange/6.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/implicit/schedulechanges/organizerchange/6.ics:9426-9832
/CalDAVTester/trunk/Resource/implicit/schedulechanges/6.ics:2451,3035,3142,3165,3190,3405,3432


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/implicit/schedulechanges/organizerchange/7.ics
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/implicit/schedulechanges/organizerchange/7.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/implicit/schedulechanges/7.ics:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/implicit/schedulechanges/7.ics:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/implicit/schedulechanges/organizerchange/7.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/implicit/schedulechanges/7.ics:2949-2989
/CalDAVTester/branches/users/cdaboo/location-partial-accept-3574/Resource/implicit/schedulechanges/7.ics:3575-3581
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/implicit/schedulechanges/7.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/implicit/schedulechanges/organizerchange/7.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/implicit/schedulechanges/organizerchange/7.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/implicit/schedulechanges/organizerchange/7.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/implicit/schedulechanges/organizerchange/7.ics:9426-9795
/CalDAVTester/trunk/Resource/implicit/schedulechanges/7.ics:2451,3035,3142,3165,3190,3405,3432
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/implicit/schedulechanges/organizerchange/7.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/implicit/schedulechanges/7.ics:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/implicit/schedulechanges/7.ics:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/implicit/schedulechanges/organizerchange/7.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/implicit/schedulechanges/7.ics:2949-2989
/CalDAVTester/branches/users/cdaboo/location-partial-accept-3574/Resource/implicit/schedulechanges/7.ics:3575-3581
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/implicit/schedulechanges/7.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/implicit/schedulechanges/organizerchange/7.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/implicit/schedulechanges/organizerchange/7.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/implicit/schedulechanges/organizerchange/7.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/implicit/schedulechanges/organizerchange/7.ics:9426-9832
/CalDAVTester/trunk/Resource/implicit/schedulechanges/7.ics:2451,3035,3142,3165,3190,3405,3432


Property changes on: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/implicit/schedulechanges/organizerchange/8.ics
___________________________________________________________________
Modified: svn:mergeinfo
   - /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/implicit/schedulechanges/organizerchange/8.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/implicit/schedulechanges/8.ics:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/implicit/schedulechanges/8.ics:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/implicit/schedulechanges/organizerchange/8.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/implicit/schedulechanges/8.ics:2949-2989
/CalDAVTester/branches/users/cdaboo/location-partial-accept-3574/Resource/implicit/schedulechanges/8.ics:3575-3581
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/implicit/schedulechanges/8.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/implicit/schedulechanges/organizerchange/8.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/implicit/schedulechanges/organizerchange/8.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/implicit/schedulechanges/organizerchange/8.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/implicit/schedulechanges/organizerchange/8.ics:9426-9795
/CalDAVTester/trunk/Resource/implicit/schedulechanges/8.ics:2451,3035,3142,3165,3190,3405,3432
   + /CalDAVTester/branches/release/CalDAVTester-3.0-dev/Resource/CalDAV/implicit/schedulechanges/organizerchange/8.ics:7584
/CalDAVTester/branches/users/cdaboo/attendee-comments-2887/Resource/implicit/schedulechanges/8.ics:2888-2910
/CalDAVTester/branches/users/cdaboo/better-proxy-3148/Resource/implicit/schedulechanges/8.ics:3149-3163
/CalDAVTester/branches/users/cdaboo/component-set-fixes/Resource/CalDAV/implicit/schedulechanges/organizerchange/8.ics:8221-8346
/CalDAVTester/branches/users/cdaboo/implicitauto-2948/Resource/implicit/schedulechanges/8.ics:2949-2989
/CalDAVTester/branches/users/cdaboo/location-partial-accept-3574/Resource/implicit/schedulechanges/8.ics:3575-3581
/CalDAVTester/branches/users/cdaboo/normalize-cuaddr-3533/Resource/implicit/schedulechanges/8.ics:3534-3558
/CalDAVTester/branches/users/cdaboo/pycalendar/Resource/CalDAV/implicit/schedulechanges/organizerchange/8.ics:7160-7206
/CalDAVTester/branches/users/cdaboo/pycard/Resource/CalDAV/implicit/schedulechanges/organizerchange/8.ics:7226-7237
/CalDAVTester/branches/users/cdaboo/sharing-5228/Resource/CalDAV/implicit/schedulechanges/organizerchange/8.ics:5229-5440
/CalDAVTester/trunk/Resource/CalDAV/implicit/schedulechanges/organizerchange/8.ics:9426-9832
/CalDAVTester/trunk/Resource/implicit/schedulechanges/8.ics:2451,3035,3142,3165,3190,3405,3432

Copied: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/proppatches/10.xml (from rev 9832, CalDAVTester/trunk/Resource/CalDAV/proppatches/10.xml)
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/proppatches/10.xml	                        (rev 0)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/proppatches/10.xml	2012-09-22 20:53:20 UTC (rev 9839)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<D:propertyupdate xmlns:D="DAV:">
+<D:set>
+<D:prop>
+<D:displayname>LompyWickets</D:displayname>
+</D:prop>
+</D:set>
+</D:propertyupdate>

Copied: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/proppatches/11.xml (from rev 9832, CalDAVTester/trunk/Resource/CalDAV/proppatches/11.xml)
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/proppatches/11.xml	                        (rev 0)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/proppatches/11.xml	2012-09-22 20:53:20 UTC (rev 9839)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<D:propertyupdate xmlns:D="DAV:">
+<D:set>
+<D:prop>
+<D:displayname>calendar</D:displayname>
+</D:prop>
+</D:set>
+</D:propertyupdate>

Copied: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/proppatches/12.xml (from rev 9832, CalDAVTester/trunk/Resource/CalDAV/proppatches/12.xml)
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/proppatches/12.xml	                        (rev 0)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/proppatches/12.xml	2012-09-22 20:53:20 UTC (rev 9839)
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<D:propfind xmlns:D="DAV:">
+<D:prop>
+<D:displayname/>
+</D:prop>
+</D:propfind>

Copied: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/recurrenceput/22.ics (from rev 9832, CalDAVTester/trunk/Resource/CalDAV/recurrenceput/22.ics)
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/recurrenceput/22.ics	                        (rev 0)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/recurrenceput/22.ics	2012-09-22 20:53:20 UTC (rev 9839)
@@ -0,0 +1,62 @@
+BEGIN:VCALENDAR
+CALSCALE:GREGORIAN
+PRODID:-//Example Inc.//Example Calendar//EN
+VERSION:2.0
+X-WR-CALNAME:CalDAV tests
+BEGIN:VTIMEZONE
+LAST-MODIFIED:20040110T032845Z
+TZID:US/Eastern
+BEGIN:DAYLIGHT
+DTSTART:20000404T020000
+RRULE:FREQ=YEARLY;BYDAY=1SU;BYMONTH=4
+TZNAME:EDT
+TZOFFSETFROM:-0500
+TZOFFSETTO:-0400
+END:DAYLIGHT
+BEGIN:STANDARD
+DTSTART:20001026T020000
+RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10
+TZNAME:EST
+TZOFFSETFROM:-0400
+TZOFFSETTO:-0500
+END:STANDARD
+END:VTIMEZONE
+BEGIN:VEVENT
+DTSTAMP:20060202T205536Z
+DTSTART;TZID=US/Eastern:20130101T120000
+DURATION:PT1H
+SUMMARY:event 1
+UID:event22 at example.local
+RRULE:FREQ=MONTHLY
+END:VEVENT
+BEGIN:VEVENT
+DTSTAMP:20060202T205536Z
+RECURRENCE-ID;TZID=US/Eastern:20130201T120000
+DTSTART;TZID=US/Eastern:20130201T120000
+DURATION:PT1H
+SUMMARY:event 1
+UID:event22 at example.local
+BEGIN:VALARM
+X-WR-ALARMUID:D9D1AC84-F629-4B9D-9B6B-4A6CA9A11FEF
+UID:D9D1AC84-F629-4B9D-9B6B-4A6CA9A11FEF
+DESCRIPTION:Event reminder
+TRIGGER:-PT8M
+ACTION:DISPLAY
+END:VALARM
+END:VEVENT
+BEGIN:VEVENT
+DTSTAMP:20060202T205536Z
+RECURRENCE-ID;TZID=US/Eastern:20140201T120000
+DTSTART;TZID=US/Eastern:20140201T120000
+DURATION:PT1H
+SUMMARY:event 1
+UID:event22 at example.local
+BEGIN:VALARM
+X-WR-ALARMUID:D9D1AC84-F629-4B9D-9B6B-4A6CA9A11FEF
+UID:D9D1AC84-F629-4B9D-9B6B-4A6CA9A11FEF
+DESCRIPTION:Event reminder
+TRIGGER:-PT5M
+ACTION:DISPLAY
+END:VALARM
+END:VEVENT
+END:VCALENDAR

Deleted: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/invites/self-error/1.xml
===================================================================
--- CalDAVTester/trunk/Resource/CalDAV/sharing/invites/self-error/1.xml	2012-09-21 20:13:55 UTC (rev 9832)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/invites/self-error/1.xml	2012-09-22 20:53:20 UTC (rev 9839)
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<CS:share xmlns:D="DAV:" xmlns:CS="http://calendarserver.org/ns/">
-    <CS:set>
-        <D:href>$cuaddr1:</D:href>
-        <CS:summary>My Shared Calendar</CS:summary>
-        <CS:read-write/>
-    </CS:set>
-</CS:share>

Copied: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/invites/self-error/1.xml (from rev 9832, CalDAVTester/trunk/Resource/CalDAV/sharing/invites/self-error/1.xml)
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/invites/self-error/1.xml	                        (rev 0)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/invites/self-error/1.xml	2012-09-22 20:53:20 UTC (rev 9839)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<CS:share xmlns:D="DAV:" xmlns:CS="http://calendarserver.org/ns/">
+    <CS:set>
+        <D:href>$cuaddr1:</D:href>
+        <CS:summary>My Shared Calendar</CS:summary>
+        <CS:read-write/>
+    </CS:set>
+</CS:share>

Deleted: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/1.xml
===================================================================
--- CalDAVTester/trunk/Resource/CalDAV/sharing/unshare/shareruninvite/1.xml	2012-09-21 20:13:55 UTC (rev 9832)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/1.xml	2012-09-22 20:53:20 UTC (rev 9839)
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<CS:share xmlns:D="DAV:" xmlns:CS="http://calendarserver.org/ns/">
-    <CS:set>
-        <D:href>$cuaddr3:</D:href>
-        <CS:common-name>Display Name 03</CS:common-name>
-        <CS:summary>My Shared Calendar</CS:summary>
-        <CS:read-write/>
-    </CS:set>
-</CS:share>

Copied: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/1.xml (from rev 9832, CalDAVTester/trunk/Resource/CalDAV/sharing/unshare/shareruninvite/1.xml)
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/1.xml	                        (rev 0)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/1.xml	2012-09-22 20:53:20 UTC (rev 9839)
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<CS:share xmlns:D="DAV:" xmlns:CS="http://calendarserver.org/ns/">
+    <CS:set>
+        <D:href>$cuaddr3:</D:href>
+        <CS:common-name>Display Name 03</CS:common-name>
+        <CS:summary>My Shared Calendar</CS:summary>
+        <CS:read-write/>
+    </CS:set>
+</CS:share>

Deleted: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/2.xml
===================================================================
--- CalDAVTester/trunk/Resource/CalDAV/sharing/unshare/shareruninvite/2.xml	2012-09-21 20:13:55 UTC (rev 9832)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/2.xml	2012-09-22 20:53:20 UTC (rev 9839)
@@ -1,22 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?><notification xmlns='http://calendarserver.org/ns/'>
-  <dtstamp></dtstamp>
-  <invite-notification shared-type='calendar'>
-    <uid></uid>
-    <href xmlns='DAV:'>$cuaddr3:</href>
-    <invite-noresponse/>
-    <access>
-      <read-write/>
-    </access>
-    <hosturl>
-      <href xmlns='DAV:'>$calendarhome1:/shared</href>
-    </hosturl>
-    <organizer>
-      <href xmlns='DAV:'>$principaluri1:</href>
-      <common-name>User 01</common-name>
-    </organizer>
-    <summary>My Shared Calendar</summary>
-    <supported-calendar-component-set xmlns='urn:ietf:params:xml:ns:caldav'>
-      <comp name="VEVENT" />
-    </supported-calendar-component-set>
-  </invite-notification>
-</notification>

Copied: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/2.xml (from rev 9832, CalDAVTester/trunk/Resource/CalDAV/sharing/unshare/shareruninvite/2.xml)
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/2.xml	                        (rev 0)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/2.xml	2012-09-22 20:53:20 UTC (rev 9839)
@@ -0,0 +1,22 @@
+<?xml version='1.0' encoding='UTF-8'?><notification xmlns='http://calendarserver.org/ns/'>
+  <dtstamp></dtstamp>
+  <invite-notification shared-type='calendar'>
+    <uid></uid>
+    <href xmlns='DAV:'>$cuaddr3:</href>
+    <invite-noresponse/>
+    <access>
+      <read-write/>
+    </access>
+    <hosturl>
+      <href xmlns='DAV:'>$calendarhome1:/shared</href>
+    </hosturl>
+    <organizer>
+      <href xmlns='DAV:'>$principaluri1:</href>
+      <common-name>User 01</common-name>
+    </organizer>
+    <summary>My Shared Calendar</summary>
+    <supported-calendar-component-set xmlns='urn:ietf:params:xml:ns:caldav'>
+      <comp name="VEVENT" />
+    </supported-calendar-component-set>
+  </invite-notification>
+</notification>

Deleted: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/3.xml
===================================================================
--- CalDAVTester/trunk/Resource/CalDAV/sharing/unshare/shareruninvite/3.xml	2012-09-21 20:13:55 UTC (rev 9832)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/3.xml	2012-09-22 20:53:20 UTC (rev 9839)
@@ -1,13 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<invite-reply xmlns='http://calendarserver.org/ns/'>
-  <href xmlns='DAV:'>mailto:$email3:</href>
-  <invite-accepted/>
-  <hosturl>
-    <href xmlns='DAV:'>$calendarhome1:/shared</href>
-  </hosturl>
-  <in-reply-to>$inviteuid:</in-reply-to>
-  <summary>The Shared Calendar</summary>
-  <common-name>$username3:</common-name>
-  <first-name>$firstname3:</first-name>
-  <last-name>$lastname3:</last-name>
-</invite-reply>

Copied: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/3.xml (from rev 9832, CalDAVTester/trunk/Resource/CalDAV/sharing/unshare/shareruninvite/3.xml)
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/3.xml	                        (rev 0)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/3.xml	2012-09-22 20:53:20 UTC (rev 9839)
@@ -0,0 +1,13 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<invite-reply xmlns='http://calendarserver.org/ns/'>
+  <href xmlns='DAV:'>mailto:$email3:</href>
+  <invite-accepted/>
+  <hosturl>
+    <href xmlns='DAV:'>$calendarhome1:/shared</href>
+  </hosturl>
+  <in-reply-to>$inviteuid:</in-reply-to>
+  <summary>The Shared Calendar</summary>
+  <common-name>$username3:</common-name>
+  <first-name>$firstname3:</first-name>
+  <last-name>$lastname3:</last-name>
+</invite-reply>

Deleted: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/4.xml
===================================================================
--- CalDAVTester/trunk/Resource/CalDAV/sharing/unshare/shareruninvite/4.xml	2012-09-21 20:13:55 UTC (rev 9832)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/4.xml	2012-09-22 20:53:20 UTC (rev 9839)
@@ -1,4 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<shared-as xmlns='http://calendarserver.org/ns/'>
-  <href xmlns='DAV:'></href>
-</shared-as>

Copied: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/4.xml (from rev 9832, CalDAVTester/trunk/Resource/CalDAV/sharing/unshare/shareruninvite/4.xml)
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/4.xml	                        (rev 0)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/4.xml	2012-09-22 20:53:20 UTC (rev 9839)
@@ -0,0 +1,4 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<shared-as xmlns='http://calendarserver.org/ns/'>
+  <href xmlns='DAV:'></href>
+</shared-as>

Deleted: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/5.xml
===================================================================
--- CalDAVTester/trunk/Resource/CalDAV/sharing/unshare/shareruninvite/5.xml	2012-09-21 20:13:55 UTC (rev 9832)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/5.xml	2012-09-22 20:53:20 UTC (rev 9839)
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<D:propertyupdate xmlns:D="DAV:">
-<D:set>
-<D:prop>
-<D:displayname>Sharee Display Name</D:displayname>
-</D:prop>
-</D:set>
-</D:propertyupdate>

Copied: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/5.xml (from rev 9832, CalDAVTester/trunk/Resource/CalDAV/sharing/unshare/shareruninvite/5.xml)
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/5.xml	                        (rev 0)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/5.xml	2012-09-22 20:53:20 UTC (rev 9839)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<D:propertyupdate xmlns:D="DAV:">
+<D:set>
+<D:prop>
+<D:displayname>Sharee Display Name</D:displayname>
+</D:prop>
+</D:set>
+</D:propertyupdate>

Deleted: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/6.xml
===================================================================
--- CalDAVTester/trunk/Resource/CalDAV/sharing/unshare/shareruninvite/6.xml	2012-09-21 20:13:55 UTC (rev 9832)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/6.xml	2012-09-22 20:53:20 UTC (rev 9839)
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<CS:share xmlns:D="DAV:" xmlns:CS="http://calendarserver.org/ns/">
-    <CS:remove>
-        <D:href>$cuaddr3:</D:href>
-        <CS:summary>My Shared Calendar</CS:summary>
-        <CS:read-write/>
-    </CS:remove>
-</CS:share>

Copied: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/6.xml (from rev 9832, CalDAVTester/trunk/Resource/CalDAV/sharing/unshare/shareruninvite/6.xml)
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/6.xml	                        (rev 0)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/6.xml	2012-09-22 20:53:20 UTC (rev 9839)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<CS:share xmlns:D="DAV:" xmlns:CS="http://calendarserver.org/ns/">
+    <CS:remove>
+        <D:href>$cuaddr3:</D:href>
+        <CS:summary>My Shared Calendar</CS:summary>
+        <CS:read-write/>
+    </CS:remove>
+</CS:share>

Deleted: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/7.xml
===================================================================
--- CalDAVTester/trunk/Resource/CalDAV/sharing/unshare/shareruninvite/7.xml	2012-09-21 20:13:55 UTC (rev 9832)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/7.xml	2012-09-22 20:53:20 UTC (rev 9839)
@@ -1,22 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?><notification xmlns='http://calendarserver.org/ns/'>
-  <dtstamp></dtstamp>
-  <invite-notification shared-type='calendar'>
-    <uid></uid>
-    <href xmlns='DAV:'>$cuaddr3:</href>
-    <invite-deleted/>
-    <access>
-      <read-write/>
-    </access>
-    <hosturl>
-      <href xmlns='DAV:'>$calendarhome1:/shared</href>
-    </hosturl>
-    <organizer>
-      <href xmlns='DAV:'>$principaluri1:</href>
-      <common-name>User 01</common-name>
-    </organizer>
-    <summary>Sharee Display Name</summary>
-    <supported-calendar-component-set xmlns='urn:ietf:params:xml:ns:caldav'>
-      <comp name="VEVENT" />
-    </supported-calendar-component-set>
-  </invite-notification>
-</notification>

Copied: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/7.xml (from rev 9832, CalDAVTester/trunk/Resource/CalDAV/sharing/unshare/shareruninvite/7.xml)
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/7.xml	                        (rev 0)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/Resource/CalDAV/sharing/unshare/shareruninvite/7.xml	2012-09-22 20:53:20 UTC (rev 9839)
@@ -0,0 +1,22 @@
+<?xml version='1.0' encoding='UTF-8'?><notification xmlns='http://calendarserver.org/ns/'>
+  <dtstamp></dtstamp>
+  <invite-notification shared-type='calendar'>
+    <uid></uid>
+    <href xmlns='DAV:'>$cuaddr3:</href>
+    <invite-deleted/>
+    <access>
+      <read-write/>
+    </access>
+    <hosturl>
+      <href xmlns='DAV:'>$calendarhome1:/shared</href>
+    </hosturl>
+    <organizer>
+      <href xmlns='DAV:'>$principaluri1:</href>
+      <common-name>User 01</common-name>
+    </organizer>
+    <summary>Sharee Display Name</summary>
+    <supported-calendar-component-set xmlns='urn:ietf:params:xml:ns:caldav'>
+      <comp name="VEVENT" />
+    </supported-calendar-component-set>
+  </invite-notification>
+</notification>

Deleted: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/Common/MKCALENDAR/sharedcalendar.xml
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/Resource/Common/MKCALENDAR/sharedcalendar.xml	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/Resource/Common/MKCALENDAR/sharedcalendar.xml	2012-09-22 20:53:20 UTC (rev 9839)
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<C:mkcalendar xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:caldav"  xmlns:S="http://calendarserver.org/ns/">
-<D:set>
-<D:prop>
-<D:resourcetype><D:collection/><C:calendar/><S:shared-owner/></D:resourcetype>
-</D:prop>
-</D:set>
-</C:mkcalendar>

Deleted: CalDAVTester/branches/users/gaya/invitecleanTester/Resource/Common/MKCOL/sharedaddressbook.xml
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/Resource/Common/MKCOL/sharedaddressbook.xml	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/Resource/Common/MKCOL/sharedaddressbook.xml	2012-09-22 20:53:20 UTC (rev 9839)
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<D:mkcol xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:carddav"  xmlns:S="http://calendarserver.org/ns/">
-<D:set>
-<D:prop>
-<D:resourcetype><D:collection/><C:addressbook/><S:shared-owner/></D:resourcetype>
-</D:prop>
-</D:set>
-</D:mkcol>

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/odsetup.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/odsetup.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/odsetup.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -31,14 +31,14 @@
 import traceback
 import uuid
 import xml.parsers.expat
-sys_root         = "/Applications/Server.app/Contents/ServerRoot"
-conf_root        = "/Library/Server/Calendar and Contacts/Config"
+sys_root = "/Applications/Server.app/Contents/ServerRoot"
+conf_root = "/Library/Server/Calendar and Contacts/Config"
 
-diradmin_user    = "admin"
-diradmin_pswd    = ""
-directory_node   = "/LDAPv3/127.0.0.1"
-utility          = sys_root + "/usr/sbin/calendarserver_manage_principals"
-cmdutility       = sys_root + "/usr/sbin/calendarserver_command_gateway"
+diradmin_user = "admin"
+diradmin_pswd = ""
+directory_node = "/LDAPv3/127.0.0.1"
+utility = sys_root + "/usr/sbin/calendarserver_manage_principals"
+cmdutility = sys_root + "/usr/sbin/calendarserver_command_gateway"
 
 verbose = False
 veryverbose = False
@@ -77,43 +77,43 @@
 
 # List of users as a tuple: (<<name>>, <<pswd>>, <<repeat count>>)
 adminattrs = {
-    "dsAttrTypeStandard:RealName":        "Super User",
-    "dsAttrTypeStandard:FirstName":       "Super",
-    "dsAttrTypeStandard:LastName":        "User",
-    "dsAttrTypeStandard:EMailAddress":    "testadmin at example.com",
+    "dsAttrTypeStandard:RealName": "Super User",
+    "dsAttrTypeStandard:FirstName": "Super",
+    "dsAttrTypeStandard:LastName": "User",
+    "dsAttrTypeStandard:EMailAddress": "testadmin at example.com",
 }
 
 apprenticeattrs = {
-    "dsAttrTypeStandard:RealName":        "Apprentice Super User",
-    "dsAttrTypeStandard:FirstName":       "Apprentice",
-    "dsAttrTypeStandard:LastName":        "Super User",
-    "dsAttrTypeStandard:EMailAddress":    "apprentice at example.com",
+    "dsAttrTypeStandard:RealName": "Apprentice Super User",
+    "dsAttrTypeStandard:FirstName": "Apprentice",
+    "dsAttrTypeStandard:LastName": "Super User",
+    "dsAttrTypeStandard:EMailAddress": "apprentice at example.com",
 }
 
 userattrs = {
-    "dsAttrTypeStandard:RealName":        "User %02d",
-    "dsAttrTypeStandard:FirstName":       "User",
-    "dsAttrTypeStandard:LastName":        "%02d",
-    "dsAttrTypeStandard:EMailAddress":    "user%02d at example.com",
+    "dsAttrTypeStandard:RealName": "User %02d",
+    "dsAttrTypeStandard:FirstName": "User",
+    "dsAttrTypeStandard:LastName": "%02d",
+    "dsAttrTypeStandard:EMailAddress": "user%02d at example.com",
 }
 
 publicattrs = {
-    "dsAttrTypeStandard:RealName":        "Public %02d",
-    "dsAttrTypeStandard:FirstName":       "Public",
-    "dsAttrTypeStandard:LastName":        "%02d",
-    "dsAttrTypeStandard:EMailAddress":    "public%02d at example.com",
-    "dsAttrTypeStandard:Street":          "%d Public Row",
-    "dsAttrTypeStandard:City":            "Exampleville",
-    "dsAttrTypeStandard:State":           "Testshire",
-    "dsAttrTypeStandard:PostalCode":      "RFC 4791",
-    "dsAttrTypeStandard:Country":         "AAA",
+    "dsAttrTypeStandard:RealName": "Public %02d",
+    "dsAttrTypeStandard:FirstName": "Public",
+    "dsAttrTypeStandard:LastName": "%02d",
+    "dsAttrTypeStandard:EMailAddress": "public%02d at example.com",
+    "dsAttrTypeStandard:Street": "%d Public Row",
+    "dsAttrTypeStandard:City": "Exampleville",
+    "dsAttrTypeStandard:State": "Testshire",
+    "dsAttrTypeStandard:PostalCode": "RFC 4791",
+    "dsAttrTypeStandard:Country": "AAA",
 }
 
 i18nattrs = {
-    "dsAttrTypeStandard:RealName":        "まだ",
-    "dsAttrTypeStandard:FirstName":       "ま",
-    "dsAttrTypeStandard:LastName":        "だ",
-    "dsAttrTypeStandard:EMailAddress":    "i18nuser at example.com",
+    "dsAttrTypeStandard:RealName": "まだ",
+    "dsAttrTypeStandard:FirstName": "ま",
+    "dsAttrTypeStandard:LastName": "だ",
+    "dsAttrTypeStandard:EMailAddress": "i18nuser at example.com",
 }
 
 locationcreatecmd = """<?xml version="1.0" encoding="UTF-8"?>
@@ -205,19 +205,19 @@
 """
 
 locationattrs = {
-    "dsAttrTypeStandard:RealName":        "Room %02d",
+    "dsAttrTypeStandard:RealName": "Room %02d",
 }
 
 delegatedroomattrs = {
-    "dsAttrTypeStandard:RealName":        "Delegated Conference Room",
+    "dsAttrTypeStandard:RealName": "Delegated Conference Room",
 }
 
 resourceattrs = {
-    "dsAttrTypeStandard:RealName":        "Resource %02d",
+    "dsAttrTypeStandard:RealName": "Resource %02d",
 }
 
 groupattrs = {
-        "dsAttrTypeStandard:RealName":        "Group %02d",
+        "dsAttrTypeStandard:RealName": "Group %02d",
 }
 
 records = (
@@ -245,8 +245,10 @@
     -V        very verbose logging
 """
 
+
+
 def cmd(args, input=None, raiseOnFail=True):
-    
+
     if veryverbose:
         print "-----"
     if verbose:
@@ -265,6 +267,8 @@
         raise RuntimeError(result[1])
     return result[0], p.returncode
 
+
+
 def readConfig(config):
     """
     Read useful information from the server's caldavd.plist file.
@@ -280,7 +284,7 @@
     except KeyError:
         # add SudoersFile entry to caldavd.plist
         plist["SudoersFile"] = conf_root + "/sudoers.plist"
-        writePlist(plist,config)
+        writePlist(plist, config)
 
     try:
         sudoerspl = readPlist(plist["SudoersFile"])
@@ -317,7 +321,7 @@
         authtype = "basic"
     elif digest_ok:
         authtype = "digest"
-    
+
     if not hostname:
         hostname = socket.getfqdn()
         if not hostname:
@@ -329,11 +333,12 @@
 
     return hostname, nonsslport, sslport, authtype, docroot, sudoers
 
+
+
 def patchConfig(config, admin):
     """
     Patch the caldavd.plist file to make sure:
        * the proper admin principal is configured
-       * DS Search node is set to /LDAPv3/127.0.0.1
        * iMIP is disabled
        * SACLs are disabled
        * CalDAV and CardDAV are enabled
@@ -349,9 +354,6 @@
     admins = plist["AdminPrincipals"]
     admins[:] = [admin]
 
-    # Only concern ourselves with the OD records we care about
-    plist["DirectoryService"]["params"]["node"] = "/LDAPv3/127.0.0.1"
-
     # For testing do not send iMIP messages!
     plist["Scheduling"]["iMIP"]["Enabled"] = False
 
@@ -370,6 +372,8 @@
 
     writePlist(plist, config)
 
+
+
 def patchConfigForAugmentService(config):
     """
     Patch the caldavd.plist file to configure AugmentService
@@ -381,6 +385,8 @@
     plist["AugmentService"] = {'params': {'xmlFiles': ['augments.xml']}, 'type': 'twistedcaldav.directory.augment.AugmentXMLDB'}
     writePlist(plist, config)
 
+
+
 def patchSudoers(sudoers):
     """
     Patch the sudoers.plist file to add the superuser we need to test proxy authentication.
@@ -394,11 +400,13 @@
         if user["username"] == "superuser" and user["password"] == "superuser":
             break
     else:
-        users.append({"username":"superuser", "password": "superuser"})
+        users.append({"username": "superuser", "password": "superuser"})
         writePlist(plist, sudoers)
 
+
+
 def buildServerinfo(serverinfo_default, hostname, nonsslport, sslport, authtype, docroot):
-    
+
     # Read in the serverinfo-template.xml file
     fd = open(serverinfo_template, "r")
     try:
@@ -414,11 +422,11 @@
 """
 
     subs = [
-        ("$useradminguid:",      guids["testadmin"]),
+        ("$useradminguid:", guids["testadmin"]),
         ("$userapprenticeguid:", guids["apprentice"]),
-        ("$i18nguid:",           guids["i18nuser"]),
+        ("$i18nguid:", guids["i18nuser"]),
     ]
-    
+
     for i in range(1, number_of_users + 1):
         subs.append(("$userguid%d:" % (i,), guids["user%02d" % (i,)]))
     for i in range(1, 11):
@@ -429,7 +437,7 @@
         subs.append(("$locationguid%d:" % (i,), guids["location%02d" % (i,)]))
     for i in range(1, number_of_groups + 1):
         subs.append(("$groupguid%d:" % (i,), guids["group%02d" % (i,)]))
-    
+
     subs_str = ""
     for x, y in subs:
         subs_str += subs_template % (x, y,)
@@ -441,7 +449,7 @@
         "authtype"       : authtype,
         "overrides"      : subs_str,
     }
-    
+
     fd = open(serverinfo_default, "w")
     try:
         fd.write(data)
@@ -449,6 +457,7 @@
         fd.close()
 
 
+
 def addLargeCalendars(hostname, docroot):
     largeCalendarUser = "user09"
     calendars = ("calendar.10", "calendar.100", "calendar.1000",)
@@ -469,6 +478,8 @@
         cmd("sudo -u calendar tar -C \"%s\" -zx -f data/%s.tgz" % (path, calendar,))
         cmd("chown -R calendar:calendar \"%s\"" % (os.path.join(path, calendar) ,))
 
+
+
 def loadLists(config, path, records):
     if path == "/Places":
         result = cmd(
@@ -490,10 +501,12 @@
         raise
 
     for record in plist["result"]:
-        records[record["RecordName"][0]] = record["GeneratedUID"] 
+        records[record["RecordName"][0]] = record["GeneratedUID"]
 
+
+
 def doToAccounts(config, protocol, f, users_only=False):
-    
+
     for record in records:
         if protocol == "carddav" and record[0] in ("/Places", "/Resources"):
             continue
@@ -515,8 +528,10 @@
         else:
             f(config, record[0], record[1:])
 
+
+
 def doGroupMemberships():
-    
+
     memberships = (
         ("group01", ("user01",), (),),
         ("group02", ("user06", "user07",), (),),
@@ -526,34 +541,38 @@
         ("group06", ("user21",), (),),
         ("group07", ("user22", "user23", "user24",), (),),
     )
-    
+
     for groupname, users, nestedgroups in memberships:
-        
+
         memberGUIDs = [guids[user] for user in users]
         nestedGUIDs = [guids[group] for group in nestedgroups]
-        
+
         cmd("dscl -u %s -P %s %s -append /Groups/%s \"dsAttrTypeStandard:GroupMembers\"%s" % (diradmin_user, diradmin_pswd, directory_node, groupname, "".join([" \"%s\"" % (guid,) for guid in memberGUIDs])), raiseOnFail=False)
         cmd("dscl -u %s -P %s %s -append /Groups/%s \"dsAttrTypeStandard:NestedGroups\"%s" % (diradmin_user, diradmin_pswd, directory_node, groupname, "".join([" \"%s\"" % (guid,) for guid in nestedGUIDs])), raiseOnFail=False)
 
+
+
 def createUser(config, path, user):
-    
+
     if path in ("/Users", "/Groups",):
         createUserViaDS(config, path, user)
     elif protocol == "caldav":
         createUserViaGateway(config, path, user)
 
+
+
 def createUserViaDS(config, path, user):
     # Do dscl command line operations to create a calendar user
-    
+
     # Only create if it does not exist
     if cmd("dscl %s -list %s/%s" % (directory_node, path, user[0]), raiseOnFail=False)[1] != 0:
         # Create the user
         cmd("dscl -u %s -P %s %s -create %s/%s" % (diradmin_user, diradmin_pswd, directory_node, path, user[0]))
-        
+
         # Set the password (only for /Users)
         if path == "/Users":
             cmd("dscl -u %s -P %s %s -passwd %s/%s %s" % (diradmin_user, diradmin_pswd, directory_node, path, user[0], user[1]))
-    
+
         # Other attributes
         for key, value in user[2].iteritems():
             if key == "dsAttrTypeStandard:GeneratedUID":
@@ -563,13 +582,15 @@
         print "%s/%s already exists" % (path, user[0],)
 
     # Now read the guid for this record
-    if guids.has_key(user[0]):
-        result = cmd("dscl %s -read %s/%s GeneratedUID"  % (directory_node, path, user[0]))
+    if user[0] in guids:
+        result = cmd("dscl %s -read %s/%s GeneratedUID" % (directory_node, path, user[0]))
         guid = result[0].split()[1]
         guids[user[0]] = guid
 
+
+
 def createUserViaGateway(config, path, user):
-    
+
     # Check for existing
     if path == "/Places":
         if user[0] in locations:
@@ -579,53 +600,59 @@
         if user[0] in resources:
             guids[user[0]] = resources[user[0]]
             return
-    
+
     guid = str(uuid.uuid4()).upper()
-    if guids.has_key(user[0]):
+    if user[0] in guids:
         guids[user[0]] = guid
     if path == "/Places":
         cmd(
             "%s -f \"%s\"" % (cmdutility, config,),
             locationcreatecmd % {
-                "guid":guid,
-                "realname":user[2]["dsAttrTypeStandard:RealName"],
-                "recordname":user[0]
+                "guid": guid,
+                "realname": user[2]["dsAttrTypeStandard:RealName"],
+                "recordname": user[0]
             }
         )
     elif path == "/Resources":
         cmd(
             "%s -f \"%s\"" % (cmdutility, config,),
             resourcecreatecmd % {
-                "guid":guid,
-                "realname":user[2]["dsAttrTypeStandard:RealName"],
-                "recordname":user[0]
+                "guid": guid,
+                "realname": user[2]["dsAttrTypeStandard:RealName"],
+                "recordname": user[0]
             }
         )
     else:
         raise ValueError()
-    
+
+
+
 def removeUser(config, path, user):
-    
+
     if path in ("/Users", "/Groups",):
         removeUserViaDS(config, path, user)
     else:
         removeUserViaGateway(config, path, user)
 
+
+
 def removeUserViaDS(config, path, user):
     # Do dscl command line operations to remove a calendar user
 
     # Create the user
     cmd("dscl -u %s -P %s %s -delete %s/%s" % (diradmin_user, diradmin_pswd, directory_node, path, user[0]), raiseOnFail=False)
 
+
+
 def removeUserViaGateway(config, path, user):
-    
+
     if path == "/Places":
         if user[0] not in locations:
             return
         guid = locations[user[0]]
         cmd(
             "%s -f \"%s\"" % (cmdutility, config,),
-            locationremovecmd % {"guid":guid,}
+            locationremovecmd % {"guid": guid, }
         )
     elif path == "/Resources":
         if user[0] not in resources:
@@ -633,16 +660,18 @@
         guid = resources[user[0]]
         cmd(
             "%s -f \"%s\"" % (cmdutility, config,),
-            resourceremovecmd % {"guid":guid,}
+            resourceremovecmd % {"guid": guid, }
         )
     else:
         raise ValueError()
 
+
+
 def manageRecords(config, path, user):
     """
     Set proxies and auto-schedule for locations and resources
     """
-    
+
     # Do caldav_utility setup
     if path in ("/Places", "/Resources",):
         if path in ("/Places",):
@@ -662,25 +691,25 @@
                 utility,
                 user[0],
             ))
-            
+
             # Some resources have unique auto-schedule mode set
             automodes = {
-                "resource05" : "none", 
-                "resource06" : "accept-always", 
-                "resource07" : "decline-always", 
-                "resource08" : "accept-if-free", 
-                "resource09" : "decline-if-busy", 
-                "resource10" : "automatic", 
+                "resource05" : "none",
+                "resource06" : "accept-always",
+                "resource07" : "decline-always",
+                "resource08" : "accept-if-free",
+                "resource09" : "decline-if-busy",
+                "resource10" : "automatic",
             }
-            
+
             if user[0] in automodes:
                 cmd("%s --set-auto-schedule-mode=%s resources:%s" % (
                     utility,
                     automodes[user[0]],
                     user[0],
                 ))
-                
 
+
 if __name__ == "__main__":
 
     config = None
@@ -716,7 +745,7 @@
         if not config:
             config = details[protocol]["config"]
             serverinfo_default = details[protocol]["serverinfo"]
-            
+
         if not diradmin_pswd:
             diradmin_pswd = getpass("Directory Admin Password: ")
 
@@ -733,14 +762,14 @@
             print "Wrong arguments given: %s" % (args[0],)
             usage()
             raise ValueError
-        
+
         if args[0] == "create":
             # Read the caldavd.plist file and extract some information we will need.
             hostname, port, sslport, authtype, docroot, sudoers = readConfig(config)
-            
+
             # Patch the sudoers file for the superuser principal.
             patchSudoers(sudoers)
-    
+
             # Patch caldavd.plist to configure AugmentService, needed before creating resources
             patchConfigForAugmentService(config)
 
@@ -752,7 +781,7 @@
             doToAccounts(config, protocol, createUser)
             doGroupMemberships()
             doToAccounts(config, protocol, manageRecords)
-            
+
             # Patch the caldavd.plist file with the testadmin user's guid-based principal-URL
             patchConfig(config, "/principals/__uids__/%s/" % (guids["testadmin"],))
 
@@ -766,14 +795,14 @@
         elif args[0] == "create-users":
             # Read the caldavd.plist file and extract some information we will need.
             hostname, port, sslport, authtype, docroot, sudoers = readConfig(config)
-            
+
             # Now generate the OD accounts (caching guids as we go).
             if protocol == "caldav":
                 loadLists(config, "/Places", locations)
                 loadLists(config, "/Resources", resources)
 
             doToAccounts(config, protocol, createUser, users_only=True)
-            
+
             # Create an appropriate serverinfo.xml file from the template
             buildServerinfo(serverinfo_default, hostname, port, sslport, authtype, docroot)
 
@@ -782,7 +811,7 @@
                 loadLists(config, "/Places", locations)
                 loadLists(config, "/Resources", resources)
             doToAccounts(config, protocol, removeUser)
-            
+
     except Exception, e:
         traceback.print_exc()
         sys.exit(1)

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/run.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/run.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/run.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -33,7 +33,7 @@
 
 packages = [
     ("pycalendar", "pycalendar/src", "http://svn.mulberrymail.com/repos/PyCalendar/branches/server", "146"),
-    ("xattr", "xattr/build/lib.%s-%s" % (get_platform(),get_python_version()), "http://svn.red-bean.com/bob/xattr/releases/xattr-0.5", "1013"),
+    ("xattr", "xattr/build/lib.%s-%s" % (get_platform(), get_python_version()), "http://svn.red-bean.com/bob/xattr/releases/xattr-0.5", "1013"),
 ]
 
 def usage():
@@ -45,6 +45,8 @@
     -p       Print PYTHONPATH
 """
 
+
+
 def setup():
     for package in packages:
         ppath = "%s/%s" % (top, package[0],)
@@ -68,6 +70,8 @@
 
         add_paths.append("%s/%s" % (top, package[1],))
 
+
+
 def pythonpath():
     for package in packages:
         add_paths.append("%s/%s" % (top, package[1],))
@@ -75,10 +79,14 @@
     pypaths.extend(add_paths)
     return ":".join(pypaths)
 
+
+
 def runit():
-    pythonpath= ":".join(add_paths)
-    return subprocess.Popen(["./testcaldav.py", "--all"], env={"PYTHONPATH":pythonpath}).wait()
+    pythonpath = ":".join(add_paths)
+    return subprocess.Popen(["./testcaldav.py", "--all"], env={"PYTHONPATH": pythonpath}).wait()
 
+
+
 if __name__ == "__main__":
 
     try:

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/src/caldavtest.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/src/caldavtest.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/src/caldavtest.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -35,12 +35,12 @@
 import sys
 import time
 
-STATUSTXT_WIDTH    = 60
+STATUSTXT_WIDTH = 60
 
 """
 Patch the HTTPConnection.send to record full request details
 """
-    
+
 httplib.HTTPConnection._send = httplib.HTTPConnection.send
 
 def recordRequestHeaders(self, str):
@@ -52,7 +52,7 @@
 httplib.HTTPConnection.send = recordRequestHeaders
 
 def getVersionStringFromResponse(response):
-    
+
     if response.version == 9:
         return "HTTP/0.9"
     elif response.version == 10:
@@ -62,9 +62,11 @@
     else:
         return "HTTP/?.?"
 
+
+
 class caldavtest(object):
-    
-    def __init__( self, manager, name ):
+
+    def __init__(self, manager, name):
         self.manager = manager
         self.name = name
         self.description = ""
@@ -76,14 +78,17 @@
         self.end_deletes = []
         self.suites = []
         self.grabbedlocation = None
-        
+
+
     def missingFeatures(self):
         return self.require_features - self.manager.server_info.features
 
+
     def excludedFeatures(self):
         return self.exclude_features & self.manager.server_info.features
 
-    def run( self ):
+
+    def run(self):
         if len(self.missingFeatures()) != 0:
             self.manager.log(manager.LOG_HIGH, "----- Ignoring Tests from \"%s\"... -----" % self.name, before=1)
             self.manager.log(manager.LOG_HIGH, "      Missing features: %s" % (", ".join(sorted(self.missingFeatures())),))
@@ -92,10 +97,10 @@
             self.manager.log(manager.LOG_HIGH, "----- Ignoring Tests from \"%s\"... -----" % self.name, before=1)
             self.manager.log(manager.LOG_HIGH, "      Excluded features: %s" % (", ".join(sorted(self.excludedFeatures())),))
             return 0, 0, 1
-            
+
         try:
             self.manager.log(manager.LOG_HIGH, "----- Running Tests from \"%s\"... -----" % self.name, before=1)
-            result = self.dorequests( "Executing Start Requests...", self.start_requests, False, True, label="%s | %s" % (self.name, "START_REQUESTS") )
+            result = self.dorequests("Executing Start Requests...", self.start_requests, False, True, label="%s | %s" % (self.name, "START_REQUESTS"))
             if not result:
                 self.manager.log(manager.LOG_ERROR, "Start items failed - tests will not be run.")
                 ok = 0
@@ -103,8 +108,8 @@
                 ignored = 0
             else:
                 ok, failed, ignored = self.run_tests(label=self.name)
-            self.doenddelete( "Deleting Requests...", label="%s | %s" % (self.name, "END_DELETE"))
-            self.dorequests( "Executing End Requests...", self.end_requests, False, label="%s | %s" % (self.name, "END_REQUESTS"))
+            self.doenddelete("Deleting Requests...", label="%s | %s" % (self.name, "END_DELETE"))
+            self.dorequests("Executing End Requests...", self.end_requests, False, label="%s | %s" % (self.name, "END_REQUESTS"))
             return ok, failed, ignored
         except socket.error, msg:
             self.manager.log(manager.LOG_ERROR, "SOCKET ERROR: %s" % (msg,), before=2)
@@ -112,19 +117,21 @@
         except Exception, e:
             self.manager.log(manager.LOG_ERROR, "FATAL ERROR: %s" % (e,), before=2)
             return 0, 1, 0
-        
-    def run_tests( self, label = "" ):
+
+
+    def run_tests(self, label=""):
         ok = 0
         failed = 0
         ignored = 0
         for suite in self.suites:
-            o, f, i = self.run_test_suite( suite, label="%s | %s" % (label, suite.name) )
+            o, f, i = self.run_test_suite(suite, label="%s | %s" % (label, suite.name))
             ok += o
             failed += f
             ignored += i
         return (ok, failed, ignored)
-    
-    def run_test_suite( self, suite, label = "" ):
+
+
+    def run_test_suite(self, suite, label=""):
         descriptor = "    Test Suite: %s" % suite.name
         descriptor += " " * max(1, STATUSTXT_WIDTH - len(descriptor))
         self.manager.log(manager.LOG_HIGH, "%s" % (descriptor,), before=1, after=0)
@@ -150,7 +157,7 @@
                 start_usage = self.manager.getMemusage()
             etags = {}
             for test in suite.tests:
-                result = self.run_test( test, etags, label="%s | %s" % (label, test.name) )
+                result = self.run_test(test, etags, label="%s | %s" % (label, test.name))
                 if result == "t":
                     ok += 1
                 elif result == "f":
@@ -160,13 +167,14 @@
             if self.manager.memUsage:
                 end_usage = self.manager.getMemusage()
                 print start_usage, end_usage
-                self.manager.log(manager.LOG_HIGH, "Mem. Usage: RSS=%s%% VSZ=%s%%" % (str(((end_usage[1] - start_usage[1]) * 100)/start_usage[1]), str(((end_usage[0] - start_usage[0]) * 100)/start_usage[0]))) 
+                self.manager.log(manager.LOG_HIGH, "Mem. Usage: RSS=%s%% VSZ=%s%%" % (str(((end_usage[1] - start_usage[1]) * 100) / start_usage[1]), str(((end_usage[0] - start_usage[0]) * 100) / start_usage[0])))
         self.manager.log(manager.LOG_HIGH, "Suite Results: %d PASSED, %d FAILED, %d IGNORED" % (ok, failed, ignored), before=1, indent=4)
         if postgresCount is not None:
             self.postgresResult(postgresCount, indent=4)
         return (ok, failed, ignored)
-            
-    def run_test( self, test, etags, label = "" ):
+
+
+    def run_test(self, test, etags, label=""):
         descriptor = "        Test: %s" % test.name
         descriptor += " " * max(1, STATUSTXT_WIDTH - len(descriptor))
         self.manager.log(manager.LOG_HIGH, "%s" % (descriptor,), before=1, after=0)
@@ -191,7 +199,7 @@
                 reqstats = None
             for ctr in range(test.count): #@UnusedVariable
                 for req in test.requests:
-                    result, resulttxt, _ignore_response, _ignore_respdata = self.dorequest( req, test.details, True, False, reqstats, etags = etags, label=label, count=ctr+1 )
+                    result, resulttxt, _ignore_response, _ignore_respdata = self.dorequest(req, test.details, True, False, reqstats, etags=etags, label=label, count=ctr + 1)
                     if not result:
                         break
             loglevel = [manager.LOG_ERROR, manager.LOG_HIGH][result]
@@ -200,18 +208,19 @@
                 self.manager.log(loglevel, resulttxt)
             if result and test.stats:
                 self.manager.log(manager.LOG_MEDIUM, "Total Time: %.3f secs" % (reqstats.totaltime,), indent=8)
-                self.manager.log(manager.LOG_MEDIUM, "Average Time: %.3f secs" % (reqstats.totaltime/reqstats.count,), indent=8)
+                self.manager.log(manager.LOG_MEDIUM, "Average Time: %.3f secs" % (reqstats.totaltime / reqstats.count,), indent=8)
             self.postgresResult(postgresCount, indent=8)
             return ["f", "t"][result]
-    
-    def dorequests( self, description, list, doverify = True, forceverify = False, label = "", count = 1 ):
+
+
+    def dorequests(self, description, list, doverify=True, forceverify=False, label="", count=1):
         if len(list) == 0:
             return True
         description += " " * max(1, STATUSTXT_WIDTH - len(description))
         self.manager.log(manager.LOG_HIGH, description, before=1, after=0)
         ctr = 1
         for req in list:
-            result, resulttxt, _ignore_response, _ignore_respdata = self.dorequest( req, False, doverify, forceverify, label=label, count=count )
+            result, resulttxt, _ignore_response, _ignore_respdata = self.dorequest(req, False, doverify, forceverify, label=label, count=count)
             if not result:
                 resulttxt += "\nFailure during multiple requests #%d out of %d, request=%s" % (ctr, len(list), str(req))
                 break
@@ -221,8 +230,9 @@
         if len(resulttxt) > 0:
             self.manager.log(loglevel, resulttxt)
         return result
-    
-    def dofindall( self, collection, label = "" ):
+
+
+    def dofindall(self, collection, label=""):
         hrefs = []
         req = request(self.manager)
         req.method = "PROPFIND"
@@ -242,26 +252,27 @@
 </D:propfind>
 """
         req.data.content_type = "text/xml"
-        result, _ignore_resulttxt, response, respdata = self.dorequest( req, False, False, label=label )
+        result, _ignore_resulttxt, response, respdata = self.dorequest(req, False, False, label=label)
         if result and (response is not None) and (response.status == 207) and (respdata is not None):
             try:
                 tree = ElementTree(file=StringIO(respdata))
             except Exception:
                 return ()
 
-            request_uri = req.getURI( self.manager.server_info )
+            request_uri = req.getURI(self.manager.server_info)
             for response in tree.findall("{DAV:}response"):
-    
+
                 # Get href for this response
                 href = response.findall("{DAV:}href")
                 if len(href) != 1:
                     return False, "           Wrong number of DAV:href elements\n"
                 href = href[0].text
                 if href != request_uri:
-                    hrefs.append((href, collection[1], collection[2]) )
+                    hrefs.append((href, collection[1], collection[2]))
         return hrefs
 
-    def dodeleteall( self, deletes, label = "" ):
+
+    def dodeleteall(self, deletes, label=""):
         if len(deletes) == 0:
             return True
         for deleter in deletes:
@@ -273,9 +284,10 @@
                 req.user = deleter[1]
             if len(deleter[2]):
                 req.pswd = deleter[2]
-            self.dorequest( req, False, False, label=label )
+            self.dorequest(req, False, False, label=label)
 
-    def dofindnew( self, collection, label = "" ):
+
+    def dofindnew(self, collection, label=""):
         hresult = ""
         req = request(self.manager)
         req.method = "PROPFIND"
@@ -296,7 +308,7 @@
 </D:propfind>
 """
         req.data.content_type = "text/xml"
-        result, _ignore_resulttxt, response, respdata = self.dorequest( req, False, False, label="%s | %s" % (label, "FINDNEW") )
+        result, _ignore_resulttxt, response, respdata = self.dorequest(req, False, False, label="%s | %s" % (label, "FINDNEW"))
         if result and (response is not None) and (response.status == 207) and (respdata is not None):
             try:
                 tree = ElementTree(file=StringIO(respdata))
@@ -304,9 +316,9 @@
                 return hresult
 
             latest = 0
-            request_uri = req.getURI( self.manager.server_info )
-            for response in tree.findall("{DAV:}response" ):
-    
+            request_uri = req.getURI(self.manager.server_info)
+            for response in tree.findall("{DAV:}response"):
+
                 # Get href for this response
                 href = response.findall("{DAV:}href")
                 if len(href) != 1:
@@ -326,7 +338,7 @@
                                 status = (statustxt[9] == "2")
                         else:
                             status = False
-                        
+
                         # Get properties for this propstat
                         prop = props.findall("{DAV:}prop")
                         for el in prop:
@@ -344,8 +356,9 @@
 
         return hresult
 
-    def dowaitcount( self, collection, count, label = ""):
-        
+
+    def dowaitcount(self, collection, count, label=""):
+
         for _ignore in range(30):
             req = request(self.manager)
             req.method = "PROPFIND"
@@ -365,14 +378,14 @@
 </D:propfind>
 """
             req.data.content_type = "text/xml"
-            result, _ignore_resulttxt, response, respdata = self.dorequest( req, False, False, label="%s | %s %d" % (label, "WAITCOUNT", count) )
+            result, _ignore_resulttxt, response, respdata = self.dorequest(req, False, False, label="%s | %s %d" % (label, "WAITCOUNT", count))
             ctr = 0
             if result and (response is not None) and (response.status == 207) and (respdata is not None):
                 tree = ElementTree(file=StringIO(respdata))
 
                 for response in tree.findall("{DAV:}response"):
                     ctr += 1
-                
+
                 if ctr - 1 == count:
                     return True
             delay = 1
@@ -382,8 +395,9 @@
         else:
             return False
 
-    def dowaitchanged( self, uri, etag, user, pswd, label = "" ):
-        
+
+    def dowaitchanged(self, uri, etag, user, pswd, label=""):
+
         for _ignore in range(30):
             req = request(self.manager)
             req.method = "HEAD"
@@ -393,7 +407,7 @@
                 req.user = user
             if pswd:
                 req.pswd = pswd
-            result, _ignore_resulttxt, response,  _ignore_respdata = self.dorequest( req, False, False, label="%s | %s" % (label, "WAITCHANGED") )
+            result, _ignore_resulttxt, response, _ignore_respdata = self.dorequest(req, False, False, label="%s | %s" % (label, "WAITCHANGED"))
             if result and (response is not None):
                 if response.status / 100 == 2:
                     hdrs = response.msg.getheaders("Etag")
@@ -412,7 +426,8 @@
 
         return True
 
-    def doenddelete( self, description, label = "" ):
+
+    def doenddelete(self, description, label=""):
         if len(self.end_deletes) == 0:
             return True
         description += " " * max(1, STATUSTXT_WIDTH - len(description))
@@ -426,11 +441,12 @@
                 req.user = deleter[1]
             if len(deleter[2]):
                 req.pswd = deleter[2]
-            self.dorequest( req, False, False, label=label )
+            self.dorequest(req, False, False, label=label)
         self.manager.log(manager.LOG_HIGH, "[DONE]")
-    
-    def dorequest( self, req, details=False, doverify = True, forceverify = False, stats = None, etags = None, label = "", count = 1 ):
-        
+
+
+    def dorequest(self, req, details=False, doverify=True, forceverify=False, stats=None, etags=None, label="", count=1):
+
         req.count = count
 
         if isinstance(req, pause):
@@ -438,7 +454,7 @@
             print "Paused"
             sys.stdin.readline()
             return True, "", None, None
-            
+
         if len(req.missingFeatures()) != 0:
             #self.manager.log(manager.LOG_HIGH, "[IGNORED]")
             #self.manager.log(manager.LOG_HIGH, "      Missing features: %s" % (", ".join(sorted(req.missingFeatures())),))
@@ -455,7 +471,7 @@
                 hrefs = self.dofindall(collection, label="%s | %s" % (label, "DELETEALL"))
                 self.dodeleteall(hrefs, label="%s | %s" % (label, "DELETEALL"))
             return True, "", None, None
-        
+
         # Special for delay
         elif req.method == "DELAY":
             # self.ruri contains a numeric delay in seconds
@@ -471,7 +487,7 @@
             self.grabbedlocation = self.dofindnew(collection, label=label)
             req.method = "GET"
             req.ruri = "$"
-            
+
         # Special check for WAITCOUNT
         elif req.method.startswith("WAITCOUNT"):
             count = int(req.method[10:])
@@ -491,24 +507,24 @@
             sys.stdin.readline()
             return True, "", None, None
 
-        result = True;
+        result = True
         resulttxt = ""
         response = None
         respdata = None
 
         method = req.method
-        uri = req.getURI( self.manager.server_info )
+        uri = req.getURI(self.manager.server_info)
         if (uri == "$"):
             uri = self.grabbedlocation
-        headers = req.getHeaders( self.manager.server_info )
+        headers = req.getHeaders(self.manager.server_info)
         data = req.getData()
-        
+
         # Cache delayed delete
         if req.end_delete:
-            self.end_deletes.append( (uri, req.user, req.pswd) )
+            self.end_deletes.append((uri, req.user, req.pswd))
 
         if details:
-            resulttxt += "        %s: %s\n" % ( method, uri )
+            resulttxt += "        %s: %s\n" % (method, uri)
 
         # Special for GETCHANGED
         if req.method == "GETCHANGED":
@@ -522,48 +538,48 @@
             stats.startTimer()
 
         # Do the http request
-        http = SmartHTTPConnection( self.manager.server_info.host, self.manager.server_info.port, self.manager.server_info.ssl )
+        http = SmartHTTPConnection(self.manager.server_info.host, self.manager.server_info.port, self.manager.server_info.ssl)
 
-        if not headers.has_key('User-Agent') and label is not None:
+        if not 'User-Agent' in headers and label is not None:
             headers['User-Agent'] = label.encode("utf-8")
 
         try:
             #self.manager.log(manager.LOG_LOW, "Sending request")
-            http.request( method, uri, data, headers )
+            http.request(method, uri, data, headers)
             #self.manager.log(manager.LOG_LOW, "Sent request")
-        
+
             response = http.getresponse()
-        
+
             respdata = None
             respdata = response.read()
             #self.manager.log(manager.LOG_LOW, "Read response")
 
         finally:
             http.close()
-        
+
             # Stop request timer before verification
             if stats:
                 stats.endTimer()
 
         if doverify and (respdata != None):
-            result, txt = self.verifyrequest( req, uri, response, respdata )
+            result, txt = self.verifyrequest(req, uri, response, respdata)
             resulttxt += txt
         elif forceverify:
             result = (response.status / 100 == 2)
             if not result:
                 resulttxt += "Status Code Error: %d" % response.status
-        
+
         if req.print_request or (self.manager.print_request_response_on_error and not result):
             resulttxt += "\n-------BEGIN:REQUEST-------\n"
             resulttxt += http.requestData
             resulttxt += "\n--------END:REQUEST--------\n"
-        
+
         if req.print_response or (self.manager.print_request_response_on_error and not result):
             resulttxt += "\n-------BEGIN:RESPONSE-------\n"
             resulttxt += "%s %s %s\n" % (getVersionStringFromResponse(response), response.status, response.reason,)
             resulttxt += str(response.msg) + "\n" + respdata
             resulttxt += "\n--------END:RESPONSE--------\n"
-        
+
         if etags is not None and req.method == "GET":
             hdrs = response.msg.getheaders("Etag")
             if hdrs:
@@ -571,7 +587,7 @@
 
         if req.graburi:
             self.manager.server_info.addextrasubs({req.graburi: self.grabbedlocation})
-            
+
         if req.grabheader:
             for hdrname, variable in req.grabheader:
                 hdrs = response.msg.getheaders(hdrname)
@@ -608,11 +624,12 @@
 
         return result, resulttxt, response, respdata
 
-    def verifyrequest( self, req, uri, response, respdata ):
-        
-        result = True;
+
+    def verifyrequest(self, req, uri, response, respdata):
+
+        result = True
         resulttxt = ""
-        
+
         # check for response
         if len(req.verifiers) == 0:
             return result, resulttxt
@@ -640,7 +657,8 @@
                 resulttxt = ""
             return result, resulttxt
 
-    def parseXML( self, node ):
+
+    def parseXML(self, node):
         self.ignore_all = node.get(src.xmlDefs.ATTR_IGNORE_ALL, src.xmlDefs.ATTR_VALUE_NO) == src.xmlDefs.ATTR_VALUE_YES
 
         for child in node.getchildren():
@@ -658,19 +676,21 @@
                 self.suites.append(suite)
             elif child.tag == src.xmlDefs.ELEMENT_END:
                 self.end_requests = request.parseList(self.manager, child)
-    
+
+
     def parseFeatures(self, node, require=True):
         for child in node.getchildren():
             if child.tag == src.xmlDefs.ELEMENT_FEATURE:
                 (self.require_features if require else self.exclude_features).add(child.text.encode("utf-8"))
 
+
     def extractProperty(self, propertyname, respdata):
 
         try:
             tree = ElementTree(file=StringIO(respdata))
         except Exception:
             return None
-                
+
         for response in tree.findall("{DAV:}response"):
             # Get all property status
             propstatus = response.findall("{DAV:}propstat")
@@ -684,7 +704,7 @@
                         status = (statustxt[9] == "2")
                 else:
                     status = False
-                
+
                 if not status:
                     continue
 
@@ -704,13 +724,13 @@
                             value += temp
                     else:
                         value = child.text
-                    
+
                     if fqname == propertyname:
                         return value
 
         return None
-    
 
+
     def extractElement(self, elementpath, respdata):
 
         try:
@@ -718,7 +738,7 @@
             tree.parse(StringIO(respdata))
         except:
             return None
-        
+
         # Strip off the top-level item
         if elementpath[0] == '/':
             elementpath = elementpath[1:]
@@ -730,13 +750,14 @@
                 return tree.getroot().text
             else:
                 elementpath = splits[1]
-                
+
         e = tree.find(elementpath)
         if e is not None:
             return e.text
         else:
             return None
 
+
     def extractElements(self, elementpath, respdata):
 
         try:
@@ -744,7 +765,7 @@
             tree.parse(StringIO(respdata))
         except:
             return None
-        
+
         # Strip off the top-level item
         if elementpath[0] == '/':
             elementpath = elementpath[1:]
@@ -756,13 +777,14 @@
                 return tree.getroot().text
             else:
                 elementpath = splits[1]
-                
+
         e = tree.findall(elementpath)
         if e is not None:
             return [item.text for item in e]
         else:
             return None
 
+
     def postgresInit(self):
         """
         Initialize postgres statement counter
@@ -772,9 +794,10 @@
                 return int(commands.getoutput("grep \"LOG:  statement:\" %s | wc -l" % (self.manager.postgresLog,)))
 
         return 0
-        
+
+
     def postgresResult(self, startCount, indent):
-        
+
         if self.manager.postgresLog:
             if os.path.exists(self.manager.postgresLog):
                 newCount = int(commands.getoutput("grep \"LOG:  statement:\" %s | wc -l" % (self.manager.postgresLog,)))

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/src/httpshandler.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/src/httpshandler.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/src/httpshandler.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -26,10 +26,10 @@
 if _haveSSL:
     class HTTPSConnection_SSLv3(httplib.HTTPSConnection):
         "This class allows communication via SSL."
-    
+
         def connect(self):
             "Connect to a host on a given (SSL) port."
-    
+
             sock = socket.create_connection((self.host, self.port), self.timeout)
             self.sock = sslmodule.wrap_socket(sock, self.key_file, self.cert_file, ssl_version=sslmodule.PROTOCOL_SSLv3)
 else:
@@ -39,12 +39,12 @@
 https_v3_connects = set()
 
 def SmartHTTPConnection(host, port, ssl):
-    
-    def trySSL(cls, ):
+
+    def trySSL(cls,):
         connect = cls(host, port)
         connect.connect()
         return connect
-        
+
     if ssl:
         if (host, port) in https_v3_connects:
             try:
@@ -56,22 +56,21 @@
                 return trySSL(httplib.HTTPSConnection)
             except:
                 https_v23_connects.remove((host, port))
-        
+
         try:
             https_v3_connects.add((host, port))
             return trySSL(HTTPSConnection_SSLv3)
         except:
             https_v3_connects.remove((host, port))
-            
+
         try:
             https_v23_connects.add((host, port))
             return trySSL(httplib.HTTPSConnection)
         except:
             https_v23_connects.remove((host, port))
-        
+
         raise RuntimeError("Cannot connect via with SSLv23 or SSLv3")
     else:
         connect = httplib.HTTPConnection(host, port)
         connect.connect()
         return connect
-

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/src/manager.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/src/manager.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/src/manager.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -40,13 +40,13 @@
     Main class that runs test suites defined in an XML config file.
     """
 
-    LOG_NONE    = 0
-    LOG_ERROR   = 1
-    LOG_LOW     = 2
-    LOG_MEDIUM  = 3
-    LOG_HIGH    = 4
+    LOG_NONE = 0
+    LOG_ERROR = 1
+    LOG_LOW = 2
+    LOG_MEDIUM = 3
+    LOG_HIGH = 4
 
-    def __init__( self, text=True, level=LOG_HIGH, log_file=None ):
+    def __init__(self, text=True, level=LOG_HIGH, log_file=None):
         self.server_info = serverinfo()
         self.tests = []
         self.textMode = text
@@ -59,8 +59,9 @@
         self.print_request = False
         self.print_response = False
         self.print_request_response_on_error = False
-    
-    def log(self, level, str, indent = 0, indentStr = " ", after = 1, before = 0):
+
+
+    def log(self, level, str, indent=0, indentStr=" ", after=1, before=0):
         if self.textMode and level <= self.logLevel:
             if before:
                 self.logit("\n" * before)
@@ -70,16 +71,18 @@
             if after:
                 self.logit("\n" * after)
 
+
     def logit(self, str):
         if self.logFile:
             self.logFile.write(str)
         else:
             print str,
 
-    def readXML( self, serverfile, testfiles, ssl, all, moresubs = {} ):
 
+    def readXML(self, serverfile, testfiles, ssl, all, moresubs={}):
+
         self.log(manager.LOG_HIGH, "Reading Server Info from \"%s\"" % serverfile, after=2)
-    
+
         # Open and parse the server config file
         try:
             tree = ElementTree(file=serverfile)
@@ -93,7 +96,7 @@
         if not len(serverinfo_node):
             raise EX_INVALID_CONFIG_FILE
         self.server_info.parseXML(serverinfo_node)
-        
+
         # Setup ssl stuff
         self.server_info.ssl = ssl
         self.server_info.port = self.server_info.sslport if ssl else self.server_info.nonsslport
@@ -104,14 +107,14 @@
         )
         moresubs["$hostssl:"] = "https://%s:%d" % (self.server_info.host, self.server_info.sslport,)
         self.server_info.addsubs(moresubs)
-        
+
         for testfile in testfiles:
             # Open and parse the config file
             try:
                 tree = ElementTree(file=testfile)
             except ExpatError, e:
                 raise RuntimeError("Unable to parse file '%s' because: %s" % (testfile, e,))
-            
+
             # Verify that top-level element is correct
             from src.caldavtest import caldavtest
             caldavtest_node = tree.getroot()
@@ -121,15 +124,16 @@
             if not len(caldavtest_node):
                 raise EX_INVALID_CONFIG_FILE
             self.log(manager.LOG_HIGH, "Reading Test Details from \"%s\"" % testfile, after=2)
-                
+
             # parse all the config data
             test = caldavtest(self, testfile)
             test.parseXML(caldavtest_node)
-            
+
             # ignore if all mode and ignore-all is set
             if not all or not test.ignore_all:
                 self.tests.append(test)
 
+
     def readCommandLine(self):
         sname = "scripts/server/serverinfo.xml"
         dname = "scripts/tests"
@@ -158,7 +162,7 @@
                 "always-print-response",
             ],
         )
-        
+
         # Process single options
         for option, value in options:
             if option == "-s":
@@ -189,13 +193,13 @@
                 random_order = True
             elif option == "--random-seed":
                 random_seed = value
-                
+
         if all:
             files = []
-            os.path.walk(dname, lambda arg,dir,names:files.extend([os.path.join(dir, name) for name in names]), None)
+            os.path.walk(dname, lambda arg, dir, names: files.extend([os.path.join(dir, name) for name in names]), None)
             for file in files:
-                if file.endswith(".xml") and file[len(dname)+1:] not in excludes:
-                    if subdir is None or file[len(dname)+1:].startswith(subdir):
+                if file.endswith(".xml") and file[len(dname) + 1:] not in excludes:
+                    if subdir is None or file[len(dname) + 1:].startswith(subdir):
                         fnames.append(file)
 
         # Remove any server info file from files enumerated by --all
@@ -206,7 +210,7 @@
             if f[0] != '/':
                 f = os.path.join(dname, f)
             fnames.append(f)
-        
+
         # Randomize file list
         if random_order:
             print "Randomizing order using seed '%s'" % (random_seed,)
@@ -214,14 +218,15 @@
             random.shuffle(fnames)
 
         self.readXML(sname, fnames, ssl, all)
-            
+
         if self.memUsage:
             fd = open(pidfile, "r")
             s = fd.read()
             self.pid = int(s)
 
+
     def runAll(self):
-        
+
         startTime = time.time()
         ok = 0
         failed = 0
@@ -240,37 +245,38 @@
         endTime = time.time()
 
         self.log(manager.LOG_LOW, "Overall Results: %d PASSED, %d FAILED, %d IGNORED" % (ok, failed, ignored), before=2, indent=4)
-        self.log(manager.LOG_LOW, "Total time: %.3f secs" % (endTime- startTime,))
+        self.log(manager.LOG_LOW, "Total time: %.3f secs" % (endTime - startTime,))
 
         return failed, endTime - startTime
 
+
     def httpRequest(self, method, uri, headers, data):
 
         # Do the http request
-        http = httplib.HTTPConnection( self.server_info.host, self.server_info.port )
+        http = httplib.HTTPConnection(self.server_info.host, self.server_info.port)
         try:
-            http.request( method, uri, data, headers )
-        
+            http.request(method, uri, data, headers)
+
             response = http.getresponse()
-        
+
             respdata = response.read()
 
         finally:
             http.close()
-        
+
         return response.status, respdata
-        
+
+
     def getMemusage(self):
         """
-        
+
         @param pid: numeric pid of process to get memory usage for
         @type pid:  int
         @retrun:    tuple of (RSS, VSZ) values for the process
         """
-        
+
         fd = os.popen("ps -l -p %d" % (self.pid,))
         data = fd.read()
         lines = data.split("\n")
         procdata = lines[1].split()
         return int(procdata[6]), int(procdata[7])
-

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/src/request.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/src/request.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/src/request.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -87,6 +87,8 @@
 
     return HA1.encode('hex')
 
+
+
 # DigestCalcResponse
 def calcResponse(
     HA1,
@@ -124,16 +126,20 @@
     respHash = m.digest().encode('hex')
     return respHash
 
-class pause ( object ):
+
+
+class pause (object):
     pass
 
-class request( object ):
+
+
+class request(object):
     """
     Represents the HTTP request to be executed, and verifcation information to
     be used to determine a satisfactory output or not.
     """
-    
-    def __init__( self, manager ):
+
+    def __init__(self, manager):
         self.manager = manager
         self.auth = True
         self.user = ""
@@ -154,65 +160,72 @@
         self.grabheader = []
         self.grabproperty = []
         self.grabelement = []
-    
+
+
     def __str__(self):
         return "Method: %s; uris: %s" % (self.method, self.ruris if len(self.ruris) > 1 else self.ruri,)
 
+
     def missingFeatures(self):
         return self.require_features - self.manager.server_info.features
 
+
     def excludedFeatures(self):
         return self.exclude_features & self.manager.server_info.features
 
-    def getURI( self, si ):
+
+    def getURI(self, si):
         uri = si.extrasubs(self.ruri)
         if "**" in uri:
             uri = uri.replace("**", str(uuid.uuid4()))
         elif "##" in uri:
             uri = uri.replace("##", str(self.count))
         return uri
-        
-    def getHeaders( self, si ):
+
+
+    def getHeaders(self, si):
         hdrs = self.headers
         for key, value in hdrs.items():
             hdrs[key] = si.extrasubs(value)
-        
+
         # Content type
         if self.data != None:
             hdrs["Content-Type"] = self.data.content_type
-        
+
         # Auth
         if self.auth:
             if si.authtype.lower() == "digest":
-                hdrs["Authorization"] = self.gethttpdigestauth( si )
+                hdrs["Authorization"] = self.gethttpdigestauth(si)
             else:
-                hdrs["Authorization"] = self.gethttpbasicauth( si )
-        
+                hdrs["Authorization"] = self.gethttpbasicauth(si)
+
         return hdrs
 
-    def gethttpbasicauth( self, si ):
+
+    def gethttpbasicauth(self, si):
         basicauth = [self.user, si.user][self.user == ""]
         basicauth += ":"
         basicauth += [self.pswd, si.pswd][self.pswd == ""]
-        basicauth = "Basic " + base64.encodestring( basicauth )
-        basicauth = basicauth.replace( "\n", "" )
+        basicauth = "Basic " + base64.encodestring(basicauth)
+        basicauth = basicauth.replace("\n", "")
         return basicauth
 
-    def gethttpdigestauth( self, si, wwwauthorize=None ):
-        
+
+    def gethttpdigestauth(self, si, wwwauthorize=None):
+
         # Check the nonce cache to see if we've used this user before
         user = [self.user, si.user][self.user == ""]
         pswd = [self.pswd, si.pswd][self.pswd == ""]
         details = None
-        if self.manager.digestCache.has_key(user):
+        if user in self.manager.digestCache:
             details = self.manager.digestCache[user]
         else:
-            http = SmartHTTPConnection( si.host, si.port, si.ssl )
+            http = SmartHTTPConnection(si.host, si.port, si.ssl)
             try:
-                http.request( "OPTIONS", self.getURI(si) )
-            
+                http.request("OPTIONS", self.getURI(si))
+
                 response = http.getresponse()
-    
+
             finally:
                 http.close()
 
@@ -228,12 +241,12 @@
                             return s[1:-1]
                         return s
                     parts = wwwauthorize.split(',')
-            
+
                     details = {}
-        
+
                     for (k, v) in [p.split('=', 1) for p in parts]:
                         details[k.strip()] = unq(v.strip())
-                        
+
                     self.manager.digestCache[user] = details
                     break
 
@@ -242,34 +255,36 @@
                 calcHA1(details.get('algorithm'), user, details.get('realm'), pswd, details.get('nonce'), details.get('cnonce')),
                 details.get('algorithm'), details.get('nonce'), details.get('nc'), details.get('cnonce'), details.get('qop'), self.method, self.getURI(si), None
             )
-    
+
             if details.get('qop'):
                 response = ('Digest username="%s", realm="%s", '
                         'nonce="%s", uri="%s", '
-                        'response=%s, algorithm=%s, cnonce="%s", qop=%s, nc=%s' % (user, details.get('realm'), details.get('nonce'), self.getURI(si), digest, details.get('algorithm'), details.get('cnonce'), details.get('qop'), details.get('nc'), ))
+                        'response=%s, algorithm=%s, cnonce="%s", qop=%s, nc=%s' % (user, details.get('realm'), details.get('nonce'), self.getURI(si), digest, details.get('algorithm'), details.get('cnonce'), details.get('qop'), details.get('nc'),))
             else:
                 response = ('Digest username="%s", realm="%s", '
                         'nonce="%s", uri="%s", '
-                        'response=%s, algorithm=%s' % (user, details.get('realm'), details.get('nonce'), self.getURI(si), digest, details.get('algorithm'), ))
-    
+                        'response=%s, algorithm=%s' % (user, details.get('realm'), details.get('nonce'), self.getURI(si), digest, details.get('algorithm'),))
+
             return response
         else:
             return ""
 
-    def getFilePath( self ):
+
+    def getFilePath(self):
         if self.data != None:
             return self.data.filepath
         else:
             return ""
 
-    def getData( self ):
+
+    def getData(self):
         data = ""
         if self.data != None:
             if len(self.data.value) != 0:
                 data = self.data.value
             else:
                 # read in the file data
-                fd = open( self.data.filepath, "r" )
+                fd = open(self.data.filepath, "r")
                 try:
                     data = fd.read()
                 finally:
@@ -280,25 +295,27 @@
                 if self.data.content_type.startswith("text/calendar"):
                     data = self.generateCalendarData(data)
         return data
-    
-    def generateCalendarData( self, data ):
+
+
+    def generateCalendarData(self, data):
         """
         FIXME: does not work for events with recurrence overrides.
         """
-        
+
         # Change the following iCalendar data values:
         # DTSTART, DTEND, RECURRENCE-ID, UID
-        
+
         data = re.sub("UID:.*", "UID:%s" % (uuid.uuid4(),), data)
         data = re.sub("SUMMARY:(.*)", "SUMMARY:\\1 #%s" % (self.count,), data)
-        
+
         now = datetime.date.today()
         data = re.sub("(DTSTART;[^:]*):[0-9]{8,8}", "\\1:%04d%02d%02d" % (now.year, now.month, now.day,), data)
         data = re.sub("(DTEND;[^:]*):[0-9]{8,8}", "\\1:%04d%02d%02d" % (now.year, now.month, now.day,), data)
 
         return data
 
-    def parseXML( self, node ):
+
+    def parseXML(self, node):
         self.auth = node.get(src.xmlDefs.ATTR_AUTH, src.xmlDefs.ATTR_VALUE_YES) == src.xmlDefs.ATTR_VALUE_YES
         self.user = self.manager.server_info.subs(node.get(src.xmlDefs.ATTR_USER, "").encode("utf-8"))
         self.pswd = self.manager.server_info.subs(node.get(src.xmlDefs.ATTR_PSWD, "").encode("utf-8"))
@@ -308,9 +325,9 @@
 
         for child in node.getchildren():
             if child.tag == src.xmlDefs.ELEMENT_REQUIRE_FEATURE:
-                self.parseFeatures( child, require=True )
+                self.parseFeatures(child, require=True)
             elif child.tag == src.xmlDefs.ELEMENT_EXCLUDE_FEATURE:
-                self.parseFeatures( child, require=False )
+                self.parseFeatures(child, require=False)
             elif child.tag == src.xmlDefs.ELEMENT_METHOD:
                 self.method = child.text.encode("utf-8")
             elif child.tag == src.xmlDefs.ELEMENT_HEADER:
@@ -321,10 +338,10 @@
                     self.ruri = self.ruris[0]
             elif child.tag == src.xmlDefs.ELEMENT_DATA:
                 self.data = data()
-                self.data.parseXML( child )
+                self.data.parseXML(child)
             elif child.tag == src.xmlDefs.ELEMENT_VERIFY:
                 self.verifiers.append(verify(self.manager))
-                self.verifiers[-1].parseXML( child )
+                self.verifiers[-1].parseXML(child)
             elif child.tag == src.xmlDefs.ELEMENT_GRABURI:
                 self.graburi = child.text.encode("utf-8")
             elif child.tag == src.xmlDefs.ELEMENT_GRABHEADER:
@@ -334,13 +351,15 @@
             elif child.tag == src.xmlDefs.ELEMENT_GRABELEMENT:
                 self.parseMultiGrab(child, self.grabelement)
 
+
     def parseFeatures(self, node, require=True):
         for child in node.getchildren():
             if child.tag == src.xmlDefs.ELEMENT_FEATURE:
                 (self.require_features if require else self.exclude_features).add(child.text.encode("utf-8"))
 
+
     def parseHeader(self, node):
-        
+
         name = None
         value = None
         for child in node.getchildren():
@@ -348,25 +367,26 @@
                 name = child.text.encode("utf-8")
             elif child.tag == src.xmlDefs.ELEMENT_VALUE:
                 value = self.manager.server_info.subs(child.text.encode("utf-8"))
-        
+
         if (name is not None) and (value is not None):
             self.headers[name] = value
-            
-    def parseList( manager, node ):
+
+
+    def parseList(manager, node):
         requests = []
         for child in node.getchildren():
             if child.tag == src.xmlDefs.ELEMENT_REQUEST:
                 req = request(manager)
-                req.parseXML( child )
-                requests.append( req )
+                req.parseXML(child)
+                requests.append(req)
             elif child.tag == src.xmlDefs.ELEMENT_PAUSE:
                 requests.append(pause())
         return requests
-                
-    parseList = staticmethod( parseList )
 
+    parseList = staticmethod(parseList)
+
     def parseGrab(self, node, appendto):
-        
+
         name = None
         variable = None
         for child in node.getchildren():
@@ -374,12 +394,13 @@
                 name = child.text.encode("utf-8")
             elif child.tag == src.xmlDefs.ELEMENT_VARIABLE:
                 variable = self.manager.server_info.subs(child.text.encode("utf-8"))
-        
+
         if (name is not None) and (variable is not None):
             appendto.append((name, variable))
 
+
     def parseMultiGrab(self, node, appendto):
-        
+
         name = None
         variable = None
         for child in node.getchildren():
@@ -389,24 +410,27 @@
                 if variable is None:
                     variable = []
                 variable.append(self.manager.server_info.subs(child.text.encode("utf-8")))
-        
+
         if (name is not None) and (variable is not None):
             appendto.append((name, variable))
-    
-class data( object ):
+
+
+
+class data(object):
     """
     Represents the data/body portion of an HTTP request.
     """
 
-    def __init__( self ):
+    def __init__(self):
         self.content_type = ""
         self.filepath = ""
         self.value = ""
         self.substitute = False
         self.generate = False
-    
-    def parseXML( self, node ):
 
+
+    def parseXML(self, node):
+
         self.substitute = node.get(src.xmlDefs.ATTR_SUBSTITUTIONS, src.xmlDefs.ATTR_VALUE_YES) == src.xmlDefs.ATTR_VALUE_YES
         self.generate = node.get(src.xmlDefs.ATTR_GENERATE, src.xmlDefs.ATTR_VALUE_NO) == src.xmlDefs.ATTR_VALUE_YES
 
@@ -416,63 +440,72 @@
             elif child.tag == src.xmlDefs.ELEMENT_FILEPATH:
                 self.filepath = child.text.encode("utf-8")
 
-class verify( object ):
+
+
+class verify(object):
     """
     Defines how the result of a request should be verified. This is done
     by passing the response and response data to a callback with a set of arguments
     specified in the test XML config file. The callback name is in the XML config
     file also and is dynamically loaded to do the verification.
     """
-    
-    def __init__( self, manager ):
+
+    def __init__(self, manager):
         self.manager = manager
         self.require_features = set()
         self.exclude_features = set()
         self.callback = None
         self.args = {}
-    
+
+
     def missingFeatures(self):
         return self.require_features - self.manager.server_info.features
 
+
     def excludedFeatures(self):
         return self.exclude_features & self.manager.server_info.features
 
+
     def doVerify(self, uri, response, respdata):
-        
+
         # Re-do substitutions from values generated during the current test run
         if self.manager.server_info.hasextrasubs():
             for name, values in self.args.iteritems():
                 newvalues = [self.manager.server_info.extrasubs(value) for value in values]
                 self.args[name] = newvalues
-                
+
         verifierClass = self._importName("verifiers." + self.callback, "Verifier")
         verifier = verifierClass()
         return verifier.verify(self.manager, uri, response, respdata, self.args)
 
+
     def _importName(self, modulename, name):
         """
         Import a named object from a module in the context of this function.
         """
-        module = __import__(modulename, globals( ), locals( ), [name])
+        module = __import__(modulename, globals(), locals(), [name])
         return getattr(module, name)
 
-    def parseXML( self, node ):
 
+    def parseXML(self, node):
+
         for child in node.getchildren():
             if child.tag == src.xmlDefs.ELEMENT_REQUIRE_FEATURE:
-                self.parseFeatures( child, require=True )
+                self.parseFeatures(child, require=True)
             elif child.tag == src.xmlDefs.ELEMENT_EXCLUDE_FEATURE:
-                self.parseFeatures( child, require=False )
+                self.parseFeatures(child, require=False)
             elif child.tag == src.xmlDefs.ELEMENT_CALLBACK:
                 self.callback = child.text.encode("utf-8")
             elif child.tag == src.xmlDefs.ELEMENT_ARG:
                 self.parseArgXML(child)
 
+
     def parseFeatures(self, node, require=True):
         for child in node.getchildren():
             if child.tag == src.xmlDefs.ELEMENT_FEATURE:
                 (self.require_features if require else self.exclude_features).add(child.text.encode("utf-8"))
 
+
     def parseArgXML(self, node):
         name = None
         values = []
@@ -487,19 +520,23 @@
         if name and len(values):
             self.args[name] = values
 
-class stats( object ):
+
+
+class stats(object):
     """
     Maintains stats about the current test.
     """
-    
+
     def __init__(self):
         self.count = 0
         self.totaltime = 0.0
         self.currenttime = 0.0
-        
+
+
     def startTimer(self):
         self.currenttime = time.time()
-        
+
+
     def endTimer(self):
         self.count += 1
         self.totaltime += time.time() - self.currenttime

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/src/serverinfo.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/src/serverinfo.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/src/serverinfo.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -21,12 +21,12 @@
 import datetime
 import src.xmlDefs
 
-class serverinfo( object ):
+class serverinfo(object):
     """
     Maintains information about the server being targetted.
     """
 
-    def __init__( self ):
+    def __init__(self):
         self.host = ""
         self.nonsslport = 80
         self.sslport = 443
@@ -36,7 +36,7 @@
         self.pswd = ""
         self.subsdict = {}
         self.extrasubsdict = {}
-        
+
         # Insert a bunch of date values
         dtnow = datetime.date.today()
         for dayoffset in xrange(-21, 21):
@@ -49,6 +49,7 @@
             value = "%d" % (dtnow.year + yearoffset,)
             self.subsdict[key] = value
 
+
     def subs(self, str, db=None):
         if db is None:
             db = self.subsdict
@@ -64,6 +65,7 @@
             count += 1
         return str
 
+
     def addsubs(self, items, db=None):
         if db is None:
             db_actual = self.subsdict
@@ -71,20 +73,24 @@
             db_actual = db
         for key, value in items.iteritems():
             db_actual[key] = value
-   
+
         if db is None:
             self.updateParams()
-    
+
+
     def hasextrasubs(self):
         return len(self.extrasubsdict) > 0
 
+
     def extrasubs(self, str):
         return self.subs(str, self.extrasubsdict)
 
+
     def addextrasubs(self, items):
         self.addsubs(items, self.extrasubsdict)
-        
-    def parseXML( self, node ):
+
+
+    def parseXML(self, node):
         for child in node.getchildren():
             if child.tag == src.xmlDefs.ELEMENT_HOST:
                 try:
@@ -92,32 +98,35 @@
                 except:
                     self.host = "localhost"
             elif child.tag == src.xmlDefs.ELEMENT_NONSSLPORT:
-                self.nonsslport = int( child.text )
+                self.nonsslport = int(child.text)
             elif child.tag == src.xmlDefs.ELEMENT_SSLPORT:
-                self.sslport = int( child.text )
+                self.sslport = int(child.text)
             elif child.tag == src.xmlDefs.ELEMENT_AUTHTYPE:
                 self.authtype = child.text.encode("utf-8")
             elif child.tag == src.xmlDefs.ELEMENT_FEATURES:
                 self.parseFeatures(child)
             elif child.tag == src.xmlDefs.ELEMENT_SUBSTITUTIONS:
                 self.parseSubstitutionsXML(child)
-   
+
         self.updateParams()
 
+
     def parseFeatures(self, node):
         for child in node.getchildren():
             if child.tag == src.xmlDefs.ELEMENT_FEATURE:
                 self.features.add(child.text.encode("utf-8"))
 
-    def updateParams(self):         
+
+    def updateParams(self):
         # Now cache some useful substitutions
         if "$userid1:" not in self.subsdict:
-            raise ValueError, "Must have $userid1: substitution"
+            raise ValueError("Must have $userid1: substitution")
         self.user = self.subsdict["$userid1:"]
         if "$pswd1:" not in self.subsdict:
-            raise ValueError, "Must have $pswd1: substitution"
+            raise ValueError("Must have $pswd1: substitution")
         self.pswd = self.subsdict["$pswd1:"]
 
+
     def parseRepeatXML(self, node):
         # Look for count
         count = node.get(src.xmlDefs.ATTR_COUNT)
@@ -125,6 +134,7 @@
         for child in node.getchildren():
             self.parseSubstitutionXML(child, count)
 
+
     def parseSubstitutionsXML(self, node):
         for child in node.getchildren():
             if child.tag == src.xmlDefs.ELEMENT_SUBSTITUTION:
@@ -132,6 +142,7 @@
             elif child.tag == src.xmlDefs.ELEMENT_REPEAT:
                 self.parseRepeatXML(child)
 
+
     def parseSubstitutionXML(self, node, repeat=None):
         if node.tag == src.xmlDefs.ELEMENT_SUBSTITUTION:
             key = None

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/src/test.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/src/test.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/src/test.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -22,14 +22,14 @@
 from src.xmlUtils import getYesNoAttributeValue
 import src.xmlDefs
 
-class test( object ):
+class test(object):
     """
     A single test which can be comprised of multiple requests. The test can
     be run more than once, and timing information gathered and averaged across
     all runs.
     """
-    
-    def __init__( self, manager ):
+
+    def __init__(self, manager):
         self.manager = manager
         self.name = ""
         self.details = False
@@ -40,14 +40,17 @@
         self.exclude_features = set()
         self.description = ""
         self.requests = []
-    
+
+
     def missingFeatures(self):
         return self.require_features - self.manager.server_info.features
 
+
     def excludedFeatures(self):
         return self.exclude_features & self.manager.server_info.features
 
-    def parseXML( self, node ):
+
+    def parseXML(self, node):
         self.name = node.get(src.xmlDefs.ATTR_NAME, "")
         self.details = getYesNoAttributeValue(node, src.xmlDefs.ATTR_DETAILS)
         self.count = int(node.get(src.xmlDefs.ATTR_COUNT, 1))
@@ -56,21 +59,23 @@
 
         for child in node.getchildren():
             if child.tag == src.xmlDefs.ELEMENT_REQUIRE_FEATURE:
-                self.parseFeatures( child, require=True )
+                self.parseFeatures(child, require=True)
             elif child.tag == src.xmlDefs.ELEMENT_EXCLUDE_FEATURE:
-                self.parseFeatures( child, require=False )
+                self.parseFeatures(child, require=False)
             elif child.tag == src.xmlDefs.ELEMENT_DESCRIPTION:
                 self.description = child.text
 
         # get request
-        self.requests = request.parseList( self.manager, node )
+        self.requests = request.parseList(self.manager, node)
 
+
     def parseFeatures(self, node, require=True):
         for child in node.getchildren():
             if child.tag == src.xmlDefs.ELEMENT_FEATURE:
                 (self.require_features if require else self.exclude_features).add(child.text.encode("utf-8"))
 
-    def dump( self ):
+
+    def dump(self):
         print "\nTEST: %s" % self.name
         print "    description: %s" % self.description
         for req in self.requests:

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/src/testsuite.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/src/testsuite.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/src/testsuite.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -22,45 +22,50 @@
 from src.xmlUtils import getYesNoAttributeValue
 import src.xmlDefs
 
-class testsuite( object ):
+class testsuite(object):
     """
     Maintains a list of tests to run as part of a 'suite'.
     """
-    
-    def __init__( self, manager ):
+
+    def __init__(self, manager):
         self.manager = manager
         self.name = ""
         self.ignore = False
         self.require_features = set()
         self.exclude_features = set()
         self.tests = []
-    
+
+
     def missingFeatures(self):
         return self.require_features - self.manager.server_info.features
 
+
     def excludedFeatures(self):
         return self.exclude_features & self.manager.server_info.features
 
-    def parseXML( self, node ):
+
+    def parseXML(self, node):
         self.name = node.get(src.xmlDefs.ATTR_NAME, "")
         self.ignore = getYesNoAttributeValue(node, src.xmlDefs.ATTR_IGNORE)
 
         for child in node.getchildren():
             if child.tag == src.xmlDefs.ELEMENT_REQUIRE_FEATURE:
-                self.parseFeatures( child, require=True )
+                self.parseFeatures(child, require=True)
             elif child.tag == src.xmlDefs.ELEMENT_EXCLUDE_FEATURE:
-                self.parseFeatures( child, require=False )
+                self.parseFeatures(child, require=False)
             elif child.tag == src.xmlDefs.ELEMENT_TEST:
                 t = test(self.manager)
-                t.parseXML( child )
-                self.tests.append( t )
+                t.parseXML(child)
+                self.tests.append(t)
 
+
     def parseFeatures(self, node, require=True):
         for child in node.getchildren():
             if child.tag == src.xmlDefs.ELEMENT_FEATURE:
                 (self.require_features if require else self.exclude_features).add(child.text.encode("utf-8"))
 
-    def dump( self ):
+
+    def dump(self):
         print "\nTest Suite:"
         print "    name: %s" % self.name
         for iter in self.tests:

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/src/xmlUtils.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/src/xmlUtils.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/src/xmlUtils.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -21,16 +21,20 @@
 import src.xmlDefs
 
 def readStringElementList(node, ename):
-    
+
     results = []
     for child in node.getchildren():
         if child.tag == ename:
             results.append(child.text.decode("utf-8"))
     return results
 
+
+
 def getYesNoAttributeValue(node, attr):
     return node.get(attr, src.xmlDefs.ATTR_VALUE_NO) == src.xmlDefs.ATTR_VALUE_YES
 
+
+
 def getDefaultAttributeValue(node, attr, default):
     result = node.getAttribute(attr)
     if result:
@@ -38,8 +42,10 @@
     else:
         return default
 
+
+
 def readOneStringElement(node, ename):
-    
+
     for child in node.getchildren():
         if child.tag == ename:
             return child.text.decode("utf-8")

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/testcaldav.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/testcaldav.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/testcaldav.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -23,7 +23,7 @@
 import sys
 
 if __name__ == "__main__":
-    
+
     manager = manager()
     manager.readCommandLine()
     result, timing = manager.runAll()

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/aclItems.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/aclItems.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/aclItems.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -23,19 +23,19 @@
 from StringIO import StringIO
 
 class Verifier(object):
-    
+
     def verify(self, manager, uri, response, respdata, args): #@UnusedVariable
 
         granted = args.get("granted", [])
         denied = args.get("denied", [])
-        
+
         # Process the multistatus response, extracting all current-user-privilege-set elements
         # and check to see that each required privilege is present, or that denied ones are not.
-        
+
         # Must have MULTISTATUS response code
         if response.status != 207:
             return False, "           HTTP Status for Request: %d\n" % (response.status,)
-            
+
         try:
             tree = ElementTree(file=StringIO(respdata))
         except Exception:
@@ -60,28 +60,28 @@
                 for privilege in privileges:
                     for child in privilege.getchildren():
                         granted_privs.append(child.tag)
-    
-            granted_result_set = set( granted_privs )
-            granted_test_set = set( granted )
-            denied_test_set = set( denied )
-            
+
+            granted_result_set = set(granted_privs)
+            granted_test_set = set(granted)
+            denied_test_set = set(denied)
+
             # Now do set difference
-            granted_missing = granted_test_set.difference( granted_result_set )
-            denied_present = granted_result_set.intersection( denied_test_set )
-            
-            if len( granted_missing ) + len( denied_present ) != 0:
-                if len( granted_missing ) != 0:
-                    l = list( granted_missing )
+            granted_missing = granted_test_set.difference(granted_result_set)
+            denied_present = granted_result_set.intersection(denied_test_set)
+
+            if len(granted_missing) + len(denied_present) != 0:
+                if len(granted_missing) != 0:
+                    l = list(granted_missing)
                     resulttxt += "        Missing privileges not granted for %s:" % href
                     for i in l:
-                        resulttxt += " " + str(i) 
+                        resulttxt += " " + str(i)
                     resulttxt += "\n"
-                if len( denied_present ) != 0:
-                    l = list( denied_present )
+                if len(denied_present) != 0:
+                    l = list(denied_present)
                     resulttxt += "        Available privileges that should be denied for %s:" % href
                     for i in l:
-                        resulttxt += " " + str(i) 
+                        resulttxt += " " + str(i)
                     resulttxt += "\n"
                 result = False
-            
+
         return result, resulttxt

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/addressDataMatch.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/addressDataMatch.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/addressDataMatch.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -22,32 +22,32 @@
 """
 
 class Verifier(object):
-    
+
     def verify(self, manager, uri, response, respdata, args): #@UnusedVariable
         # Get arguments
         files = args.get("filepath", [])
         carddata = args.get("data", [])
         filters = args.get("filter", [])
-        
+
         # Always remove these
         filters.append("PRODID")
         filters.append("REV")
- 
+
         # status code must be 200, 201, 207
-        if response.status not in (200, 201,207):
+        if response.status not in (200, 201, 207):
             return False, "        HTTP Status Code Wrong: %d" % (response.status,)
-        
+
         # look for response data
         if not respdata:
             return False, "        No response body"
-        
+
         # look for one file
         if len(files) != 1 and len(carddata) != 1:
             return False, "        No file to compare response to"
-        
+
         # read in all data from specified file or use provided data
         if len(files):
-            fd = open( files[0], "r" )
+            fd = open(files[0], "r")
             try:
                 try:
                     data = fd.read()
@@ -62,13 +62,13 @@
             return False, "        Could not read data file"
 
         data = manager.server_info.subs(data)
-        
+
         def removePropertiesParameters(component):
-            
+
             allProps = []
             for properties in component.getProperties().itervalues():
                 allProps.extend(properties)
-            for property in allProps:                                            
+            for property in allProps:
                 for filter in filters:
                     if ":" in filter:
                         propname, parameter = filter.split(":")
@@ -83,13 +83,13 @@
             resp_adbk = Card.parseText(respdata)
             removePropertiesParameters(resp_adbk)
             respdata = resp_adbk.getText()
-            
+
             data_adbk = Card.parseText(data)
             removePropertiesParameters(data_adbk)
             data = data_adbk.getText()
-            
+
             result = respdata == data
-                    
+
             if result:
                 return True, ""
             else:

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/calendarDataMatch.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/calendarDataMatch.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/calendarDataMatch.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -23,37 +23,38 @@
 """
 
 class Verifier(object):
-    
+
     def verify(self, manager, uri, response, respdata, args): #@UnusedVariable
         # Get arguments
         files = args.get("filepath", [])
         caldata = args.get("data", [])
         filters = args.get("filter", [])
-        
+
         if "EMAIL parameter" not in manager.server_info.features:
-            filters.append("ATTENDEE:EMAIL") 
+            filters.append("ATTENDEE:EMAIL")
             filters.append("ORGANIZER:EMAIL")
         filters.append("CALSCALE")
         filters.append("PRODID")
         filters.append("DTSTAMP")
         filters.append("CREATED")
         filters.append("LAST-MODIFIED")
- 
+        filters.append("X-WR-CALNAME")
+
         # status code must be 200, 201, 207
-        if response.status not in (200,201,207):
+        if response.status not in (200, 201, 207):
             return False, "        HTTP Status Code Wrong: %d" % (response.status,)
-        
+
         # look for response data
         if not respdata:
             return False, "        No response body"
-        
+
         # look for one file
         if len(files) != 1 and len(caldata) != 1:
             return False, "        No file to compare response to"
-        
+
         # read in all data from specified file or use provided data
         if len(files):
-            fd = open( files[0], "r" )
+            fd = open(files[0], "r")
             try:
                 try:
                     data = fd.read()
@@ -68,21 +69,21 @@
             return False, "        Could not read data file"
 
         data = manager.server_info.subs(data)
-        
+
         def removePropertiesParameters(component):
-            
+
             for subcomponent in component.getComponents():
                 removePropertiesParameters(subcomponent)
 
             allProps = []
             for properties in component.getProperties().itervalues():
                 allProps.extend(properties)
-            for property in allProps:                    
+            for property in allProps:
                 # Always reset DTSTAMP on this X- prop
                 if property.getName() == "X-CALENDARSERVER-ATTENDEE-COMMENT":
                     if property.hasAttribute("X-CALENDARSERVER-DTSTAMP"):
                         property.replaceAttribute(PyCalendarAttribute("X-CALENDARSERVER-DTSTAMP", "20080101T000000Z"))
-                        
+
                 for filter in filters:
                     if ":" in filter:
                         propname, parameter = filter.split(":")
@@ -97,13 +98,13 @@
             resp_calendar = PyCalendar.parseText(respdata)
             removePropertiesParameters(resp_calendar)
             respdata = resp_calendar.getText()
-            
+
             data_calendar = PyCalendar.parseText(data)
             removePropertiesParameters(data_calendar)
             data = data_calendar.getText()
-            
+
             result = respdata == data
-                    
+
             if result:
                 return True, ""
             else:

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/dataMatch.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/dataMatch.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/dataMatch.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -23,25 +23,25 @@
 from StringIO import StringIO
 
 class Verifier(object):
-    
+
     def verify(self, manager, uri, response, respdata, args): #@UnusedVariable
         # Get arguments
         files = args.get("filepath", [])
-        
+
         # status code must be 200, 207
-        if response.status not in (200,207):
+        if response.status not in (200, 207):
             return False, "        HTTP Status Code Wrong: %d" % (response.status,)
-        
+
         # look for response data
         if not respdata:
             return False, "        No response body"
-        
+
         # look for one file
         if len(files) != 1:
             return False, "        No file to compare response to"
-        
+
         # read in all data from specified file
-        fd = open( files[0], "r" )
+        fd = open(files[0], "r")
         try:
             try:
                 data = fd.read()
@@ -69,11 +69,11 @@
                     try:
                         respdata = tostring(ElementTree(file=StringIO(respdata)).getroot())
                     except Exception:
-                        return False, "        Could not parse XML response: %s" %(respdata,)
+                        return False, "        Could not parse XML response: %s" % (respdata,)
                     try:
                         data = tostring(ElementTree(file=StringIO(data)).getroot())
                     except Exception:
-                        return False, "        Could not parse XML data: %s" %(data,)
+                        return False, "        Could not parse XML data: %s" % (data,)
                     if data != respdata:
                         result = False
                 else:

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/dataString.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/dataString.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/dataString.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -19,25 +19,25 @@
 """
 
 class Verifier(object):
-    
+
     def verify(self, manager, uri, response, respdata, args): #@UnusedVariable
         # Get arguments
         contains = args.get("contains", [])
         notcontains = args.get("notcontains", [])
         unwrap = args.get("unwrap")
         empty = args.get("empty")
-        
+
         # Test empty
         if empty:
             if respdata:
                 return False, "        Response data has a body"
             else:
                 return True, ""
-                
+
         # look for response data
         if not respdata:
             return False, "        No response body"
-        
+
         # Un wrap if required
         if unwrap is not None:
             newrespdata = respdata.replace("\r\n ", "")
@@ -54,4 +54,3 @@
                 return False, "        Response data incorrectly contains \"%s\"" % (item,)
 
         return True, ""
-            

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/freeBusy.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/freeBusy.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/freeBusy.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -22,9 +22,9 @@
 from pycalendar.exceptions import PyCalendarInvalidData
 
 class Verifier(object):
-    
+
     def verify(self, manager, uri, response, respdata, args): #@UnusedVariable
-        
+
         # Must have status 200
         if response.status != 200:
             return False, "        HTTP Status Code Wrong: %d" % (response.status,)
@@ -33,23 +33,23 @@
         busy = args.get("busy", [])
         tentative = args.get("tentative", [])
         unavailable = args.get("unavailable", [])
-        
+
         # Parse data as calendar object
         try:
             calendar = PyCalendar.parseText(respdata)
-            
+
             # Check for calendar
             if calendar is None:
-                raise ValueError("Not a calendar: %s" % (respdata, ))
-            
+                raise ValueError("Not a calendar: %s" % (respdata,))
+
             # Only one component
             comps = calendar.getComponents("VFREEBUSY")
             if len(comps) != 1:
                 raise ValueError("Wrong number or unexpected components in calendar")
-            
+
             # Must be VFREEBUSY
             fb = comps[0]
-            
+
             # Extract periods
             busyp = []
             tentativep = []
@@ -71,13 +71,13 @@
                     unavailablep.extend(periods)
                 else:
                     raise ValueError("Unknown FBTYPE: %s" % (fbtype,))
-            
+
             # Set sizes must match
             if ((len(busy) != len(busyp)) or
                 (len(unavailable) != len(unavailablep)) or
                 (len(tentative) != len(tentativep))):
                 raise ValueError("Period list sizes do not match.")
-            
+
             # Convert to string sets
             busy = set(busy)
             busyp = [x.getValue().getText() for x in busyp]
@@ -96,10 +96,10 @@
                 raise ValueError("Busy-tentative periods do not match")
             elif len(unavailablep.symmetric_difference(unavailable)):
                 raise ValueError("Busy-unavailable periods do not match")
-                
+
         except PyCalendarInvalidData:
             return False, "        HTTP response data is not a calendar"
         except ValueError, txt:
             return False, "        HTTP response data is invalid: %s" % (txt,)
-            
+
         return True, ""

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/header.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/header.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/header.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -21,7 +21,7 @@
 import re
 
 class Verifier(object):
-    
+
     def verify(self, manager, uri, response, respdata, args): #@UnusedVariable
         # Split into header/value tuples
         testheader = args.get("header", [])[:]
@@ -40,7 +40,7 @@
                 testheader[i] = (p.split("!", 1)[0], p.split("!", 1)[1], present, False,)
             else:
                 testheader[i] = (p, None, present, True,)
-        
+
         result = True
         resulttxt = ""
         for hdrname, hdrvalue, presence, matchvalue in testheader:
@@ -61,21 +61,21 @@
                     resulttxt += "\n"
                 resulttxt += "        Response Header was present one or more times: %s" % (hdrname,)
                 continue
-               
+
             if (len(hdrs) != 1) and (presence == "single"):
                 result = False
                 if len(resulttxt):
                     resulttxt += "\n"
                 resulttxt += "        Multiple Response Headers: %s" % (hdrname,)
                 continue
-            
+
             if (hdrvalue is not None):
                 matched = False
                 for hdr in hdrs:
                     if (re.match(hdrvalue, hdr) is not None):
                         matched = True
                         break
-                        
+
                 if matchvalue and not matched or not matchvalue and matched:
                     result = False
                     if len(resulttxt):
@@ -83,4 +83,3 @@
                     resulttxt += "        Wrong Response Header Value: %s: %s" % (hdrname, str(hdrs))
 
         return result, resulttxt
-            

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/multistatusItems.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/multistatusItems.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/multistatusItems.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -23,7 +23,7 @@
 from StringIO import StringIO
 
 class Verifier(object):
-    
+
     def verify(self, manager, uri, response, respdata, args):
 
         # If no hrefs requested, then assume none should come back
@@ -49,13 +49,13 @@
         okhrefs = [prefix + i for i in okhrefs]
         nohrefs = [prefix + i for i in nohrefs]
         badhrefs = [prefix + i for i in badhrefs]
-        for k,v in args.items():
+        for k, v in args.items():
             v = [prefix + i for i in v]
             args[k] = v
         count = [int(i) for i in count]
         totalcount = [int(i) for i in totalcount]
         responsecount = [int(i) for i in responsecount]
-        
+
         if "okhrefs" in args or "nohrefs" in args or "badhrefs" in args:
             doOKBad = True
         elif statushrefs:
@@ -66,11 +66,11 @@
         # Process the multistatus response, extracting all hrefs
         # and comparing with the set defined for this test. Report any
         # mismatches.
-        
+
         # Must have MULTISTATUS response code
         if response.status != 207:
             return False, "           HTTP Status for Request: %d\n" % (response.status,)
-            
+
         try:
             tree = ElementTree(file=StringIO(respdata))
         except Exception:
@@ -106,7 +106,7 @@
                 else:
                     status = False
                 code = 0
-            
+
             if status:
                 ok_status_hrefs.append(href)
             else:
@@ -117,7 +117,7 @@
         no_test_set = set(nohrefs)
         bad_result_set = set(bad_status_hrefs)
         bad_test_set = set(badhrefs)
-        
+
         result = True
         resulttxt = ""
 
@@ -125,14 +125,14 @@
         if len(count) == 1:
             if len(ok_result_set) != count[0] + 1:
                 result = False
-                resulttxt +=  "        %d items returned, but %d items expected" % (len(ok_result_set) - 1, count[0], )
+                resulttxt += "        %d items returned, but %d items expected" % (len(ok_result_set) - 1, count[0],)
             return result, resulttxt
 
         # Check for total count
         if len(totalcount) == 1:
             if len(ok_result_set) != totalcount[0]:
                 result = False
-                resulttxt +=  "        %d items returned, but %d items expected" % (len(ok_result_set), totalcount[0], )
+                resulttxt += "        %d items returned, but %d items expected" % (len(ok_result_set), totalcount[0],)
             return result, resulttxt
 
         # Check for response count
@@ -140,82 +140,82 @@
             responses = len(ok_result_set) + len(bad_result_set)
             if responses != responsecount[0]:
                 result = False
-                resulttxt +=  "        %d responses returned, but %d responses expected" % (responses, responsecount[0], )
+                resulttxt += "        %d responses returned, but %d responses expected" % (responses, responsecount[0],)
             return result, resulttxt
 
         if doOKBad:
             # Now do set difference
-            ok_missing = ok_test_set.difference( ok_result_set )
-            ok_extras = ok_result_set.difference( ok_test_set ) if not ignoremissing else set()
-            no_extras = ok_result_set.intersection( no_test_set )
-            bad_missing = bad_test_set.difference( bad_result_set )
-            bad_extras = bad_result_set.difference( bad_test_set ) if not ignoremissing else set()
-            
-            if len( ok_missing ) + len( ok_extras ) + len( no_extras ) + len( bad_missing ) + len( bad_extras )!= 0:
-                if len( ok_missing ) != 0:
-                    l = list( ok_missing )
-                    resulttxt += "        %d Items not returned in report (OK):" % (len( ok_missing ), )
+            ok_missing = ok_test_set.difference(ok_result_set)
+            ok_extras = ok_result_set.difference(ok_test_set) if not ignoremissing else set()
+            no_extras = ok_result_set.intersection(no_test_set)
+            bad_missing = bad_test_set.difference(bad_result_set)
+            bad_extras = bad_result_set.difference(bad_test_set) if not ignoremissing else set()
+
+            if len(ok_missing) + len(ok_extras) + len(no_extras) + len(bad_missing) + len(bad_extras) != 0:
+                if len(ok_missing) != 0:
+                    l = list(ok_missing)
+                    resulttxt += "        %d Items not returned in report (OK):" % (len(ok_missing),)
                     for i in l:
-                        resulttxt += " " + str(i) 
+                        resulttxt += " " + str(i)
                     resulttxt += "\n"
-                if len( ok_extras ) != 0:
-                    l = list( ok_extras )
-                    resulttxt += "        %d Unexpected items returned in report (OK):" % (len( ok_extras ), )
+                if len(ok_extras) != 0:
+                    l = list(ok_extras)
+                    resulttxt += "        %d Unexpected items returned in report (OK):" % (len(ok_extras),)
                     for i in l:
-                        resulttxt += " " + str(i) 
+                        resulttxt += " " + str(i)
                     resulttxt += "\n"
-                if len( no_extras ) != 0:
-                    l = list( no_extras )
-                    resulttxt += "        %d Unwanted items returned in report (OK):" % (len( no_extras ), )
+                if len(no_extras) != 0:
+                    l = list(no_extras)
+                    resulttxt += "        %d Unwanted items returned in report (OK):" % (len(no_extras),)
                     for i in l:
-                        resulttxt += " " + str(i) 
+                        resulttxt += " " + str(i)
                     resulttxt += "\n"
-                if len( bad_missing ) != 0:
-                    l = list( bad_missing )
-                    resulttxt += "        %d Items not returned in report (BAD):" % (len( bad_missing ), )
+                if len(bad_missing) != 0:
+                    l = list(bad_missing)
+                    resulttxt += "        %d Items not returned in report (BAD):" % (len(bad_missing),)
                     for i in l:
-                        resulttxt += " " + str(i) 
+                        resulttxt += " " + str(i)
                     resulttxt += "\n"
-                if len( bad_extras ) != 0:
-                    l = list( bad_extras )
-                    resulttxt += "        %d Unexpected items returned in report (BAD):" % (len( bad_extras ), )
+                if len(bad_extras) != 0:
+                    l = list(bad_extras)
+                    resulttxt += "        %d Unexpected items returned in report (BAD):" % (len(bad_extras),)
                     for i in l:
-                        resulttxt += " " + str(i) 
+                        resulttxt += " " + str(i)
                     resulttxt += "\n"
                 result = False
-        
+
         if not doOKBad:
             l = list(set(statushrefs.keys()) - set(status_code_hrefs.keys()))
             if l:
-                resulttxt += "        %d Status Codes not returned in report:" % (len( l ), )
+                resulttxt += "        %d Status Codes not returned in report:" % (len(l),)
                 for i in l:
-                    resulttxt += " " + str(i) 
+                    resulttxt += " " + str(i)
                 resulttxt += "\n"
                 result = False
-            
+
             l = list(set(status_code_hrefs.keys()) - set(statushrefs.keys()))
             if l:
-                resulttxt += "        %d Unexpected Status Codes returned in report:" % (len( l ), )
+                resulttxt += "        %d Unexpected Status Codes returned in report:" % (len(l),)
                 for i in l:
-                    resulttxt += " " + str(i) 
+                    resulttxt += " " + str(i)
                 resulttxt += "\n"
                 result = False
-            
+
             for code in set(statushrefs.keys()) & set(status_code_hrefs.keys()):
                 l = list(set(*statushrefs[code]) - status_code_hrefs[code])
                 if l:
-                    resulttxt += "        %d Items not returned in report for %d:" % (len( l ), code,)
+                    resulttxt += "        %d Items not returned in report for %d:" % (len(l), code,)
                     for i in l:
-                        resulttxt += " " + str(i) 
+                        resulttxt += " " + str(i)
                     resulttxt += "\n"
                     result = False
-                
+
                 l = list(status_code_hrefs[code] - set(*statushrefs[code]))
                 if l:
-                    resulttxt += "        %d Unexpected items returned in report for %d:" % (len( l ), code, )
+                    resulttxt += "        %d Unexpected items returned in report for %d:" % (len(l), code,)
                     for i in l:
-                        resulttxt += " " + str(i) 
+                        resulttxt += " " + str(i)
                     resulttxt += "\n"
                     result = False
-                
+
         return result, resulttxt

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/postFreeBusy.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/postFreeBusy.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/postFreeBusy.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -25,9 +25,9 @@
 import StringIO
 
 class Verifier(object):
-    
+
     def verify(self, manager, uri, response, respdata, args): #@UnusedVariable
-        
+
         # Must have status 200
         if response.status != 200:
             return False, "        HTTP Status Code Wrong: %d" % (response.status,)
@@ -37,7 +37,7 @@
         busy = args.get("busy", [])
         tentative = args.get("tentative", [])
         unavailable = args.get("unavailable", [])
-        
+
         # Extract each calendar-data object
         try:
             tree = ElementTree(file=StringIO.StringIO(respdata))
@@ -48,19 +48,19 @@
             # Parse data as calendar object
             try:
                 calendar = PyCalendar.parseText(calendar.text)
-                
+
                 # Check for calendar
                 if calendar is None:
-                    raise ValueError("Not a calendar: %s" % (calendar, ))
-                
+                    raise ValueError("Not a calendar: %s" % (calendar,))
+
                 # Only one component
                 comps = calendar.getComponents("VFREEBUSY")
                 if len(comps) != 1:
                     raise ValueError("Wrong number or unexpected components in calendar")
-                
+
                 # Must be VFREEBUSY
                 fb = comps[0]
-                
+
                     # Check for attendee value
                 for attendee in fb.getProperties("ATTENDEE"):
                     if attendee.getValue().getValue() in users:
@@ -90,13 +90,13 @@
                         unavailablep.extend(periods)
                     else:
                         raise ValueError("Unknown FBTYPE: %s" % (fbtype,))
-                
+
                 # Set sizes must match
                 if ((len(busy) != len(busyp)) or
                     (len(unavailable) != len(unavailablep)) or
                     (len(tentative) != len(tentativep))):
                     raise ValueError("Period list sizes do not match.")
-                
+
                 # Convert to string sets
                 busy = set(busy)
                 busyp = [x.getValue().getText() for x in busyp]
@@ -107,7 +107,7 @@
                 unavailable = set(unavailable)
                 unavailablep = [x.getValue().getText() for x in unavailablep]
                 unavailablep = set(unavailablep)
-    
+
                 # Compare all periods
                 if len(busyp.symmetric_difference(busy)):
                     raise ValueError("Busy periods do not match")
@@ -115,16 +115,15 @@
                     raise ValueError("Busy-tentative periods do not match")
                 elif len(unavailablep.symmetric_difference(unavailable)):
                     raise ValueError("Busy-unavailable periods do not match")
-                
+
                 break
-                    
+
             except PyCalendarInvalidData:
                 return False, "        HTTP response data is not a calendar"
             except ValueError, txt:
                 return False, "        HTTP response data is invalid: %s" % (txt,)
 
-
         if len(users):
             return False, "           Could not find attendee/calendar data in XML response\n"
-            
+
         return True, ""

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/prepostcondition.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/prepostcondition.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/prepostcondition.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -22,24 +22,24 @@
 from StringIO import StringIO
 
 class Verifier(object):
-    
+
     def verify(self, manager, uri, response, respdata, args): #@UnusedVariable
         # If no status verification requested, then assume all 2xx codes are OK
         teststatus = args.get("error", [])
         statusCode = args.get("status", ["403", "409", "507"])
-        
+
         # status code could be anything, but typically 403, 409 or 507
         if str(response.status) not in statusCode:
             return False, "        HTTP Status Code Wrong: %d" % (response.status,)
-        
+
         # look for pre-condition data
         if not respdata:
             return False, "        No pre/post condition response body"
-            
+
         try:
             tree = ElementTree(file=StringIO(respdata))
         except Exception, ex:
-            return False, "        Could not parse XML: %s" %(ex,)
+            return False, "        Could not parse XML: %s" % (ex,)
 
         if tree.getroot().tag != "{DAV:}error":
             return False, "        Missing <DAV:error> element in response"
@@ -50,10 +50,10 @@
         for child in tree.getroot().getchildren():
             if child.tag != "{http://twistedmatrix.com/xml_namespace/dav/}error-description":
                 got.add(child.tag)
-        
+
         missing = expected.difference(got)
         extras = got.difference(expected)
-        
+
         err_txt = ""
         if len(missing):
             err_txt += "        Items not returned in error: element %s" % str(missing)
@@ -65,4 +65,3 @@
             return False, err_txt
 
         return True, ""
-            

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/propfindItems.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/propfindItems.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/propfindItems.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -23,7 +23,7 @@
 from StringIO import StringIO
 
 class Verifier(object):
-    
+
     def verify(self, manager, uri, response, respdata, args): #@UnusedVariable
 
         # If no status verification requested, then assume all 2xx codes are OK
@@ -52,7 +52,7 @@
             status = 207
 
         def normalizeXML(value):
-            
+
             if value[0] == '<':
                 try:
                     tree = ElementTree(file=StringIO(value))
@@ -87,13 +87,13 @@
             else:
                 badprops[i] = (p, None)
 
-        ok_test_set = set( ok_props_match )
-        bad_test_set = set( badprops )
-        
+        ok_test_set = set(ok_props_match)
+        bad_test_set = set(badprops)
+
         # Process the multistatus response, extracting all hrefs
         # and comparing with the set defined for this test. Report any
         # mismatches.
-        
+
         # Must have MULTISTATUS response code
         if response.status != status:
             return False, "           HTTP Status for Request: %d\n" % (response.status,)
@@ -103,7 +103,7 @@
             tree = ElementTree(file=StringIO(respdata))
         except Exception:
             return False, "           Could not parse proper XML response\n"
-        
+
         # Test root element
         if tree.getroot().tag != root:
             return False, "           Invalid root-element specified: %s\n" % (root,)
@@ -122,7 +122,7 @@
                 continue
             if only and href not in only:
                 continue
-            
+
             if count is not None:
                 ctr += 1
                 continue
@@ -141,7 +141,7 @@
                         status = (statustxt[9] == "2")
                 else:
                     status = False
-                
+
                 # Get properties for this propstat
                 prop = props.find("{DAV:}prop")
                 if not prop:
@@ -172,53 +172,53 @@
                                 value = None
                     else:
                         value = None
-                    
+
                     if status:
-                        ok_status_props.append( (fqname, value,) )
+                        ok_status_props.append((fqname, value,))
                     else:
-                        bad_status_props.append( (fqname, value,) )
-    
-            ok_result_set = set( ok_status_props )
-            bad_result_set = set( bad_status_props )
-            
+                        bad_status_props.append((fqname, value,))
+
+            ok_result_set = set(ok_status_props)
+            bad_result_set = set(bad_status_props)
+
             # Now do set difference
-            ok_missing = ok_test_set.difference( ok_result_set )
-            ok_extras = ok_result_set.difference( ok_test_set )
-            bad_missing = bad_test_set.difference( bad_result_set )
-            bad_extras = bad_result_set.difference( bad_test_set )
-            
+            ok_missing = ok_test_set.difference(ok_result_set)
+            ok_extras = ok_result_set.difference(ok_test_set)
+            bad_missing = bad_test_set.difference(bad_result_set)
+            bad_extras = bad_result_set.difference(bad_test_set)
+
             # Now remove extras that are in the no-match set
             for name, value in [p for p in ok_extras]:
-                if okprops_nomatch.has_key(name) and okprops_nomatch[name] != value:
+                if name in okprops_nomatch and okprops_nomatch[name] != value:
                     ok_extras.remove((name, value))
-                    
-            if len( ok_missing ) + len( ok_extras ) + len( bad_missing ) + len( bad_extras )!= 0:
-                if len( ok_missing ) != 0:
-                    l = list( ok_missing )
+
+            if len(ok_missing) + len(ok_extras) + len(bad_missing) + len(bad_extras) != 0:
+                if len(ok_missing) != 0:
+                    l = list(ok_missing)
                     resulttxt += "        Items not returned in report (OK) for %s:" % href
                     for i in l:
-                        resulttxt += " " + str(i) 
+                        resulttxt += " " + str(i)
                     resulttxt += "\n"
-                if len( ok_extras ) != 0:
-                    l = list( ok_extras )
+                if len(ok_extras) != 0:
+                    l = list(ok_extras)
                     resulttxt += "        Unexpected items returned in report (OK) for %s:" % href
                     for i in l:
-                        resulttxt += " " + str(i) 
+                        resulttxt += " " + str(i)
                     resulttxt += "\n"
-                if len( bad_missing ) != 0:
-                    l = list( bad_missing )
+                if len(bad_missing) != 0:
+                    l = list(bad_missing)
                     resulttxt += "        Items not returned in report (BAD) for %s:" % href
                     for i in l:
-                        resulttxt += " " + str(i) 
+                        resulttxt += " " + str(i)
                     resulttxt += "\n"
-                if len( bad_extras ) != 0:
-                    l = list( bad_extras )
+                if len(bad_extras) != 0:
+                    l = list(bad_extras)
                     resulttxt += "        Unexpected items returned in report (BAD) for %s:" % href
                     for i in l:
-                        resulttxt += " " + str(i) 
+                        resulttxt += " " + str(i)
                     resulttxt += "\n"
                 result = False
-        
+
         if count is not None and count != ctr:
             result = False
             resulttxt = "        Expected %d response items but got %d." % (count, ctr,)

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/propfindValues.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/propfindValues.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/propfindValues.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -23,14 +23,14 @@
 import re
 
 class Verifier(object):
-    
+
     def verify(self, manager, uri, response, respdata, args): #@UnusedVariable
 
         # If no status verification requested, then assume all 2xx codes are OK
         ignores = args.get("ignore", [])
 
         def normalizeXML(value):
-            
+
             if value[0] == '<':
                 try:
                     tree = ElementTree(file=StringIO(value))
@@ -38,7 +38,7 @@
                     return False, "           Could not parse XML value: %s\n" % (value,)
                 value = tostring(tree.getroot())
             return value
-            
+
         # Get property arguments and split on $ delimited for name, value tuples
         testprops = args.get("props", [])
         props_match = []
@@ -58,16 +58,16 @@
         # Process the multistatus response, extracting all hrefs
         # and comparing with the properties defined for this test. Report any
         # mismatches.
-        
+
         # Must have MULTISTATUS response code
         if response.status != 207:
             return False, "           HTTP Status for Request: %d\n" % (response.status,)
-        
+
         try:
             tree = ElementTree(file=StringIO(respdata))
         except Exception:
             return False, "           Could not parse proper XML response\n"
-                
+
         result = True
         resulttxt = ""
         for response in tree.findall("{DAV:}response"):
@@ -79,7 +79,7 @@
             href = href[0].text
             if href in ignores:
                 continue
-            
+
             # Get all property status
             ok_status_props = {}
             propstatus = response.findall("{DAV:}propstat")
@@ -93,19 +93,19 @@
                         status = (statustxt[9] == "2")
                 else:
                     status = False
-                
+
                 # Get properties for this propstat
                 prop = props.findall("{DAV:}prop")
                 if len(prop) != 1:
                     return False, "           Wrong number of DAV:prop elements\n"
 
                 def _removeWhitespace(node):
-                    
+
                     for child in node.getchildren():
                         child.text = child.text.strip() if child.text else child.text
                         child.tail = child.tail.strip() if child.tail else child.tail
                         _removeWhitespace(child)
-                         
+
                 for child in prop[0].getchildren():
                     fqname = child.tag
                     if len(child):
@@ -117,10 +117,10 @@
                         value = child.text
                     else:
                         value = None
-                    
+
                     if status:
                         ok_status_props[fqname] = value
-    
+
             # Look at each property we want to test and see if present
             for propname, value, match in props_match:
                 if propname not in ok_status_props:

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/statusCode.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/statusCode.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/statusCode.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -19,11 +19,11 @@
 """
 
 class Verifier(object):
-    
+
     def verify(self, manager, uri, response, respdata, args): #@UnusedVariable
-        # If no status veriffication requested, then assume all 2xx codes are OK
+        # If no status verification requested, then assume all 2xx codes are OK
         teststatus = args.get("status", ["2xx"])
-        
+
         for test in teststatus:
             if test[1:3] == "xx":
                 test = int(test[0])
@@ -33,7 +33,7 @@
                 result = ((response.status / 100) == test)
             else:
                 result = (response.status == test)
-            if result: return True, ""
-        
+            if result:
+                return True, ""
+
         return False, "        HTTP Status Code Wrong: %d" % (response.status,)
-            

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/xmlDataMatch.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/xmlDataMatch.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/xmlDataMatch.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -23,26 +23,26 @@
 import StringIO
 
 class Verifier(object):
-    
+
     def verify(self, manager, uri, response, respdata, args): #@UnusedVariable
         # Get arguments
         files = args.get("filepath", [])
         filters = args.get("filter", [])
- 
+
         # status code must be 200, 207
-        if response.status not in (200,207):
+        if response.status not in (200, 207):
             return False, "        HTTP Status Code Wrong: %d" % (response.status,)
-        
+
         # look for response data
         if not respdata:
             return False, "        No response body"
-        
+
         # look for one file
         if len(files) != 1:
             return False, "        No file to compare response to"
-        
+
         # read in all data from specified file
-        fd = open( files[0], "r" )
+        fd = open(files[0], "r")
         try:
             try:
                 data = fd.read()
@@ -56,14 +56,14 @@
 
         data = manager.server_info.subs(data)
         data = manager.server_info.extrasubs(data)
-        
+
         def normalizeXMLData(data):
             # Read in XML
             try:
                 tree = ElementTree(file=StringIO.StringIO(data))
             except Exception:
                 raise ValueError("Could not parse XML data")
-            
+
             # Apply filters
             for filter in filters:
                 for node in tree.getiterator(filter):
@@ -73,9 +73,9 @@
         try:
             respdata = normalizeXMLData(respdata)
             data = normalizeXMLData(data)
-            
+
             result = respdata == data
-                    
+
             if result:
                 return True, ""
             else:

Modified: CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/xmlElementMatch.py
===================================================================
--- CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/xmlElementMatch.py	2012-09-22 14:24:52 UTC (rev 9838)
+++ CalDAVTester/branches/users/gaya/invitecleanTester/verifiers/xmlElementMatch.py	2012-09-22 20:53:20 UTC (rev 9839)
@@ -23,50 +23,51 @@
 import StringIO
 
 class Verifier(object):
-    
+
     def verify(self, manager, uri, response, respdata, args): #@UnusedVariable
         # Get arguments
         exists = args.get("exists", [])
         notexists = args.get("notexists", [])
- 
+
         # status code must be 200, 207
-        if response.status not in (200,207):
+        if response.status not in (200, 207):
             return False, "        HTTP Status Code Wrong: %d" % (response.status,)
-        
+
         # look for response data
         if not respdata:
             return False, "        No response body"
-                
+
         # Read in XML
         try:
             tree = ElementTree(file=StringIO.StringIO(respdata))
         except Exception, e:
             return False, "        Response data is not xml data: %s" % (e,)
-        
+
         def _splitPathTests(path):
             if '[' in path:
                 return path.split('[', 1)
             else:
                 return path, None
-            
+
         result = True
         resulttxt = ""
         for path in exists:
-            
+
             matched, txt = self.matchPath(tree, path)
             result &= matched
             resulttxt += txt
-                            
+
         for path in notexists:
             matched, _ignore_txt = self.matchPath(tree, path)
             if matched:
                 resulttxt += "        Items returned in XML for %s\n" % (path,)
                 result = False
-                
+
         return result, resulttxt
-        
+
+
     def matchPath(self, tree, path):
-        
+
         result = True
         resulttxt = ""
 
@@ -75,7 +76,7 @@
         else:
             actual_path = path
             tests = None
-        
+
         # Handle absolute root element
         if actual_path[0] == '/':
             actual_path = actual_path[1:]
@@ -88,7 +89,7 @@
             root_path = actual_path
             child_path = None
             nodes = (tree.getroot(),)
-        
+
         if len(nodes) == 0:
             resulttxt += "        Items not returned in XML for %s\n" % (path,)
             result = False
@@ -98,7 +99,7 @@
             tests = [item[:-1] for item in tests.split('[')]
             for test in tests:
                 for node in nodes:
-                    
+
                     def _doTest():
                         result = None
                         if test[0] == '@':
@@ -125,7 +126,7 @@
                             if node.text is None or not node.text.startswith(test[1:]):
                                 result = "        Incorrect value returned in XML for %s\n" % (path,)
                         return result
-                    
+
                     testresult = _doTest()
                     if testresult is None:
                         break
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20120922/2e9a36e2/attachment-0001.html>


More information about the calendarserver-changes mailing list