DocumentTest.php 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. <?php
  2. namespace Sabre\VObject;
  3. class DocumentTest extends \PHPUnit_Framework_TestCase {
  4. function testGetDocumentType() {
  5. $doc = new MockDocument();
  6. $this->assertEquals(Document::UNKNOWN, $doc->getDocumentType());
  7. }
  8. function testConstruct() {
  9. $doc = new MockDocument('VLIST');
  10. $this->assertEquals('VLIST', $doc->name);
  11. }
  12. function testCreateComponent() {
  13. $vcal = new Component\VCalendar(array(), false);
  14. $event = $vcal->createComponent('VEVENT');
  15. $this->assertInstanceOf('Sabre\VObject\Component\VEvent', $event);
  16. $vcal->add($event);
  17. $prop = $vcal->createProperty('X-PROP','1234256',array('X-PARAM' => '3'));
  18. $this->assertInstanceOf('Sabre\VObject\Property', $prop);
  19. $event->add($prop);
  20. unset(
  21. $event->DTSTAMP,
  22. $event->UID
  23. );
  24. $out = $vcal->serialize();
  25. $this->assertEquals("BEGIN:VCALENDAR\r\nBEGIN:VEVENT\r\nX-PROP;X-PARAM=3:1234256\r\nEND:VEVENT\r\nEND:VCALENDAR\r\n", $out);
  26. }
  27. function testCreate() {
  28. $vcal = new Component\VCalendar(array(), false);
  29. $event = $vcal->create('VEVENT');
  30. $this->assertInstanceOf('Sabre\VObject\Component\VEvent', $event);
  31. $event = $vcal->create('CALSCALE');
  32. $this->assertInstanceOf('Sabre\VObject\Property\Text', $event);
  33. }
  34. function testGetClassNameForPropertyValue() {
  35. $vcal = new Component\VCalendar(array(), false);
  36. $this->assertEquals('Sabre\\VObject\\Property\\Text', $vcal->getClassNameForPropertyValue('TEXT'));
  37. $this->assertNull($vcal->getClassNameForPropertyValue('FOO'));
  38. }
  39. }
  40. class MockDocument extends Document {
  41. }