1*a1a3b679SAndreas Boehler<?php 2*a1a3b679SAndreas Boehler 3*a1a3b679SAndreas Boehlernamespace Sabre\VObject; 4*a1a3b679SAndreas Boehler 5*a1a3b679SAndreas Boehlerclass IssueEmptyParameterTest extends \PHPUnit_Framework_TestCase { 6*a1a3b679SAndreas Boehler 7*a1a3b679SAndreas Boehler function testRead() { 8*a1a3b679SAndreas Boehler 9*a1a3b679SAndreas Boehler $input = <<<VCF 10*a1a3b679SAndreas BoehlerBEGIN:VCARD 11*a1a3b679SAndreas BoehlerVERSION:2.1 12*a1a3b679SAndreas BoehlerN:Doe;Jon;;; 13*a1a3b679SAndreas BoehlerFN:Jon Doe 14*a1a3b679SAndreas BoehlerEMAIL;X-INTERN:foo@example.org 15*a1a3b679SAndreas BoehlerUID:foo 16*a1a3b679SAndreas BoehlerEND:VCARD 17*a1a3b679SAndreas BoehlerVCF; 18*a1a3b679SAndreas Boehler 19*a1a3b679SAndreas Boehler $vcard = Reader::read($input); 20*a1a3b679SAndreas Boehler 21*a1a3b679SAndreas Boehler $this->assertInstanceOf('Sabre\\VObject\\Component\\VCard', $vcard); 22*a1a3b679SAndreas Boehler $vcard = $vcard->convert(\Sabre\VObject\Document::VCARD30); 23*a1a3b679SAndreas Boehler $vcard = $vcard->serialize(); 24*a1a3b679SAndreas Boehler 25*a1a3b679SAndreas Boehler $converted = Reader::read($vcard); 26*a1a3b679SAndreas Boehler $converted->validate(); 27*a1a3b679SAndreas Boehler 28*a1a3b679SAndreas Boehler $this->assertTrue(isset($converted->EMAIL['X-INTERN'])); 29*a1a3b679SAndreas Boehler 30*a1a3b679SAndreas Boehler $version = Version::VERSION; 31*a1a3b679SAndreas Boehler 32*a1a3b679SAndreas Boehler $expected = <<<VCF 33*a1a3b679SAndreas BoehlerBEGIN:VCARD 34*a1a3b679SAndreas BoehlerVERSION:3.0 35*a1a3b679SAndreas BoehlerPRODID:-//Sabre//Sabre VObject $version//EN 36*a1a3b679SAndreas BoehlerN:Doe;Jon;;; 37*a1a3b679SAndreas BoehlerFN:Jon Doe 38*a1a3b679SAndreas BoehlerEMAIL;X-INTERN=:foo@example.org 39*a1a3b679SAndreas BoehlerUID:foo 40*a1a3b679SAndreas BoehlerEND:VCARD 41*a1a3b679SAndreas Boehler 42*a1a3b679SAndreas BoehlerVCF; 43*a1a3b679SAndreas Boehler 44*a1a3b679SAndreas Boehler $this->assertEquals($expected, str_replace("\r","", $vcard)); 45*a1a3b679SAndreas Boehler 46*a1a3b679SAndreas Boehler } 47*a1a3b679SAndreas Boehler 48*a1a3b679SAndreas Boehler function testVCard21Parameter() { 49*a1a3b679SAndreas Boehler 50*a1a3b679SAndreas Boehler $vcard = new Component\VCard(array(), false); 51*a1a3b679SAndreas Boehler $vcard->VERSION = '2.1'; 52*a1a3b679SAndreas Boehler $vcard->PHOTO = 'random_stuff'; 53*a1a3b679SAndreas Boehler $vcard->PHOTO->add(null,'BASE64'); 54*a1a3b679SAndreas Boehler $vcard->UID = 'foo-bar'; 55*a1a3b679SAndreas Boehler 56*a1a3b679SAndreas Boehler $result = $vcard->serialize(); 57*a1a3b679SAndreas Boehler $expected = array( 58*a1a3b679SAndreas Boehler "BEGIN:VCARD", 59*a1a3b679SAndreas Boehler "VERSION:2.1", 60*a1a3b679SAndreas Boehler "PHOTO;BASE64:" . base64_encode('random_stuff'), 61*a1a3b679SAndreas Boehler "UID:foo-bar", 62*a1a3b679SAndreas Boehler "END:VCARD", 63*a1a3b679SAndreas Boehler "", 64*a1a3b679SAndreas Boehler ); 65*a1a3b679SAndreas Boehler 66*a1a3b679SAndreas Boehler $this->assertEquals(implode("\r\n", $expected), $result); 67*a1a3b679SAndreas Boehler 68*a1a3b679SAndreas Boehler } 69*a1a3b679SAndreas Boehler} 70