Seed a card with a labeled phone
The item1.TEL + item1.X-ABLabel group is the form
docs/plans/2026-09-18-phone-labels.md builds on; seeding it verifies
the client renders the label before any reading code exists.

Assisted-by: GLM-5.3 via pi
change vstkwxypzusxxxnzpytsnvuptlzyqzum
commit dde9c4802ae420657f8544248821d0292b03d49e
author Alpha Chen <alpha@kejadlen.dev>
date
parent ztwmzxzs
diff --git a/test/fixtures/cards/phone-label.vcf b/test/fixtures/cards/phone-label.vcf
new file mode 100644
index 0000000..d317c7d
--- /dev/null
+++ b/test/fixtures/cards/phone-label.vcf
@@ -0,0 +1,10 @@
+BEGIN:VCARD
+VERSION:3.0
+N:Hopper;Grace;;;
+FN:Grace Hopper
+item1.TEL;type=CELL:+1-555-0177
+item1.X-ABLabel:Google Voice
+TEL;TYPE=home:+1-555-0101
+EMAIL:grace@example.com
+UID:phone-label
+END:VCARD
diff --git a/test/fixtures/ios-exchange/02-propfind-addressbook-ctag/response b/test/fixtures/ios-exchange/02-propfind-addressbook-ctag/response
index 36751ea..9257e90 100644
--- a/test/fixtures/ios-exchange/02-propfind-addressbook-ctag/response
+++ b/test/fixtures/ios-exchange/02-propfind-addressbook-ctag/response
@@ -18,8 +18,8 @@ Content-Type: text/xml
             </d:report>
           </d:supported-report>
         </d:supported-report-set>
-        <cs:getctag>21</cs:getctag>
-        <d:sync-token>http://pro-tacts/sync/21/336e00f5e1ec2674</d:sync-token>
+        <cs:getctag>22</cs:getctag>
+        <d:sync-token>http://pro-tacts/sync/22/336e00f5e1ec2674</d:sync-token>
         <d:current-user-privilege-set>
           <d:privilege>
             <d:read/>
diff --git a/test/fixtures/ios-exchange/03-propfind-addressbook-bootstrap/response b/test/fixtures/ios-exchange/03-propfind-addressbook-bootstrap/response
index 2448324..21285bb 100644
--- a/test/fixtures/ios-exchange/03-propfind-addressbook-bootstrap/response
+++ b/test/fixtures/ios-exchange/03-propfind-addressbook-bootstrap/response
@@ -18,8 +18,8 @@ Content-Type: text/xml
             </d:report>
           </d:supported-report>
         </d:supported-report-set>
-        <cs:getctag>21</cs:getctag>
-        <d:sync-token>http://pro-tacts/sync/21/336e00f5e1ec2674</d:sync-token>
+        <cs:getctag>22</cs:getctag>
+        <d:sync-token>http://pro-tacts/sync/22/336e00f5e1ec2674</d:sync-token>
         <d:current-user-privilege-set>
           <d:privilege>
             <d:read/>
@@ -191,6 +191,15 @@ Content-Type: text/xml
       <d:status>HTTP/1.1 200 OK</d:status>
     </d:propstat>
   </d:response>
+  <d:response>
+    <d:href>/dav/addressbook/phone-label.vcf</d:href>
+    <d:propstat>
+      <d:prop>
+        <d:getetag>"255b9ca1ae879c7bc8d2d201d20b451f81934360fd5fc739b7af37c87e2c692f"</d:getetag>
+      </d:prop>
+      <d:status>HTTP/1.1 200 OK</d:status>
+    </d:propstat>
+  </d:response>
   <d:response>
     <d:href>/dav/addressbook/photo.vcf</d:href>
     <d:propstat>
diff --git a/test/fixtures/macos-exchange/05-propfind-addressbook-ctag/response b/test/fixtures/macos-exchange/05-propfind-addressbook-ctag/response
index 36751ea..9257e90 100644
--- a/test/fixtures/macos-exchange/05-propfind-addressbook-ctag/response
+++ b/test/fixtures/macos-exchange/05-propfind-addressbook-ctag/response
@@ -18,8 +18,8 @@ Content-Type: text/xml
             </d:report>
           </d:supported-report>
         </d:supported-report-set>
-        <cs:getctag>21</cs:getctag>
-        <d:sync-token>http://pro-tacts/sync/21/336e00f5e1ec2674</d:sync-token>
+        <cs:getctag>22</cs:getctag>
+        <d:sync-token>http://pro-tacts/sync/22/336e00f5e1ec2674</d:sync-token>
         <d:current-user-privilege-set>
           <d:privilege>
             <d:read/>
diff --git a/test/fixtures/macos-exchange/06-propfind-addressbook-listing/response b/test/fixtures/macos-exchange/06-propfind-addressbook-listing/response
index 8a5c4df..17e7be3 100644
--- a/test/fixtures/macos-exchange/06-propfind-addressbook-listing/response
+++ b/test/fixtures/macos-exchange/06-propfind-addressbook-listing/response
@@ -156,6 +156,15 @@ Content-Type: text/xml
       <d:status>HTTP/1.1 200 OK</d:status>
     </d:propstat>
   </d:response>
+  <d:response>
+    <d:href>/dav/addressbook/phone-label.vcf</d:href>
+    <d:propstat>
+      <d:prop>
+        <d:getetag>"255b9ca1ae879c7bc8d2d201d20b451f81934360fd5fc739b7af37c87e2c692f"</d:getetag>
+      </d:prop>
+      <d:status>HTTP/1.1 200 OK</d:status>
+    </d:propstat>
+  </d:response>
   <d:response>
     <d:href>/dav/addressbook/photo.vcf</d:href>
     <d:propstat>
diff --git a/test/fixtures/macos-exchange/09-propfind-addressbook-bootstrap/response b/test/fixtures/macos-exchange/09-propfind-addressbook-bootstrap/response
index 2448324..21285bb 100644
--- a/test/fixtures/macos-exchange/09-propfind-addressbook-bootstrap/response
+++ b/test/fixtures/macos-exchange/09-propfind-addressbook-bootstrap/response
@@ -18,8 +18,8 @@ Content-Type: text/xml
             </d:report>
           </d:supported-report>
         </d:supported-report-set>
-        <cs:getctag>21</cs:getctag>
-        <d:sync-token>http://pro-tacts/sync/21/336e00f5e1ec2674</d:sync-token>
+        <cs:getctag>22</cs:getctag>
+        <d:sync-token>http://pro-tacts/sync/22/336e00f5e1ec2674</d:sync-token>
         <d:current-user-privilege-set>
           <d:privilege>
             <d:read/>
@@ -191,6 +191,15 @@ Content-Type: text/xml
       <d:status>HTTP/1.1 200 OK</d:status>
     </d:propstat>
   </d:response>
+  <d:response>
+    <d:href>/dav/addressbook/phone-label.vcf</d:href>
+    <d:propstat>
+      <d:prop>
+        <d:getetag>"255b9ca1ae879c7bc8d2d201d20b451f81934360fd5fc739b7af37c87e2c692f"</d:getetag>
+      </d:prop>
+      <d:status>HTTP/1.1 200 OK</d:status>
+    </d:propstat>
+  </d:response>
   <d:response>
     <d:href>/dav/addressbook/photo.vcf</d:href>
     <d:propstat>