Publication initiale de RelaisSMS : documentation et sources nettoyees

This commit is contained in:
2026-10-21 09:29:39 +02:00
commit ac186b03b1
158 changed files with 24818 additions and 0 deletions
+47
View File
@@ -0,0 +1,47 @@
<?php
namespace Tests\Unit\CardDav;
use App\Services\CardDav\VCardParser;
use PHPUnit\Framework\TestCase;
class VCardParserTest extends TestCase
{
public function test_it_parses_contact_fields_phone_numbers_and_categories(): void
{
$vcard = <<<'VCF'
BEGIN:VCARD
VERSION:3.0
UID:contact-123
FN:Marie Durand
N:Durand;Marie;;;
ORG:AFPMA
EMAIL;TYPE=HOME:marie@example.test
TEL;TYPE=CELL,VOICE:06 11 11 00 03
TEL;TYPE=HOME:04 00 00 00 00
CATEGORIES:Benevoles,Conseil\, bureau
END:VCARD
VCF;
$contact = (new VCardParser)->parse($vcard);
$this->assertSame('contact-123', $contact->uid);
$this->assertSame('Marie Durand', $contact->fullName);
$this->assertSame('Marie', $contact->firstName);
$this->assertSame('Durand', $contact->lastName);
$this->assertSame('AFPMA', $contact->organization);
$this->assertSame('marie@example.test', $contact->email);
$this->assertCount(2, $contact->phoneNumbers);
$this->assertSame('Cell, Voice', $contact->phoneNumbers[0]->label);
$this->assertSame(['Benevoles', 'Conseil, bureau'], $contact->categories);
}
public function test_it_unfolds_multiline_values(): void
{
$vcard = "BEGIN:VCARD\r\nVERSION:3.0\r\nUID:folded\r\nFN:Association des amis\r\n du lac\r\nTEL:0611110001\r\nEND:VCARD\r\n";
$contact = (new VCardParser)->parse($vcard);
$this->assertSame('Association des amis du lac', $contact->fullName);
}
}