1<?php 2 3namespace Sabre\VObject; 4 5class DocumentTest extends \PHPUnit_Framework_TestCase { 6 7 function testGetDocumentType() { 8 9 $doc = new MockDocument(); 10 $this->assertEquals(Document::UNKNOWN, $doc->getDocumentType()); 11 12 } 13 14 function testConstruct() { 15 16 $doc = new MockDocument('VLIST'); 17 $this->assertEquals('VLIST', $doc->name); 18 19 } 20 21 function testCreateComponent() { 22 23 $vcal = new Component\VCalendar(array(), false); 24 25 $event = $vcal->createComponent('VEVENT'); 26 27 $this->assertInstanceOf('Sabre\VObject\Component\VEvent', $event); 28 $vcal->add($event); 29 30 $prop = $vcal->createProperty('X-PROP','1234256',array('X-PARAM' => '3')); 31 $this->assertInstanceOf('Sabre\VObject\Property', $prop); 32 33 $event->add($prop); 34 35 unset( 36 $event->DTSTAMP, 37 $event->UID 38 ); 39 40 $out = $vcal->serialize(); 41 $this->assertEquals("BEGIN:VCALENDAR\r\nBEGIN:VEVENT\r\nX-PROP;X-PARAM=3:1234256\r\nEND:VEVENT\r\nEND:VCALENDAR\r\n", $out); 42 43 } 44 45 function testCreate() { 46 47 $vcal = new Component\VCalendar(array(), false); 48 49 $event = $vcal->create('VEVENT'); 50 $this->assertInstanceOf('Sabre\VObject\Component\VEvent', $event); 51 52 $event = $vcal->create('CALSCALE'); 53 $this->assertInstanceOf('Sabre\VObject\Property\Text', $event); 54 55 } 56 57 function testGetClassNameForPropertyValue() { 58 59 $vcal = new Component\VCalendar(array(), false); 60 $this->assertEquals('Sabre\\VObject\\Property\\Text', $vcal->getClassNameForPropertyValue('TEXT')); 61 $this->assertNull($vcal->getClassNameForPropertyValue('FOO')); 62 63 } 64 65} 66 67 68class MockDocument extends Document { 69 70} 71