diff --git a/.travis.yml b/.travis.yml
index 3f80fdb8458..4f79311c33c 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -39,10 +39,8 @@ matrix:
- php: 5.4
env: DB=pgsql;TC=litmus-v1
- php: 5.4
- env: DB=sqlite;TC=carddavtester
-# - php: 5.4
-# env: DB=pgsql;TC=carddavtester
-# - php: 5.4
-# env: DB=mysql;TC=caldavtester
+ env: DB=sqlite;TC=carddav
+ - php: 5.4
+ env: DB=sqlite;TC=caldav
fast_finish: true
diff --git a/apps/dav/tests/travis/caldav/install.sh b/apps/dav/tests/travis/caldav/install.sh
new file mode 100644
index 00000000000..e836e37f86f
--- /dev/null
+++ b/apps/dav/tests/travis/caldav/install.sh
@@ -0,0 +1,20 @@
+#!/usr/bin/env bash
+SCRIPT=`realpath $0`
+SCRIPTPATH=`dirname $SCRIPT`
+
+
+if [ ! -f CalDAVTester/run.py ]; then
+ cd "$SCRIPTPATH"
+ git clone https://github.com/DeepDiver1975/CalDAVTester.git
+ cd "$SCRIPTPATH/CalDAVTester"
+ python run.py -s
+ cd "$SCRIPTPATH"
+fi
+
+# create test user
+cd "$SCRIPTPATH/../../../../../"
+OC_PASS=user01 php occ user:add --password-from-env user01
+php occ dav:create-calendar user01 calendar
+OC_PASS=user02 php occ user:add --password-from-env user02
+php occ dav:create-calendar user02 calendar
+cd "$SCRIPTPATH/../../../../../"
diff --git a/apps/dav/tests/travis/caldav/script.sh b/apps/dav/tests/travis/caldav/script.sh
new file mode 100644
index 00000000000..9a818b553f7
--- /dev/null
+++ b/apps/dav/tests/travis/caldav/script.sh
@@ -0,0 +1,18 @@
+#!/usr/bin/env bash
+SCRIPT=`realpath $0`
+SCRIPTPATH=`dirname $SCRIPT`
+
+# start the server
+php -S 127.0.0.1:8888 -t "$SCRIPTPATH/../../../../.." &
+
+sleep 30
+
+# run the tests
+cd "$SCRIPTPATH/CalDAVTester"
+PYTHONPATH="$SCRIPTPATH/pycalendar/src" python testcaldav.py --print-details-onfail -s "$SCRIPTPATH/../caldavtest/config/serverinfo.xml" -o cdt.txt \
+ "$SCRIPTPATH/../caldavtest/tests/CalDAV/current-user-principal.xml"
+RESULT=$?
+
+tail "$/../../../../../data-autotest/owncloud.log"
+
+exit $RESULT
diff --git a/apps/dav/tests/travis/caldavtest/tests/CalDAV/current-user-principal.xml b/apps/dav/tests/travis/caldavtest/tests/CalDAV/current-user-principal.xml
new file mode 100644
index 00000000000..d01058fee0a
--- /dev/null
+++ b/apps/dav/tests/travis/caldavtest/tests/CalDAV/current-user-principal.xml
@@ -0,0 +1,151 @@
+
+
+
+
+
+
+
+ Test DAV:current-user-principal support
+
+
+ caldav
+ current-user-principal
+
+
+
+
+
+
+ own-root
+
+
+ Check for authenticated property on /
+
+ PROPFIND
+ $root:
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/current-user-principal/1.xml
+
+
+ propfindItems
+
+ okprops
+ $principaluri1:]]>
+
+
+
+
+
+ Check for authenticated property on / (user02)
+
+ PROPFIND
+ $root:
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/current-user-principal/1.xml
+
+
+ propfindItems
+
+ okprops
+ $principaluri2:]]>
+
+
+
+
+
+
+
+
+ Check for authenticated property on /
+
+ PROPFIND
+ $principalcollection:
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/current-user-principal/1.xml
+
+
+ propfindItems
+
+ okprops
+ $principaluri1:]]>
+
+
+
+
+
+ Check for unauthenticated property on /
+
+ PROPFIND
+ $principals_users:
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/current-user-principal/1.xml
+
+
+ statusCode
+
+ status
+ 401
+
+
+
+
+
+ Check for authenticated property on / (user02)
+
+ PROPFIND
+ $principalcollection:
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/current-user-principal/1.xml
+
+
+ propfindItems
+
+ okprops
+ $principaluri2:]]>
+
+
+
+
+
+
+
+
diff --git a/apps/dav/tests/travis/caldavtest/tests/CalDAV/sync-report.xml b/apps/dav/tests/travis/caldavtest/tests/CalDAV/sync-report.xml
new file mode 100644
index 00000000000..c675af82065
--- /dev/null
+++ b/apps/dav/tests/travis/caldavtest/tests/CalDAV/sync-report.xml
@@ -0,0 +1,3512 @@
+
+
+
+
+
+
+
+
+ caldav
+ sync-report
+
+
+
+
+ MKCALENDAR
+ $calendarhome1:/synccalendar1/
+
+
+ PUT
+ $calendarhome1:/synccalendar1/1.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/1.txt
+
+
+
+ PUT
+ $calendarhome1:/synccalendar1/2.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/2.txt
+
+
+
+ MKCALENDAR
+ $calendarhome1:/synccalendar2/
+
+
+ PUT
+ $calendarhome1:/synccalendar2/1.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/4.txt
+
+
+
+ PUT
+ $calendarhome1:/synccalendar2/2.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/5.txt
+
+
+
+
+
+
+ Not on calendars
+
+ PROPFIND
+ $calendars:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/1.xml
+
+
+ xmlElementMatch
+
+ notexists
+ $verify-property-prefix:/{DAV:}supported-report-set/{DAV:}supported-report/{DAV:}report/{DAV:}sync-collection
+
+
+
+ propfindItems
+
+ okprops
+ {DAV:}supported-report-set
+
+
+ badprops
+ {DAV:}sync-token
+
+
+
+
+
+ On calendar-home
+
+ PROPFIND
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/1.xml
+
+
+
+ sync-report-home
+
+ xmlElementMatch
+
+ exists
+ $verify-property-prefix:/{DAV:}supported-report-set/{DAV:}supported-report/{DAV:}report/{DAV:}sync-collection
+ $verify-property-prefix:/{DAV:}sync-token[+data:,]
+
+
+
+
+ sync-report-home
+
+ propfindItems
+
+ okprops
+ {DAV:}supported-report-set
+ {DAV:}sync-token
+
+
+
+
+ sync-report-home
+
+ xmlElementMatch
+
+ notexists
+ $verify-property-prefix:/{DAV:}supported-report-set/{DAV:}supported-report/{DAV:}report/{DAV:}sync-collection
+
+
+
+
+ sync-report-home
+
+ propfindItems
+
+ okprops
+ {DAV:}supported-report-set
+
+
+ badprops
+ {DAV:}sync-token
+
+
+
+
+
+ On calendar
+
+ PROPFIND
+ $calendarhome1:/synccalendar1/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/1.xml
+
+
+ xmlElementMatch
+
+ exists
+ $verify-property-prefix:/{DAV:}supported-report-set/{DAV:}supported-report/{DAV:}report/{DAV:}sync-collection
+ $verify-property-prefix:/{DAV:}sync-token[+data:,]
+
+
+
+ propfindItems
+
+ okprops
+ {DAV:}supported-report-set
+ {DAV:}sync-token
+
+
+
+
+
+ On inbox
+
+ PROPFIND
+ $inboxpath1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/1.xml
+
+
+ xmlElementMatch
+
+ exists
+ $verify-property-prefix:/{DAV:}supported-report-set/{DAV:}supported-report/{DAV:}report/{DAV:}sync-collection
+
+
+
+ propfindItems
+
+ okprops
+ {DAV:}supported-report-set
+ {DAV:}sync-token
+
+
+
+
+
+
+ sync-report-home
+
+ Look for options header tag on principal
+
+ OPTIONS
+ $principal1:
+
+ header
+
+ header
+ *DAV$.*calendarserver-home-sync[^-]*
+
+
+
+
+
+
+
+
+
+ sync-report-home
+
+ sync-level:1, depth:0
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/8.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_home_items_initial_sync:
+ synccalendar1/
+ synccalendar2/
+
+
+ badhrefs
+ $dropbox:/
+
+
+
+
+
+
+ sync-report-home
+
+ sync-level:1, depth:1
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/8.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_home_items_initial_sync:
+ synccalendar1/
+ synccalendar2/
+
+
+ badhrefs
+ $dropbox:/
+
+
+
+
+
+
+ sync-report-home
+
+ sync-level:1, depth:infinity
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/8.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_home_items_initial_sync:
+ synccalendar1/
+ synccalendar2/
+
+
+ badhrefs
+ $dropbox:/
+
+
+
+
+
+
+ sync-report-home
+
+ sync-level:infinity, depth:0
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/9.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_home_items_initial_sync:
+ synccalendar1/
+ synccalendar1/1.ics
+ synccalendar1/2.ics
+ synccalendar2/
+ synccalendar2/1.ics
+ synccalendar2/2.ics
+
+
+ badhrefs
+ $dropbox:/
+
+
+
+
+
+
+ sync-report-home
+
+ sync-level:infinity, depth:1
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/9.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_home_items_initial_sync:
+ synccalendar1/
+ synccalendar1/1.ics
+ synccalendar1/2.ics
+ synccalendar2/
+ synccalendar2/1.ics
+ synccalendar2/2.ics
+
+
+ badhrefs
+ $dropbox:/
+
+
+
+
+
+
+ sync-report-home
+
+ sync-level:infinity, depth:infinity
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/9.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_home_items_initial_sync:
+ synccalendar1/
+ synccalendar1/1.ics
+ synccalendar1/2.ics
+ synccalendar2/
+ synccalendar2/1.ics
+ synccalendar2/2.ics
+
+
+ badhrefs
+ $dropbox:/
+
+
+
+
+
+ sync-level:1, depth:0
+
+ REPORT
+ $calendarhome1:/synccalendar1/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/8.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_sync_extra_items:
+ 1.ics
+ 2.ics
+
+
+
+
+
+
+ sync-report-home
+
+ sync-level:1, depth:1
+
+ REPORT
+ $calendarhome1:/synccalendar1/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/8.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_sync_extra_items:
+ 1.ics
+ 2.ics
+
+
+
+
+
+
+ sync-report-home
+
+ sync-level:1, depth:infinity
+
+ REPORT
+ $calendarhome1:/synccalendar1/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/8.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_sync_extra_items:
+ 1.ics
+ 2.ics
+
+
+
+
+
+
+ sync-report-home
+
+ sync-level:infinity, depth:0
+
+ REPORT
+ $calendarhome1:/synccalendar1/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/9.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_sync_extra_items:
+ 1.ics
+ 2.ics
+
+
+
+
+
+
+ sync-report-home
+
+ sync-level:infinity, depth:1
+
+ REPORT
+ $calendarhome1:/synccalendar1/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/9.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_sync_extra_items:
+ 1.ics
+ 2.ics
+
+
+
+
+
+
+ sync-report-home
+
+ sync-level:infinity, depth:infinity
+
+ REPORT
+ $calendarhome1:/synccalendar1/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/9.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_sync_extra_items:
+ 1.ics
+ 2.ics
+
+
+
+
+
+ Bad sync-level
+
+ REPORT
+ $calendarhome1:/synccalendar1/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/10.xml
+
+
+ statusCode
+
+ status
+ 400
+
+
+
+
+
+
+
+
+ initial query - calendar collection depth:1
+
+ REPORT
+ $calendarhome1:/synccalendar1/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/2.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_sync_extra_items:
+ 1.ics
+ 2.ics
+
+
+
+
+
+
+ sync-report-home
+
+ initial query - home depth:1
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/2.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_home_items_initial_sync:
+ synccalendar1/
+ synccalendar2/
+
+
+ badhrefs
+ $dropbox:/
+
+
+
+
+
+
+ sync-report-home
+
+ initial query - home depth:infinity
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/2.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_home_items_initial_sync:
+ synccalendar1/
+ synccalendar1/1.ics
+ synccalendar1/2.ics
+ synccalendar2/
+ synccalendar2/1.ics
+ synccalendar2/2.ics
+
+
+ badhrefs
+ $dropbox:/
+
+
+
+
+
+ add new resource
+
+ PUT
+ $calendarhome1:/synccalendar1/3.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/3.txt
+
+
+ statusCode
+
+
+
+
+ new resource - calendar collection depth:1
+
+ REPORT
+ $calendarhome1:/synccalendar1/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/2.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_sync_extra_items:
+ 1.ics
+ 2.ics
+ 3.ics
+
+
+
+
+
+
+ sync-report-home
+
+ new resource - home depth:1
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/2.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_home_items_initial_sync:
+ synccalendar1/
+ synccalendar2/
+
+
+ badhrefs
+ $dropbox:/
+
+
+
+
+
+
+ sync-report-home
+
+ new resource - home depth:infinity
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/2.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_home_items_initial_sync:
+ synccalendar1/
+ synccalendar1/1.ics
+ synccalendar1/2.ics
+ synccalendar1/3.ics
+ synccalendar2/
+ synccalendar2/1.ics
+ synccalendar2/2.ics
+
+
+ badhrefs
+ $dropbox:/
+
+
+
+
+
+ remove new resource
+
+ DELETE
+ $calendarhome1:/synccalendar1/3.ics
+
+ statusCode
+
+
+
+
+ remove new resource - calendar collection depth:1
+
+ REPORT
+ $calendarhome1:/synccalendar1/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/2.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_sync_extra_items:
+ 1.ics
+ 2.ics
+
+
+
+
+
+
+ sync-report-home
+
+ remove new resource - home depth:1
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/2.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_home_items_initial_sync:
+ synccalendar1/
+ synccalendar2/
+
+
+ badhrefs
+ $dropbox:/
+
+
+
+
+
+
+ sync-report-home
+
+ remove new resource - home depth:infinity
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/2.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_home_items_initial_sync:
+ synccalendar1/
+ synccalendar1/1.ics
+ synccalendar1/2.ics
+ synccalendar2/
+ synccalendar2/1.ics
+ synccalendar2/2.ics
+
+
+ badhrefs
+ $dropbox:/
+
+
+
+
+
+ changed resource
+
+ PUT
+ $calendarhome1:/synccalendar1/1.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/1.txt
+
+
+ statusCode
+
+
+
+
+ changed resource - calendar collection depth:1
+
+ REPORT
+ $calendarhome1:/synccalendar1/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/2.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_sync_extra_items:
+ 1.ics
+ 2.ics
+
+
+
+
+
+
+ sync-report-home
+
+ changed resource - home depth:1
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/2.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_home_items_initial_sync:
+ synccalendar1/
+ synccalendar2/
+
+
+ badhrefs
+ $dropbox:/
+
+
+
+
+
+
+ sync-report-home
+
+ changed resource - home depth:infinity
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/2.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_home_items_initial_sync:
+ synccalendar1/
+ synccalendar1/1.ics
+ synccalendar1/2.ics
+ synccalendar2/
+ synccalendar2/1.ics
+ synccalendar2/2.ics
+
+
+ badhrefs
+ $dropbox:/
+
+
+
+
+
+
+
+
+ initial query - grab token
+
+ REPORT
+ $calendarhome1:/synccalendar1/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/2.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_sync_extra_items:
+ 1.ics
+ 2.ics
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ new resource
+
+ PUT
+ $calendarhome1:/synccalendar1/3.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/3.txt
+
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/synccalendar1/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/3.xml
+
+
+ multistatusItems
+
+ okhrefs
+ 3.ics
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken2:
+
+
+
+
+ remove resource (treated as new)
+
+ DELETE
+ $calendarhome1:/synccalendar1/3.ics
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/synccalendar1/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/3.xml
+
+
+ multistatusItems
+
+ badhrefs
+ 3.ics
+
+
+
+
+
+ remove resource (treated as old)
+
+ REPORT
+ $calendarhome1:/synccalendar1/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/4.xml
+
+
+ multistatusItems
+
+ badhrefs
+ 3.ics
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ changed resource
+
+ PUT
+ $calendarhome1:/synccalendar1/1.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/1.txt
+
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/synccalendar1/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/3.xml
+
+
+ multistatusItems
+
+ okhrefs
+ 1.ics
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ no change
+
+ REPORT
+ $calendarhome1:/synccalendar1/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/3.xml
+
+
+ multistatusItems
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+
+
+
+ initial query
+
+ REPORT
+ $calendarhome1:/synccalendar2/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/5.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_sync_extra_items:
+ 1.ics
+ 2.ics
+
+
+
+ propfindItems
+
+ okprops
+ {DAV:}getcontenttype
+ {DAV:}getetag
+
+
+
+
+
+ new resource
+
+ PUT
+ $calendarhome1:/synccalendar2/3.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/6.txt
+
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/synccalendar2/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/5.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_sync_extra_items:
+ 1.ics
+ 2.ics
+ 3.ics
+
+
+
+ propfindItems
+
+ okprops
+ {DAV:}getcontenttype
+ {DAV:}getetag
+
+
+
+
+
+ remove resource new resource
+
+ DELETE
+ $calendarhome1:/synccalendar2/3.ics
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/synccalendar2/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/5.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_sync_extra_items:
+ 1.ics
+ 2.ics
+
+
+
+ propfindItems
+
+ okprops
+ {DAV:}getcontenttype
+ {DAV:}getetag
+
+
+
+
+
+ changed resource
+
+ PUT
+ $calendarhome1:/synccalendar2/1.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/4.txt
+
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/synccalendar2/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/5.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_sync_extra_items:
+ 1.ics
+ 2.ics
+
+
+
+ propfindItems
+
+ okprops
+ {DAV:}getcontenttype
+ {DAV:}getetag
+
+
+
+
+
+
+
+
+ initial query - grab token
+
+ REPORT
+ $calendarhome1:/synccalendar2/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/5.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_sync_extra_items:
+ 1.ics
+ 2.ics
+
+
+
+ propfindItems
+
+ okprops
+ {DAV:}getcontenttype
+ {DAV:}getetag
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ new resource
+
+ PUT
+ $calendarhome1:/synccalendar2/3.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/6.txt
+
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/synccalendar2/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/6.xml
+
+
+ multistatusItems
+
+ okhrefs
+ 3.ics
+
+
+
+ propfindItems
+
+ okprops
+ {DAV:}getcontenttype
+ {DAV:}getetag
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken2:
+
+
+
+
+ remove resource (treated as new)
+
+ DELETE
+ $calendarhome1:/synccalendar2/3.ics
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/synccalendar2/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/6.xml
+
+
+ multistatusItems
+
+ badhrefs
+ 3.ics
+
+
+
+
+
+ remove resource (treated as old)
+
+ REPORT
+ $calendarhome1:/synccalendar2/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/7.xml
+
+
+ multistatusItems
+
+ badhrefs
+ 3.ics
+
+
+
+ propfindItems
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ changed resource
+
+ PUT
+ $calendarhome1:/synccalendar2/1.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/4.txt
+
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/synccalendar2/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/6.xml
+
+
+ multistatusItems
+
+ okhrefs
+ 1.ics
+
+
+
+ propfindItems
+
+ okprops
+ {DAV:}getcontenttype
+ {DAV:}getetag
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ no change
+
+ REPORT
+ $calendarhome1:/synccalendar2/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/6.xml
+
+
+ multistatusItems
+
+
+ propfindItems
+
+ okprops
+ {DAV:}getcontenttype
+ {DAV:}getetag
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+
+
+
+ sync-report-home
+
+
+ Initialize
+
+ DELETE
+ $calendarhome1:/synccalendar1/
+
+
+ DELETE
+ $calendarhome1:/synccalendar2/
+
+
+ MKCALENDAR
+ $calendarhome1:/synccalendar3/
+
+
+ PUT
+ $calendarhome1:/synccalendar3/1.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/7.txt
+
+
+
+ PUT
+ $calendarhome1:/synccalendar3/2.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/8.txt
+
+
+
+ MKCALENDAR
+ $calendarhome1:/synccalendar4/
+
+
+ PUT
+ $calendarhome1:/synccalendar4/1.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/10.txt
+
+
+
+ PUT
+ $calendarhome1:/synccalendar4/2.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/11.txt
+
+
+
+
+ initial query - grab token
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/2.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_home_items_initial_sync:
+ synccalendar3/
+ synccalendar3/1.ics
+ synccalendar3/2.ics
+ synccalendar4/
+ synccalendar4/1.ics
+ synccalendar4/2.ics
+
+
+ badhrefs
+ $dropbox:/
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ new resource
+
+ PUT
+ $calendarhome1:/synccalendar3/3.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/9.txt
+
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/3.xml
+
+
+ multistatusItems
+
+ okhrefs
+ synccalendar3/
+ synccalendar3/3.ics
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken2:
+
+
+
+
+ remove resource (treated as new)
+
+ DELETE
+ $calendarhome1:/synccalendar3/3.ics
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/3.xml
+
+
+ multistatusItems
+
+ okhrefs
+ synccalendar3/
+
+
+ badhrefs
+ synccalendar3/3.ics
+
+
+
+
+
+ remove resource (treated as old)
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/4.xml
+
+
+ multistatusItems
+
+ okhrefs
+ synccalendar3/
+
+
+ badhrefs
+ synccalendar3/3.ics
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ changed resource
+
+ PUT
+ $calendarhome1:/synccalendar3/1.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/7.txt
+
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/3.xml
+
+
+ multistatusItems
+
+ okhrefs
+ synccalendar3/
+ synccalendar3/1.ics
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ no change
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/3.xml
+
+
+ multistatusItems
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+
+
+
+ sync-report-home
+
+
+ initial query - grab token
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/5.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_home_items_initial_sync:
+ synccalendar3/
+ synccalendar3/1.ics
+ synccalendar3/2.ics
+ synccalendar4/
+ synccalendar4/1.ics
+ synccalendar4/2.ics
+
+
+ badhrefs
+ $dropbox:/
+
+
+
+ propfindItems
+
+ ignore
+ $calendarhome1:/$outbox:/
+ $calendarhome1:/$freebusy:
+ $calendarhome1:/$notification:/
+ $calendarhome1:/$dropbox:/
+
+
+ okprops
+ {DAV:}getcontenttype
+ {DAV:}getetag
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ new resource
+
+ PUT
+ $calendarhome1:/synccalendar4/3.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/12.txt
+
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/6.xml
+
+
+ multistatusItems
+
+ okhrefs
+ synccalendar4/
+ synccalendar4/3.ics
+
+
+
+ propfindItems
+
+ okprops
+ {DAV:}getcontenttype
+ {DAV:}getetag
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken2:
+
+
+
+
+ remove resource (treated as new)
+
+ DELETE
+ $calendarhome1:/synccalendar4/3.ics
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/6.xml
+
+
+ multistatusItems
+
+ okhrefs
+ synccalendar4/
+
+
+ badhrefs
+ synccalendar4/3.ics
+
+
+
+
+
+ remove resource (treated as old)
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/7.xml
+
+
+ multistatusItems
+
+ okhrefs
+ synccalendar4/
+
+
+ badhrefs
+ synccalendar4/3.ics
+
+
+
+ propfindItems
+
+ count
+ 2
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ changed resource
+
+ PUT
+ $calendarhome1:/synccalendar4/1.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/10.txt
+
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/6.xml
+
+
+ multistatusItems
+
+ okhrefs
+ synccalendar4/
+ synccalendar4/1.ics
+
+
+
+ propfindItems
+
+ okprops
+ {DAV:}getcontenttype
+ {DAV:}getetag
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ no change
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/6.xml
+
+
+ multistatusItems
+
+
+ propfindItems
+
+ okprops
+ {DAV:}getcontenttype
+ {DAV:}getetag
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+
+
+
+ sync-report-home
+
+
+ initial query - grab token
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/2.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_home_items_initial_sync:
+ synccalendar3/
+ synccalendar3/1.ics
+ synccalendar3/2.ics
+ synccalendar4/
+ synccalendar4/1.ics
+ synccalendar4/2.ics
+
+
+ badhrefs
+ $dropbox:/
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ remove resource then calendar
+
+ DELETE
+ $calendarhome1:/synccalendar3/1.ics
+
+ statusCode
+
+
+
+ DELETE
+ $calendarhome1:/synccalendar3/
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/3.xml
+
+
+ multistatusItems
+
+ badhrefs
+ synccalendar3/
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken2:
+
+
+
+
+ add calendar - test last sync
+
+ MKCALENDAR
+ $calendarhome1:/synccalendar3/
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/4.xml
+
+
+ multistatusItems
+
+ okhrefs
+ synccalendar3/
+
+
+
+
+
+ add calendar - test previous sync
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/3.xml
+
+
+ multistatusItems
+
+ okhrefs
+ synccalendar3/
+
+
+
+
+
+
+
+
+ sync-report-home
+
+
+ Initialize
+
+ DELETE
+ $calendarhome1:/synccalendar1/
+
+
+ DELETE
+ $calendarhome1:/synccalendar2/
+
+
+ MKCALENDAR
+ $calendarhome1:/synccalendar3/
+
+
+ PUT
+ $calendarhome1:/synccalendar3/1.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/7.txt
+
+
+
+ PUT
+ $calendarhome1:/synccalendar3/2.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/8.txt
+
+
+
+ MKCALENDAR
+ $calendarhome1:/synccalendar4/
+
+
+ PUT
+ $calendarhome1:/synccalendar4/1.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/10.txt
+
+
+
+ PUT
+ $calendarhome1:/synccalendar4/2.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/11.txt
+
+
+
+
+ initial query - grab token
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/8.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_home_items_initial_sync:
+ synccalendar3/
+ synccalendar4/
+
+
+ badhrefs
+ $dropbox:/
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ new resource
+
+ PUT
+ $calendarhome1:/synccalendar3/3.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/9.txt
+
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/12.xml
+
+
+ multistatusItems
+
+ okhrefs
+ synccalendar3/
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken2:
+
+
+
+
+ remove resource (treated as new)
+
+ DELETE
+ $calendarhome1:/synccalendar3/3.ics
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/12.xml
+
+
+ multistatusItems
+
+ okhrefs
+ synccalendar3/
+
+
+
+
+
+ remove resource (treated as old)
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/13.xml
+
+
+ multistatusItems
+
+ okhrefs
+ synccalendar3/
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ changed resource
+
+ PUT
+ $calendarhome1:/synccalendar3/1.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/7.txt
+
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/12.xml
+
+
+ multistatusItems
+
+ okhrefs
+ synccalendar3/
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ no change
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/12.xml
+
+
+ multistatusItems
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+
+
+
+ sync-report-home
+
+
+ initial query - grab token
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/14.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_home_items_initial_sync:
+ synccalendar3/
+ synccalendar4/
+
+
+ badhrefs
+ $dropbox:/
+
+
+
+ propfindItems
+
+ ignore
+ $calendarhome1:/$outbox:/
+ $calendarhome1:/$freebusy:
+ $calendarhome1:/$notification:/
+ $calendarhome1:/$dropbox:/
+
+
+ okprops
+ {DAV:}getcontenttype
+ {DAV:}getetag
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ new resource
+
+ PUT
+ $calendarhome1:/synccalendar4/3.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/12.txt
+
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/15.xml
+
+
+ multistatusItems
+
+ okhrefs
+ synccalendar4/
+
+
+
+ propfindItems
+
+ okprops
+ {DAV:}getcontenttype
+ {DAV:}getetag
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken2:
+
+
+
+
+ remove resource (treated as new)
+
+ DELETE
+ $calendarhome1:/synccalendar4/3.ics
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/15.xml
+
+
+ multistatusItems
+
+ okhrefs
+ synccalendar4/
+
+
+
+
+
+ remove resource (treated as old)
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/16.xml
+
+
+ multistatusItems
+
+ okhrefs
+ synccalendar4/
+
+
+
+ propfindItems
+
+ count
+ 1
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ changed resource
+
+ PUT
+ $calendarhome1:/synccalendar4/1.ics
+
+ text/calendar; charset=utf-8
+ Resource/CalDAV/reports/put/10.txt
+
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/15.xml
+
+
+ multistatusItems
+
+ okhrefs
+ synccalendar4/
+
+
+
+ propfindItems
+
+ okprops
+ {DAV:}getcontenttype
+ {DAV:}getetag
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ no change
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/15.xml
+
+
+ multistatusItems
+
+
+ propfindItems
+
+ okprops
+ {DAV:}getcontenttype
+ {DAV:}getetag
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+
+
+
+ sync-report-home
+
+
+ initial query - grab token
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/8.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_home_items_initial_sync:
+ synccalendar3/
+ synccalendar4/
+
+
+ badhrefs
+ $dropbox:/
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ remove resource then calendar
+
+ DELETE
+ $calendarhome1:/synccalendar3/1.ics
+
+ statusCode
+
+
+
+ DELETE
+ $calendarhome1:/synccalendar3/
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/12.xml
+
+
+ multistatusItems
+
+ badhrefs
+ synccalendar3/
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken2:
+
+
+
+
+ add calendar - test last sync
+
+ MKCALENDAR
+ $calendarhome1:/synccalendar3/
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/13.xml
+
+
+ multistatusItems
+
+ okhrefs
+ synccalendar3/
+
+
+
+
+
+ add calendar - test previous sync
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/12.xml
+
+
+ multistatusItems
+
+ okhrefs
+ synccalendar3/
+
+
+
+
+
+
+
+
+ initial query
+
+ REPORT
+ $inboxpath1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/2.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_sync_extra_items:
+
+
+
+
+
+
+
+
+ initial query
+
+ REPORT
+ $calendarpath1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/11.xml
+
+
+ prepostcondition
+
+ error
+ {DAV:}valid-sync-token
+
+
+
+
+
+
+
+
+ sync-report-home
+
+
+ initial query - grab token
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/2.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_home_items_initial_sync:
+ synccalendar3/
+ synccalendar4/
+ synccalendar4/1.ics
+ synccalendar4/2.ics
+
+
+ badhrefs
+ $dropbox:/
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ Change a property
+
+ PROPPATCH
+ $calendarhome1:/synccalendar3/
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/17.xml
+
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/3.xml
+
+
+ multistatusItems
+
+ okhrefs
+ synccalendar3/
+
+
+
+ xmlElementMatch
+
+ exists
+ /{DAV:}multistatus/{DAV:}sync-token[!$synctoken1:]
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ Remove a property
+
+ PROPPATCH
+ $calendarhome1:/synccalendar3/
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/18.xml
+
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/3.xml
+
+
+ multistatusItems
+
+ okhrefs
+ synccalendar3/
+
+
+
+ xmlElementMatch
+
+ exists
+ /{DAV:}multistatus/{DAV:}sync-token[!$synctoken1:]
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+
+
+
+ sync-report-home
+
+
+ initial query - grab token
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/8.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_home_items_initial_sync:
+ synccalendar3/
+ synccalendar4/
+
+
+ badhrefs
+ $dropbox:/
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ Change a property
+
+ PROPPATCH
+ $calendarhome1:/synccalendar3/
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/17.xml
+
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/12.xml
+
+
+ multistatusItems
+
+ okhrefs
+ synccalendar3/
+
+
+
+ xmlElementMatch
+
+ exists
+ /{DAV:}multistatus/{DAV:}sync-token[!$synctoken1:]
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ Remove a property
+
+ PROPPATCH
+ $calendarhome1:/synccalendar3/
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/18.xml
+
+
+ statusCode
+
+
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/12.xml
+
+
+ multistatusItems
+
+ okhrefs
+ synccalendar3/
+
+
+
+ xmlElementMatch
+
+ exists
+ /{DAV:}multistatus/{DAV:}sync-token[!$synctoken1:]
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+
+
+
+
+ sync-report-home
+
+
+ initial query - grab token
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/8.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_home_items_initial_sync:
+ synccalendar3/
+ synccalendar4/
+
+
+ badhrefs
+ $dropbox:/
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ Change property on Inbox
+
+ PROPPATCH
+ $inboxpath1:/
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/19.xml
+
+
+ propfindItems
+
+ okprops
+ {urn:ietf:params:xml:ns:caldav}schedule-default-calendar-URL
+
+
+
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/12.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $inbox:/
+
+
+
+ xmlElementMatch
+
+ exists
+ /{DAV:}multistatus/{DAV:}sync-token[!$synctoken1:]
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ Reset the property
+
+ PROPPATCH
+ $inboxpath1:/
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/20.xml
+
+
+ propfindItems
+
+ okprops
+ {urn:ietf:params:xml:ns:caldav}schedule-default-calendar-URL
+
+
+
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/12.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $inbox:/
+
+
+
+ xmlElementMatch
+
+ exists
+ /{DAV:}multistatus/{DAV:}sync-token[!$synctoken1:]
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+
+
+
+
+ sync-report-home
+
+
+ initial query - grab token
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/22.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar_home_items_initial_sync:
+ synccalendar3/
+ synccalendar4/
+
+
+ badhrefs
+ $dropbox:/
+
+
+
+ dataString
+
+ contains
+ opaque
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ Change property on calendar
+
+ PROPPATCH
+ $calendarpath1:/
+
+ text/xml; charset=utf-8
+ Resource/Common/PROPPATCH/calendar-transp-transparent.xml
+
+
+ propfindItems
+
+ okprops
+ {urn:ietf:params:xml:ns:caldav}schedule-calendar-transp
+
+
+
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/23.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar:/
+
+
+
+ xmlElementMatch
+
+ exists
+ /{DAV:}multistatus/{DAV:}sync-token[!$synctoken1:]
+
+
+
+ dataString
+
+ contains
+ transparent
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+ Reset the property
+
+ PROPPATCH
+ $calendarpath1:/
+
+ text/xml; charset=utf-8
+ Resource/Common/PROPPATCH/calendar-transp-opaque.xml
+
+
+ propfindItems
+
+ okprops
+ {urn:ietf:params:xml:ns:caldav}schedule-calendar-transp
+
+
+
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/23.xml
+
+
+ multistatusItems
+
+ okhrefs
+ $calendar:/
+
+
+
+ xmlElementMatch
+
+ exists
+ /{DAV:}multistatus/{DAV:}sync-token[!$synctoken1:]
+
+
+
+ dataString
+
+ contains
+ opaque
+
+
+
+ /{DAV:}multistatus/{DAV:}sync-token
+ $synctoken1:
+
+
+
+
+
+
+
+
+
+ sync-report-home
+
+
+ initial query - no minimal
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/24.xml
+
+
+ dataString
+
+ contains
+ foobar
+
+
+
+
+
+ initial query - with minimal
+
+ REPORT
+ $calendarhome1:/
+
+
+ Prefer
+ return=minimal
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/24.xml
+
+
+ dataString
+
+ notcontains
+ foobar
+
+
+
+
+
+
+
+
+
+
+ sync-report-limit
+
+ Limit not allowed
+
+ REPORT
+ $calendarhome1:/
+
+
+ text/xml; charset=utf-8
+ Resource/CalDAV/reports/sync/21.xml
+
+
+ prepostcondition
+
+ error
+ {DAV:}number-of-matches-within-limits
+
+
+
+
+
+
+
+
+
diff --git a/apps/dav/tests/travis/carddavtester/install.sh b/apps/dav/tests/travis/carddav/install.sh
similarity index 100%
rename from apps/dav/tests/travis/carddavtester/install.sh
rename to apps/dav/tests/travis/carddav/install.sh
diff --git a/apps/dav/tests/travis/carddavtester/script.sh b/apps/dav/tests/travis/carddav/script.sh
similarity index 100%
rename from apps/dav/tests/travis/carddavtester/script.sh
rename to apps/dav/tests/travis/carddav/script.sh