diff --git a/testing/tests/carddav/2003-PUT-vcard.result b/testing/tests/carddav/2003-PUT-vcard.result index cd569034..37a96692 100644 --- a/testing/tests/carddav/2003-PUT-vcard.result +++ b/testing/tests/carddav/2003-PUT-vcard.result @@ -9,7 +9,7 @@ Content-Type: text/plain; charset="utf-8" caladruri: >mailto:andrew@morphoss.com< caluri: >https://dotcal.com/karora< - dav_etag: >0e12d26afe2e96308cba4e68ad02ed96< + dav_etag: >cd185c7dd9bf18bcfcec4190442f2113< dav_name: >/user1/addressbook/andrew_mcmillan.vcf< fburl: >https://davical.morphoss.com/freebusy.php/andrew@morphoss.com< fn: >Andrew Watson McMillan< diff --git a/testing/tests/carddav/2003-PUT-vcard.test b/testing/tests/carddav/2003-PUT-vcard.test index 883903fc..b8cf9612 100644 --- a/testing/tests/carddav/2003-PUT-vcard.test +++ b/testing/tests/carddav/2003-PUT-vcard.test @@ -20,7 +20,7 @@ TEL;X-EVOLUTION-UI-SLOT=2;TYPE=HOME,VOICE:+64 4 123 4567 TEL;X-EVOLUTION-UI-SLOT=1;TYPE=WORK,VOICE:+64 22 123 4567 EMAIL;X-EVOLUTION-UI-SLOT=2;TYPE=HOME:andrew@mcmillan.net.nz EMAIL;X-EVOLUTION-UI-SLOT=1;TYPE=WORK:andrew@morphoss.com -PHOTO;ENCODING=b;TYPE="X-EVOLUTION-UNKNOWN":/9j/4AAQSkZJRgABAQEASABIAAD//gA +PHOTO;BASE64;ENCODING=b;TYPE="X-EV-UNKNOWN":/9j/4AAQSkZJRgABAQEASABIAAD//gA RQW5kcmV3IE1jTWlsbGFu/9sAQwAEAwMDAwIEAwMDBAQEBQYKBgYFBQYMCAkHCg4MDw4ODA0ND xEWEw8QFRENDRMaExUXGBkZGQ8SGx0bGB0WGBkY/9sAQwEEBAQGBQYLBgYLGBANEBgYGBgYGBg YGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgY/8AAEQgAQABAAwEiA diff --git a/testing/tests/carddav/2006-PUT-vcard.result b/testing/tests/carddav/2006-PUT-vcard.result index 0e2aea35..2f2e75c6 100644 --- a/testing/tests/carddav/2006-PUT-vcard.result +++ b/testing/tests/carddav/2006-PUT-vcard.result @@ -7,11 +7,11 @@ Content-Type: text/plain; charset="utf-8" caladruri: >NULL< caluri: >NULL< - dav_etag: >e36abdbed9f9996064ca54583616d32b< + dav_etag: >593d82b1c3830ed3aaef2b8293452275< dav_name: >/user1/addressbook/donald_kelly.vcf< fburl: >NULL< fn: >Donald Kelly< - n: >Kelly;Donald< + n: >Kelly;Donald;;;< nickname: >NULL< note: >NULL< org: >Esposo Designs Ltd< diff --git a/testing/tests/carddav/2006-PUT-vcard.test b/testing/tests/carddav/2006-PUT-vcard.test index ded7bd88..bf8c9b86 100644 --- a/testing/tests/carddav/2006-PUT-vcard.test +++ b/testing/tests/carddav/2006-PUT-vcard.test @@ -10,7 +10,7 @@ HEAD BEGINDATA begin:vcard fn:Donald Kelly -n:Kelly;Donald +n:Kelly;Donald;;; org:Esposo Designs Ltd adr:;;25 Rintoul St;Newtown;Wellington;;New Zealand email;type=internet:donald@example.co.nz diff --git a/testing/tests/carddav/2007-GET-arbitrary.result b/testing/tests/carddav/2007-GET-arbitrary.result index 4e0c4cea..828c467c 100644 --- a/testing/tests/carddav/2007-GET-arbitrary.result +++ b/testing/tests/carddav/2007-GET-arbitrary.result @@ -3,7 +3,7 @@ Date: Dow, 01 Jan 2000 00:00:00 GMT DAV: 1, 2, access-control, calendar-access, calendar-schedule, extended-mkcol, calendar-proxy, bind, calendar-auto-schedule Etag: "" Content-Length: 320 -Content-Type: text/calendar; charset="utf-8" +Content-Type: text/plain; charset="utf-8" Once upon a time there was an old, old man who lived with a great white wolf. As is often the habit with men, he had not always been diff --git a/testing/tests/carddav/2010-PROPFIND.result b/testing/tests/carddav/2010-PROPFIND.result new file mode 100644 index 00000000..813a95af --- /dev/null +++ b/testing/tests/carddav/2010-PROPFIND.result @@ -0,0 +1,22 @@ +HTTP/1.1 207 Multi-Status +Date: Dow, 01 Jan 2000 00:00:00 GMT +DAV: 1, 2, access-control, calendar-access, calendar-schedule, extended-mkcol, calendar-proxy, bind, calendar-auto-schedule +ETag: "5693523c52feb458d900cd83d782dcc0" +Content-Length: 339 +Content-Type: text/xml; charset="utf-8" + + + + + /caldav.php/user1/addressbook/ + + + "aeee1cdd38eb0169a612a8f83af55288" + + HTTP/1.1 200 OK + + + + + dav_etag: >aeee1cdd38eb0169a612a8f83af55288< + diff --git a/testing/tests/carddav/2010-PROPFIND.test b/testing/tests/carddav/2010-PROPFIND.test new file mode 100644 index 00000000..62d2abb8 --- /dev/null +++ b/testing/tests/carddav/2010-PROPFIND.test @@ -0,0 +1,27 @@ +# +# PROPFIND on addressbook resource +# +TYPE=PROPFIND +URL=http://mycaldav/caldav.php/user1/addressbook/ +HEADER=User-Agent: DAViCalTester/public +HEADER=Content-Type: text/xml +HEADER=Depth: 0 +HEAD + + +BEGINDATA + + + + + + +ENDDATA + + +QUERY +SELECT dav_etag +FROM collection +WHERE dav_name = '/user1/addressbook/'; +ENDQUERY + diff --git a/testing/tests/carddav/2011-PROPFIND.result b/testing/tests/carddav/2011-PROPFIND.result new file mode 100644 index 00000000..f14fcd36 --- /dev/null +++ b/testing/tests/carddav/2011-PROPFIND.result @@ -0,0 +1,57 @@ +HTTP/1.1 207 Multi-Status +Date: Dow, 01 Jan 2000 00:00:00 GMT +DAV: 1, 2, access-control, calendar-access, calendar-schedule, extended-mkcol, calendar-proxy, bind, calendar-auto-schedule +ETag: "87c62dca0158f7c6765695ccdedfa628" +Content-Length: 1028 +Content-Type: text/xml; charset="utf-8" + + + + + /caldav.php/user1/addressbook/ + + + HTTP/1.1 200 OK + + + + + + HTTP/1.1 404 Not Found + + + + /caldav.php/user1/addressbook/strumar_and_beren.txt + + + "a83ff0ef143f108d2062c8534506d801" + + HTTP/1.1 200 OK + + + + /caldav.php/user1/addressbook/andrew_mcmillan.vcf + + + "cd185c7dd9bf18bcfcec4190442f2113" + + HTTP/1.1 200 OK + + + + /caldav.php/user1/addressbook/donald_kelly.vcf + + + "593d82b1c3830ed3aaef2b8293452275" + + HTTP/1.1 200 OK + + + + + dav_etag: >a83ff0ef143f108d2062c8534506d801< + + dav_etag: >cd185c7dd9bf18bcfcec4190442f2113< + + dav_etag: >593d82b1c3830ed3aaef2b8293452275< + diff --git a/testing/tests/carddav/2011-PROPFIND.test b/testing/tests/carddav/2011-PROPFIND.test new file mode 100644 index 00000000..03ec3ed2 --- /dev/null +++ b/testing/tests/carddav/2011-PROPFIND.test @@ -0,0 +1,29 @@ +# +# PROPFIND on addressbook resource +# Depth 1 this time, and looking for getetag +# +TYPE=PROPFIND +URL=http://mycaldav/caldav.php/user1/addressbook/ +HEADER=User-Agent: DAViCalTester/public +HEADER=Content-Type: text/xml +HEADER=Depth: 1 +HEAD + + +BEGINDATA + + + + + + +ENDDATA + + +QUERY +SELECT caldav_data.dav_etag +FROM collection LEFT JOIN caldav_data USING(collection_id) +WHERE collection.dav_name = '/user1/addressbook/' +ORDER BY caldav_data.dav_id +ENDQUERY + diff --git a/testing/tests/carddav/2012-REPORT-addressbook-multiget.result b/testing/tests/carddav/2012-REPORT-addressbook-multiget.result new file mode 100644 index 00000000..a1dec685 --- /dev/null +++ b/testing/tests/carddav/2012-REPORT-addressbook-multiget.result @@ -0,0 +1,128 @@ +HTTP/1.1 207 Multi-Status +Date: Dow, 01 Jan 2000 00:00:00 GMT +DAV: 1, 2, access-control, calendar-access, calendar-schedule, extended-mkcol, calendar-proxy, bind, calendar-auto-schedule +ETag: "9f618233815d1c8503830b64c28a36ae" +Content-Length: 5164 +Content-Type: text/xml; charset="utf-8" + + + + + /caldav.php/user1/addressbook/strumar_and_beren.txt + + + "a83ff0ef143f108d2062c8534506d801" + + HTTP/1.1 200 OK + + + + + + HTTP/1.1 404 Not Found + + + + /caldav.php/user1/addressbook/andrew_mcmillan.vcf + + + "cd185c7dd9bf18bcfcec4190442f2113" + BEGIN:VCARD +VERSION:3.0 +REV:2010-03-29T09:23:34Z +UID:pas-id-4BB0719600000000 +X-SKYPE;X-EVOLUTION-UI-SLOT=1;TYPE=HOME:karora__ +X-JABBER;X-EVOLUTION-UI-SLOT=3;TYPE=HOME:karora@irc.oftc.net +TEL;X-EVOLUTION-UI-SLOT=3;TYPE=CELL:+64 22 123 4567 +TEL;X-EVOLUTION-UI-SLOT=2;TYPE=HOME,VOICE:+64 4 123 4567 +TEL;X-EVOLUTION-UI-SLOT=1;TYPE=WORK,VOICE:+64 22 123 4567 +EMAIL;X-EVOLUTION-UI-SLOT=2;TYPE=HOME:andrew@mcmillan.net.nz +EMAIL;X-EVOLUTION-UI-SLOT=1;TYPE=WORK:andrew@morphoss.com +PHOTO;BASE64;ENCODING=b;TYPE="X-EV-UNKNOWN":/9j/4AAQSkZJRgABAQEASABIAAD//gA + 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 + ug5Hqc7Lmwfc//Z +LABEL;TYPE=HOME:16 Kaka Place\nPorikana\n4173\nNew Zealand +ADR;TYPE=HOME:;;16 Kaka Place;Porikana;;4173;New Zealand +X-MOZILLA-HTML:FALSE +X-EVOLUTION-VIDEO-URL: +FBURL:https://davical.morphoss.com/freebusy.php/andrew@morphoss.com +CALADRURI:mailto:andrew@morphoss.com +CALURI:https://dotcal.com/karora +X-EVOLUTION-BLOG-URL:http://andrew.mcmillan.net.nz/ +CATEGORIES:Developer,Personal,Debian, +X-EVOLUTION-FILE-AS:McMillan\, Andrew +N:McMillan;Andrew;Watson;; +FN:Andrew Watson McMillan +NOTE:Primary author of DAViCal CalDAV Server. +X-EVOLUTION-SPOUSE:Heather Buchanan +X-EVOLUTION-ANNIVERSARY:1989-04-22 +BDAY:1958-07-26 +NICKNAME:karora +X-EVOLUTION-ASSISTANT: +X-EVOLUTION-MANAGER: +ROLE:Geek +ORG:dotCal;;Porirua +TITLE:Chief Technology Officer +URL:http://andrew.mcmillan.net.nz/ +END:VCARD + + + HTTP/1.1 200 OK + + + + /caldav.php/user1/addressbook/donald_kelly.vcf + + + "593d82b1c3830ed3aaef2b8293452275" + begin:vcard +fn:Donald Kelly +n:Kelly;Donald;;; +org:Esposo Designs Ltd +adr:;;25 Rintoul St;Newtown;Wellington;;New Zealand +email;type=internet:donald@example.co.nz +title:Proprietor +tel;type=work:+64 4 347 4747 +tel;type=cell:+64 2 1234-4321 +x-mozilla-html:TRUE +url:www.example.co.nz +version:2.1 +end:vcard + + + HTTP/1.1 200 OK + + + diff --git a/testing/tests/carddav/2012-REPORT-addressbook-multiget.test b/testing/tests/carddav/2012-REPORT-addressbook-multiget.test new file mode 100644 index 00000000..88ad0ac2 --- /dev/null +++ b/testing/tests/carddav/2012-REPORT-addressbook-multiget.test @@ -0,0 +1,24 @@ +# +# addressbook-multiget REPORT on addressbook resource +# +TYPE=REPORT +URL=http://mycaldav/caldav.php/user1/addressbook/ +HEADER=User-Agent: DAViCalTester/public +HEADER=Content-Type: text/xml +HEAD + + +BEGINDATA + + + + + + + /caldav.php/user1/addressbook/strumar_and_beren.txt + /caldav.php/user1/addressbook/andrew_mcmillan.vcf + /caldav.php/user1/addressbook/donald_kelly.vcf + +ENDDATA + + diff --git a/testing/tests/carddav/2013-PUT-vcard.result b/testing/tests/carddav/2013-PUT-vcard.result new file mode 100644 index 00000000..242c1f65 --- /dev/null +++ b/testing/tests/carddav/2013-PUT-vcard.result @@ -0,0 +1,37 @@ +HTTP/1.1 201 Created +Date: Dow, 01 Jan 2000 00:00:00 GMT +DAV: 1, 2, access-control, calendar-access, calendar-schedule, extended-mkcol, calendar-proxy, bind, calendar-auto-schedule +Content-Length: 0 +Content-Type: text/plain; charset="utf-8" + + + caladruri: >NULL< + caluri: >NULL< + dav_etag: >1e88f301c87218b715a3d4be81a14337< + dav_name: >/user1/addressbook/F06EC844-EACD-4ADF-8823-588603991E04-ABSPlugin.vcf< + fburl: >NULL< + fn: >Morphoss Ltd< + n: >McMillan;Andrew;;;< + nickname: >NULL< + note: >NULL< + org: >Morphoss Ltd;< + uid: >F26B8512-45DA-49ED-B285-23E64B0A68D1-ABSPlugin< + url: >NULL< + version: >3.0< + + box_no: >NULL< + country: >NULL< + locality: >NULL< + postcode: >NULL< + property: >NULL< + region: >NULL< + street_address: >NULL< + type: >NULL< + unit_no: >NULL< + + tel: >64272332426< + type: >pref< + + email: >andrew+davical@morphoss.com< + type: >pref< + diff --git a/testing/tests/carddav/2013-PUT-vcard.test b/testing/tests/carddav/2013-PUT-vcard.test new file mode 100644 index 00000000..48149df4 --- /dev/null +++ b/testing/tests/carddav/2013-PUT-vcard.test @@ -0,0 +1,61 @@ +# +# PUT a VCARD record into an addressbook +# +TYPE=PUT +URL=http://regression.host/caldav.php/user1/addressbook/F06EC844-EACD-4ADF-8823-588603991E04-ABSPlugin.vcf + +HEADER=User-Agent: DAViCalTester/public +HEADER=Content-Type: text/vcard; charset=utf-8 +HEADER=If-None-Match: * +HEAD + +BEGINDATA +BEGIN:VCARD +VERSION:3.0 +N:McMillan;Andrew;;; +FN:Morphoss Ltd +ORG:Morphoss Ltd; +EMAIL;type=INTERNET;type=WORK;type=pref:andrew+davical@morphoss.com +TEL;type=WORK;type=pref:+64272332426 +X-ABShowAs:COMPANY +X-ABUID:3CF7BF91-2E75-462A-80DC-7845E8AAB985\:ABPerson +UID:F26B8512-45DA-49ED-B285-23E64B0A68D1-ABSPlugin +REV:2010-06-23T00:00:21Z +END:VCARD +ENDDATA + +QUERY +SELECT caldav_data.dav_name, caldav_data.dav_etag, + version, uid, nickname, fn, n, note, org, url, fburl, caladruri, caluri + FROM caldav_data LEFT JOIN addressbook_resource USING(dav_id) + WHERE caldav_data.dav_name ~ '/user1/addressbook/F06EC844-EACD-4ADF-8823-588603991E04-ABSPlugin.vcf' +ENDQUERY + +QUERY +SELECT + type, box_no, unit_no, street_address, locality, region, postcode, country, property + FROM caldav_data + LEFT JOIN addressbook_address_adr USING(dav_id) + WHERE caldav_data.dav_name ~ '/user1/addressbook/F06EC844-EACD-4ADF-8823-588603991E04-ABSPlugin.vcf' + ORDER BY dav_id, property +ENDQUERY + +QUERY +SELECT + addressbook_address_tel.type, addressbook_address_tel.tel + FROM caldav_data + LEFT JOIN addressbook_address_tel USING(dav_id) + WHERE caldav_data.dav_name ~ '/user1/addressbook/F06EC844-EACD-4ADF-8823-588603991E04-ABSPlugin.vcf' + ORDER BY dav_id, property +ENDQUERY + +QUERY +SELECT + addressbook_address_email.type, addressbook_address_email.email + FROM caldav_data + LEFT JOIN addressbook_address_email USING(dav_id) + WHERE caldav_data.dav_name ~ '/user1/addressbook/F06EC844-EACD-4ADF-8823-588603991E04-ABSPlugin.vcf' + ORDER BY dav_id, property +ENDQUERY + + diff --git a/testing/tests/carddav/2014-PUT-vcard.result b/testing/tests/carddav/2014-PUT-vcard.result new file mode 100644 index 00000000..9d14e319 --- /dev/null +++ b/testing/tests/carddav/2014-PUT-vcard.result @@ -0,0 +1,39 @@ +HTTP/1.1 100 Continue + +HTTP/1.1 200 OK +Date: Dow, 01 Jan 2000 00:00:00 GMT +DAV: 1, 2, access-control, calendar-access, calendar-schedule, extended-mkcol, calendar-proxy, bind, calendar-auto-schedule +Content-Length: 0 +Content-Type: text/plain; charset="utf-8" + + + caladruri: >NULL< + caluri: >NULL< + dav_etag: >1c9f5623adf814e4f7a88367c54b06d3< + dav_name: >/user1/addressbook/F06EC844-EACD-4ADF-8823-588603991E04-ABSPlugin.vcf< + fburl: >NULL< + fn: >Morphoss Ltd< + n: >McMillan;Andrew;;;< + nickname: >NULL< + note: >NULL< + org: >Morphoss Ltd;< + uid: >F26B8512-45DA-49ED-B285-23E64B0A68D1-ABSPlugin< + url: >NULL< + version: >3.0< + + box_no: >NULL< + country: >NULL< + locality: >NULL< + postcode: >NULL< + property: >NULL< + region: >NULL< + street_address: >NULL< + type: >NULL< + unit_no: >NULL< + + tel: >64272332426< + type: >pref< + + email: >andrew+davical@morphoss.com< + type: >pref< + diff --git a/testing/tests/carddav/2014-PUT-vcard.test b/testing/tests/carddav/2014-PUT-vcard.test new file mode 100644 index 00000000..f4a4cb76 --- /dev/null +++ b/testing/tests/carddav/2014-PUT-vcard.test @@ -0,0 +1,375 @@ +# +# PUT a VCARD record into an addressbook +# +TYPE=PUT +URL=http://regression.host/caldav.php/user1/addressbook/F06EC844-EACD-4ADF-8823-588603991E04-ABSPlugin.vcf + +HEADER=User-Agent: DAViCalTester/public +HEADER=Content-Type: text/vcard; charset=utf-8 +HEADER=If-None-Match: * +HEAD + +BEGINDATA +BEGIN:VCARD +VERSION:3.0 +N:McMillan;Andrew;;; +FN:Morphoss Ltd +ORG:Morphoss Ltd; +EMAIL;type=INTERNET;type=WORK;type=pref:andrew+davical@morphoss.com +TEL;type=WORK;type=pref:+64272332426 +PHOTO;BASE64: + /9j/4AAQSkZJRgABAQAAAQABAAD/4QBARXhpZgAATU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAA + AqACAAQAAAABAAAA2qADAAQAAAABAAAA2gAAAAD/2wBDAAIBAQIBAQICAQICAgICAwUDAwMDAwYE + BAMFBwYHBwcGBgYHCAsJBwgKCAYGCQ0JCgsLDAwMBwkNDg0MDgsMDAv/2wBDAQICAgMCAwUDAwUL + CAYICwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwv/wAAR + CADaANoDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgED + AwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRol + JicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWW + l5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3 + +Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3 + AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5 + OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaan + qKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIR + AxEAPwD6Nuf2mfHfju2aDwb488cWzx/6uf8At+6AY+/7zJFR2fxp+IXhvwg7a18U/Gmoar5x3+R4 + kuXWL0UjzOOPXBr5s+FF9c/EnUp9GfUptK0bSxC2rtA5S5uWlz5dsjj7gKqWcj5sYA6mvdE/Zo8F + eD7iGf4TW82lXd1bnzw0ZKSknuScsepyfwruhR5IObdj1YzVWoqcUi6/7TPxJzgfEHxx/wCD66/+ + OUwftMfErP8AyULxz/4Pbr/45XOa3oF94akxrEOIz0nj5jP1/u/jVIR7lyvO78qyjKMlc3qYdxvd + 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 + YK0K+GkrOxC95XP/2Q== +X-ABShowAs:COMPANY +CATEGORIES:My Contacts +X-ABUID:685FC9B6-8446-45B8-89AF-3F3BC70CA03A\:ABPerson +UID:F26B8512-45DA-49ED-B285-23E64B0A68D1-ABSPlugin +REV:2010-06-23T00:01:37Z +END:VCARD +ENDDATA + +QUERY +SELECT caldav_data.dav_name, caldav_data.dav_etag, + version, uid, nickname, fn, n, note, org, url, fburl, caladruri, caluri + FROM caldav_data LEFT JOIN addressbook_resource USING(dav_id) + WHERE caldav_data.dav_name ~ '/user1/addressbook/F06EC844-EACD-4ADF-8823-588603991E04-ABSPlugin.vcf' +ENDQUERY + +QUERY +SELECT + type, box_no, unit_no, street_address, locality, region, postcode, country, property + FROM caldav_data + LEFT JOIN addressbook_address_adr USING(dav_id) + WHERE caldav_data.dav_name ~ '/user1/addressbook/F06EC844-EACD-4ADF-8823-588603991E04-ABSPlugin.vcf' + ORDER BY dav_id, property +ENDQUERY + +QUERY +SELECT + addressbook_address_tel.type, addressbook_address_tel.tel + FROM caldav_data + LEFT JOIN addressbook_address_tel USING(dav_id) + WHERE caldav_data.dav_name ~ '/user1/addressbook/F06EC844-EACD-4ADF-8823-588603991E04-ABSPlugin.vcf' + ORDER BY dav_id, property +ENDQUERY + +QUERY +SELECT + addressbook_address_email.type, addressbook_address_email.email + FROM caldav_data + LEFT JOIN addressbook_address_email USING(dav_id) + WHERE caldav_data.dav_name ~ '/user1/addressbook/F06EC844-EACD-4ADF-8823-588603991E04-ABSPlugin.vcf' + ORDER BY dav_id, property +ENDQUERY + + diff --git a/testing/tests/carddav/initial.dbdump b/testing/tests/carddav/initial.dbdump index 6e4862d2..7b51318e 100644 Binary files a/testing/tests/carddav/initial.dbdump and b/testing/tests/carddav/initial.dbdump differ