Code Repositories xandikos / caldavtester
More work on caldavtester. Jelmer Vernooń≥ 2 years ago
3 changed file(s) with 105 addition(s) and 14 deletion(s). Raw diff Collapse all Expand all
44 TESTSUITE = xandikos.tests.test_suite
55 LITMUS_TESTS ?= basic http
66 XANDIKOS_COVERAGE ?= $(COVERAGE_RUN) -a --rcfile=$(shell pwd)/.coveragerc --source=xandikos -m xandikos.web
7 CALDAVTESTER_TESTS ?=
78
89 check:
910 $(PYTHON) -m unittest $(TESTSUITE)
2627 check-vdirsyncer:
2728 ./compat/xandikos-vdirsyncer.sh
2829
30 check-vdirsyncer-all: check-vdirsyncer
31
2932 coverage-vdirsyncer:
3033 PYTEST_ARGS="--cov-config $(shell pwd)/.coveragerc --cov-append --cov $(shell pwd)/xandikos" ./compat/xandikos-vdirsyncer.sh
3134 $(COVERAGE) combine -a compat/vdirsyncer/.coverage
3235
3336 check-caldavtester:
37 TESTS="$(CALDAVTESTER_TESTS)" ./compat/xandikos-caldavtester.sh
38
39 check-caldavtester-all:
3440 ./compat/xandikos-caldavtester.sh
3541
3642 coverage-caldavtester:
2727 <waitdelay>0.25</waitdelay>
2828
2929 <features>
30 <!--
31 <feature>COPY Method</feature>
32 <feature>MOVE Method</feature>
33 <feature>ctag</feature>
34 <feature>directory listing</feature>
35 <feature>caldav</feature>
36 <feature>no-duplicate-uids</feature>
37 <feature>carddav</feature>
38 <feature>default-addressbook</feature>
39 <feature>shared-addressbooks</feature>-->
30 <!-- Generic WebDAV extensions -->
31 <!-- <feature>COPY Method</feature> --> <!-- COPY method -->
32 <!-- <feature>MOVE Method</feature> --> <!-- MOVE method -->
33 <feature>Extended MKCOL</feature> <!-- Extended MKCOL -->
34
35 <!-- ACL related -->
36 <!-- <feature>ACL Method</feature> --> <!-- ACL method -->
37 <!-- <feature>acl-principal-prop-set REPORT</feature> --> <!-- ACL acl-principal-prop-set REPORT -->
38 <!-- <feature>principal-match REPORT</feature> --> <!-- ACL principal-match REPORT -->
39 <!-- <feature>principal-property-search REPORT</feature> --> <!-- ACL principal-property-search REPORT -->
40 <!-- <feature>principal-search-property-set REPORT</feature> --> <!-- ACL principal-search-property-set REPORT -->
41 <!-- <feature>calendarserver-principal-search REPORT</feature> --> <!-- ACL calendarserver-principal-search REPORT -->
42
43 <feature>add-member</feature> <!-- Add-member used to create resources -->
44 <!-- <feature>auth-on-root</feature> --> <!-- Whether the server requires authentication on the root URI -->
45 <!-- <feature>brief</feature> --> <!-- Brief header for PROPFIND, REPORT -->
46 <!-- <feature>bulk-post</feature> --> <!-- Bulk POST requests -->
47 <feature>ctag</feature> <!-- ctag extension -->
48 <!-- <feature>current-user-principal</feature> --> <!-- current-user-principal extension -->
49 <!-- <feature>directory listing</feature> --> <!-- GET on collection -->
50 <!-- <feature>extended-principal-search</feature> --> <!-- Extended principal-property-search REPORT extension -->
51 <feature>expand-property</feature> <!-- Expand property REPORT -->
52 <!-- <feature>only-proxy-groups</feature> --> <!-- Group-membership only includes delegated-to groups -->
53 <!-- <feature>limits</feature> --> <!-- max-collections and max-resources limits -->
54 <feature>own-root</feature> <!-- / is owned by this service -->
55 <!-- <feature>prefer</feature> --> <!-- Prefer header overall support -->
56 <!-- <feature>prefer-minimal</feature> --> <!-- Prefer header return=minimal -->
57 <!-- <feature>prefer-representation</feature> --> <!-- Prefer header return=representation -->
58 <!-- <feature>prefer-noroot</feature> --> <!-- Prefer header depth-noroot -->
59 <!-- <feature>quota</feature> --> <!-- WebDAV QUOTA -->
60 <!-- <feature>quota-on-resources</feature> --> <!-- WebDAV QUOTA on calendar and address book object resources -->
61 <!-- <feature>resource-id</feature> --> <!-- WebDAV BIND DAV:resource-id property -->
62 <feature>sync-report</feature> <!-- WebDAV collection sync REPORT -->
63 <!-- <feature>sync-report-limit</feature> --> <!-- WebDAV collection sync REPORT DAV:limit support -->
64 <!-- <feature>sync-report-home</feature> --> <!-- WebDAV collection sync REPORT on Homes -->
65 <!-- <feature>sync-report-config-token</feature> --> <!-- Sync REPORT token includes configuration component -->
66 <!-- <feature>well-known</feature> --> <!-- well-known feature -->
67
68 <!-- <feature>per-object-ACLs</feature> --> <!-- ACL for objects in calendar/address books -->
69 <!-- <feature>regular-collection</feature> --> <!-- Regular collections allowed in calendar/address book homes -->
70
71 <!-- <feature>json-data</feature> --> <!-- jCal and jCard support -->
72
73 <!-- CalendarServer specific extensions -->
74 <!-- <feature>control-api</feature> --> <!-- Control API support -->
75
76 <!-- CalDAV specific extension -->
77 <!-- <feature>caldav</feature> --> <!-- Basic CalDAV feature enabler -->
78 <!-- <feature>attachments-collection</feature> --> <!-- Server uses a collection in same WebDAV tree to store attachments -->
79 <!-- <feature>auto-accept</feature> --> <!-- Auto-accept for rooms & locations -->
80 <!-- <feature>auto-accept-modes</feature> --> <!-- Auto-accept modes -->
81 <!-- <feature>client-fix-TRANSP</feature> --> <!-- fix client TRANSP -->
82 <!-- <feature>dropbox</feature> --> <!-- dropbox extension -->
83 <!-- <feature>default-alarms</feature> --> <!-- default alarms extension -->
84 <!-- <feature>EMAIL parameter</feature> --> <!-- Server normalizes cuaddress and adds EMAIL parameter -->
85 <!-- <feature>extended-freebusy</feature> --> <!-- Extended freebusy response -->
86 <!-- <feature>freebusy-url</feature> --> <!-- Freebusy URL -->
87 <!-- <feature>group-attendee-expansion</feature> --> <!-- Auto-expansion of group attendees -->
88 <!-- <feature>implicit-scheduling</feature> --> <!-- CalDAV scheduling - implicit -->
89 <!-- <feature>location-resource-tracking</feature> --> <!-- Server tracks who makes unscheduled changes to locations and resources -->
90 <!-- <feature>managed-attachments</feature> --> <!-- CalDAV Managed Attachments -->
91 <!-- <feature>maskuid</feature> --> <!-- maskuid extension -->
92 <!-- <feature>no-duplicate-uids</feature> --> <!-- duplicate UIDs in same home not supported -->
93 <!-- <feature>partstat-timestamp</feature> --> <!-- Time stamps when PARTSTAT changes extension -->
94 <!-- <feature>podding</feature> --> <!-- Podded server -->
95 <!-- <feature>private-comments</feature> --> <!-- private-comments extension -->
96 <!-- <feature>private-events</feature> --> <!-- private-events extension -->
97 <!-- <feature>proxy</feature> --> <!-- calendar-user-proxy extension -->
98 <!-- <feature>proxy-authz</feature> --> <!-- sudo user extension -->
99 <!-- <feature>recurrence-splitting</feature> --> <!-- Recurring components can be split -->
100 <!-- <feature>remove-duplicate-alarms</feature> --> <!-- Server removes any duplicate alarms on PUT -->
101 <!-- <feature>query-extended</feature> --> <!-- calendar-query-extended extension -->
102 <!-- <feature>shared-calendars</feature> --> <!-- Shared calendars extension -->
103 <!-- <feature>share-calendars-to-groups</feature> --> <!-- Share calendars to groups extension -->
104 <!-- <feature>schedule-changes</feature> --> <!-- schedule-changes property extension -->
105 <!-- <feature>split-calendars</feature> --> <!-- Calendars are split by component type -->
106 <!-- <feature>supported-component-sets</feature> --> <!-- CALDAV:supported-calendar-component-sets on calendar homes -->
107 <!-- <feature>supported-component-sets-one</feature> --> <!-- Only single component calendars allowed to be created -->
108 <!-- <feature>timerange-low-limit</feature> --> <!-- Time-range only valid one year back -->
109 <!-- <feature>timerange-high-limit</feature> --> <!-- Time-range only valid 5 years ahead -->
110 <!-- <feature>timezones-by-reference</feature> --> <!-- Timezones by reference enabled -->
111 <!-- <feature>timezone-service</feature> --> <!-- Timezone service extension for Wiki -->
112 <!-- <feature>timezone-std-service</feature> --> <!-- Timezone standard service extension -->
113 <!-- <feature>trash-collection</feature> --> <!-- Trash collection enabled -->
114 <!-- <feature>travel-time-busy</feature> --> <!-- Travel time appears as busy -->
115 <!-- <feature>vavailability</feature> --> <!-- VAVAILABILITY on inbox -->
116 <!-- <feature>vpoll</feature> --> <!-- VPOLL support for store and scheduling -->
117 <!-- <feature>webcal</feature> --> <!-- Internet calendar subscription via GET on calendar collection -->
118
119 <!-- CardDAV specific extension -->
120 <!-- <feature>carddav</feature> --> <!-- Basic CardDAV feature enabler -->
121 <!-- <feature>default-addressbook</feature> --> <!-- Default address book behavior -->
122 <!-- <feature>shared-addressbooks</feature> --> <!-- Shared address books extension -->
123 <!-- <feature>shared-addressbook-groups</feature> --> <!-- Shared groups extension -->
40124 <!-- <feature>directory-gateway</feature> --> <!-- Directory gateway extension -->
125
41126 </features>
42127
43128 <substitutions>
92177 <!-- relative path to main principal collection-->
93178 <substitution>
94179 <key>$principalcollection:</key>
95 <value>$root:principals/</value>
180 <value>$root:</value>
96181 </substitution>
97182
98183 <!-- the core recored type collections-->
124209 </substitution>
125210 <substitution>
126211 <key>$principals_users:</key>
127 <value>$principalcollection:$userstype:/</value>
212 <value>$principalcollection:</value>
128213 </substitution>
129214 <substitution>
130215 <key>$principals_groups:</key>
471556 <!-- relative path to user addressbook home-->
472557 <substitution>
473558 <key>$addressbookhome%d:</key>
474 <value>$addressbooks_uids:$userguid%d:</value>
559 <value>$principal%d:contacts</value>
475560 </substitution>
476561 <!-- relative path to user addressbook-->
477562 <substitution>
55
66 CFGDIR=$(readlink -f $(dirname $0))
77
8 run_xandikos --defaults
8 run_xandikos --defaults --current-user-principal=/user01/
99
1010 if which testcaldav >/dev/null; then
1111 TESTCALDAV=testcaldav