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