1*a1a3b679SAndreas Boehler<?php 2*a1a3b679SAndreas Boehler 3*a1a3b679SAndreas Boehlernamespace Sabre\CalDAV; 4*a1a3b679SAndreas Boehleruse Sabre\DAVACL; 5*a1a3b679SAndreas Boehler 6*a1a3b679SAndreas Boehlerrequire_once 'Sabre/CalDAV/TestUtil.php'; 7*a1a3b679SAndreas Boehler 8*a1a3b679SAndreas Boehlerclass CalendarObjectTest extends \PHPUnit_Framework_TestCase { 9*a1a3b679SAndreas Boehler 10*a1a3b679SAndreas Boehler /** 11*a1a3b679SAndreas Boehler * @var Sabre\CalDAV\Backend_PDO 12*a1a3b679SAndreas Boehler */ 13*a1a3b679SAndreas Boehler protected $backend; 14*a1a3b679SAndreas Boehler /** 15*a1a3b679SAndreas Boehler * @var Sabre\CalDAV\Calendar 16*a1a3b679SAndreas Boehler */ 17*a1a3b679SAndreas Boehler protected $calendar; 18*a1a3b679SAndreas Boehler protected $principalBackend; 19*a1a3b679SAndreas Boehler 20*a1a3b679SAndreas Boehler function setup() { 21*a1a3b679SAndreas Boehler 22*a1a3b679SAndreas Boehler if (!SABRE_HASSQLITE) $this->markTestSkipped('SQLite driver is not available'); 23*a1a3b679SAndreas Boehler $this->backend = TestUtil::getBackend(); 24*a1a3b679SAndreas Boehler 25*a1a3b679SAndreas Boehler $calendars = $this->backend->getCalendarsForUser('principals/user1'); 26*a1a3b679SAndreas Boehler $this->assertEquals(2,count($calendars)); 27*a1a3b679SAndreas Boehler $this->calendar = new Calendar($this->backend, $calendars[0]); 28*a1a3b679SAndreas Boehler 29*a1a3b679SAndreas Boehler } 30*a1a3b679SAndreas Boehler 31*a1a3b679SAndreas Boehler function teardown() { 32*a1a3b679SAndreas Boehler 33*a1a3b679SAndreas Boehler unset($this->calendar); 34*a1a3b679SAndreas Boehler unset($this->backend); 35*a1a3b679SAndreas Boehler 36*a1a3b679SAndreas Boehler } 37*a1a3b679SAndreas Boehler 38*a1a3b679SAndreas Boehler function testSetup() { 39*a1a3b679SAndreas Boehler 40*a1a3b679SAndreas Boehler $children = $this->calendar->getChildren(); 41*a1a3b679SAndreas Boehler $this->assertTrue($children[0] instanceof CalendarObject); 42*a1a3b679SAndreas Boehler 43*a1a3b679SAndreas Boehler $this->assertInternalType('string',$children[0]->getName()); 44*a1a3b679SAndreas Boehler $this->assertInternalType('string',$children[0]->get()); 45*a1a3b679SAndreas Boehler $this->assertInternalType('string',$children[0]->getETag()); 46*a1a3b679SAndreas Boehler $this->assertEquals('text/calendar; charset=utf-8; component=vevent', $children[0]->getContentType()); 47*a1a3b679SAndreas Boehler 48*a1a3b679SAndreas Boehler } 49*a1a3b679SAndreas Boehler 50*a1a3b679SAndreas Boehler /** 51*a1a3b679SAndreas Boehler * @expectedException InvalidArgumentException 52*a1a3b679SAndreas Boehler */ 53*a1a3b679SAndreas Boehler function testInvalidArg1() { 54*a1a3b679SAndreas Boehler 55*a1a3b679SAndreas Boehler $obj = new CalendarObject( 56*a1a3b679SAndreas Boehler new Backend\Mock(array(),array()), 57*a1a3b679SAndreas Boehler array(), 58*a1a3b679SAndreas Boehler array() 59*a1a3b679SAndreas Boehler ); 60*a1a3b679SAndreas Boehler 61*a1a3b679SAndreas Boehler } 62*a1a3b679SAndreas Boehler 63*a1a3b679SAndreas Boehler /** 64*a1a3b679SAndreas Boehler * @expectedException InvalidArgumentException 65*a1a3b679SAndreas Boehler */ 66*a1a3b679SAndreas Boehler function testInvalidArg2() { 67*a1a3b679SAndreas Boehler 68*a1a3b679SAndreas Boehler $obj = new CalendarObject( 69*a1a3b679SAndreas Boehler new Backend\Mock(array(),array()), 70*a1a3b679SAndreas Boehler array(), 71*a1a3b679SAndreas Boehler array('calendarid' => '1') 72*a1a3b679SAndreas Boehler ); 73*a1a3b679SAndreas Boehler 74*a1a3b679SAndreas Boehler } 75*a1a3b679SAndreas Boehler 76*a1a3b679SAndreas Boehler /** 77*a1a3b679SAndreas Boehler * @depends testSetup 78*a1a3b679SAndreas Boehler */ 79*a1a3b679SAndreas Boehler function testPut() { 80*a1a3b679SAndreas Boehler 81*a1a3b679SAndreas Boehler $children = $this->calendar->getChildren(); 82*a1a3b679SAndreas Boehler $this->assertTrue($children[0] instanceof CalendarObject); 83*a1a3b679SAndreas Boehler $newData = TestUtil::getTestCalendarData(); 84*a1a3b679SAndreas Boehler 85*a1a3b679SAndreas Boehler $children[0]->put($newData); 86*a1a3b679SAndreas Boehler $this->assertEquals($newData, $children[0]->get()); 87*a1a3b679SAndreas Boehler 88*a1a3b679SAndreas Boehler } 89*a1a3b679SAndreas Boehler 90*a1a3b679SAndreas Boehler /** 91*a1a3b679SAndreas Boehler * @depends testSetup 92*a1a3b679SAndreas Boehler */ 93*a1a3b679SAndreas Boehler function testPutStream() { 94*a1a3b679SAndreas Boehler 95*a1a3b679SAndreas Boehler $children = $this->calendar->getChildren(); 96*a1a3b679SAndreas Boehler $this->assertTrue($children[0] instanceof CalendarObject); 97*a1a3b679SAndreas Boehler $newData = TestUtil::getTestCalendarData(); 98*a1a3b679SAndreas Boehler 99*a1a3b679SAndreas Boehler $stream = fopen('php://temp','r+'); 100*a1a3b679SAndreas Boehler fwrite($stream, $newData); 101*a1a3b679SAndreas Boehler rewind($stream); 102*a1a3b679SAndreas Boehler $children[0]->put($stream); 103*a1a3b679SAndreas Boehler $this->assertEquals($newData, $children[0]->get()); 104*a1a3b679SAndreas Boehler 105*a1a3b679SAndreas Boehler } 106*a1a3b679SAndreas Boehler 107*a1a3b679SAndreas Boehler 108*a1a3b679SAndreas Boehler /** 109*a1a3b679SAndreas Boehler * @depends testSetup 110*a1a3b679SAndreas Boehler */ 111*a1a3b679SAndreas Boehler function testDelete() { 112*a1a3b679SAndreas Boehler 113*a1a3b679SAndreas Boehler $children = $this->calendar->getChildren(); 114*a1a3b679SAndreas Boehler $this->assertTrue($children[0] instanceof CalendarObject); 115*a1a3b679SAndreas Boehler 116*a1a3b679SAndreas Boehler $obj = $children[0]; 117*a1a3b679SAndreas Boehler $obj->delete(); 118*a1a3b679SAndreas Boehler 119*a1a3b679SAndreas Boehler $children2 = $this->calendar->getChildren(); 120*a1a3b679SAndreas Boehler $this->assertEquals(count($children)-1, count($children2)); 121*a1a3b679SAndreas Boehler 122*a1a3b679SAndreas Boehler } 123*a1a3b679SAndreas Boehler 124*a1a3b679SAndreas Boehler /** 125*a1a3b679SAndreas Boehler * @depends testSetup 126*a1a3b679SAndreas Boehler */ 127*a1a3b679SAndreas Boehler function testGetLastModified() { 128*a1a3b679SAndreas Boehler 129*a1a3b679SAndreas Boehler $children = $this->calendar->getChildren(); 130*a1a3b679SAndreas Boehler $this->assertTrue($children[0] instanceof CalendarObject); 131*a1a3b679SAndreas Boehler 132*a1a3b679SAndreas Boehler $obj = $children[0]; 133*a1a3b679SAndreas Boehler 134*a1a3b679SAndreas Boehler $lastMod = $obj->getLastModified(); 135*a1a3b679SAndreas Boehler $this->assertTrue(is_int($lastMod) || ctype_digit($lastMod)); 136*a1a3b679SAndreas Boehler 137*a1a3b679SAndreas Boehler } 138*a1a3b679SAndreas Boehler 139*a1a3b679SAndreas Boehler /** 140*a1a3b679SAndreas Boehler * @depends testSetup 141*a1a3b679SAndreas Boehler */ 142*a1a3b679SAndreas Boehler function testGetSize() { 143*a1a3b679SAndreas Boehler 144*a1a3b679SAndreas Boehler $children = $this->calendar->getChildren(); 145*a1a3b679SAndreas Boehler $this->assertTrue($children[0] instanceof CalendarObject); 146*a1a3b679SAndreas Boehler 147*a1a3b679SAndreas Boehler $obj = $children[0]; 148*a1a3b679SAndreas Boehler 149*a1a3b679SAndreas Boehler $size = $obj->getSize(); 150*a1a3b679SAndreas Boehler $this->assertInternalType('int', $size); 151*a1a3b679SAndreas Boehler 152*a1a3b679SAndreas Boehler } 153*a1a3b679SAndreas Boehler 154*a1a3b679SAndreas Boehler function testGetOwner() { 155*a1a3b679SAndreas Boehler 156*a1a3b679SAndreas Boehler $children = $this->calendar->getChildren(); 157*a1a3b679SAndreas Boehler $this->assertTrue($children[0] instanceof CalendarObject); 158*a1a3b679SAndreas Boehler 159*a1a3b679SAndreas Boehler $obj = $children[0]; 160*a1a3b679SAndreas Boehler $this->assertEquals('principals/user1', $obj->getOwner()); 161*a1a3b679SAndreas Boehler 162*a1a3b679SAndreas Boehler } 163*a1a3b679SAndreas Boehler 164*a1a3b679SAndreas Boehler function testGetGroup() { 165*a1a3b679SAndreas Boehler 166*a1a3b679SAndreas Boehler $children = $this->calendar->getChildren(); 167*a1a3b679SAndreas Boehler $this->assertTrue($children[0] instanceof CalendarObject); 168*a1a3b679SAndreas Boehler 169*a1a3b679SAndreas Boehler $obj = $children[0]; 170*a1a3b679SAndreas Boehler $this->assertNull($obj->getGroup()); 171*a1a3b679SAndreas Boehler 172*a1a3b679SAndreas Boehler } 173*a1a3b679SAndreas Boehler 174*a1a3b679SAndreas Boehler function testGetACL() { 175*a1a3b679SAndreas Boehler 176*a1a3b679SAndreas Boehler $expected = array( 177*a1a3b679SAndreas Boehler array( 178*a1a3b679SAndreas Boehler 'privilege' => '{DAV:}read', 179*a1a3b679SAndreas Boehler 'principal' => 'principals/user1', 180*a1a3b679SAndreas Boehler 'protected' => true, 181*a1a3b679SAndreas Boehler ), 182*a1a3b679SAndreas Boehler array( 183*a1a3b679SAndreas Boehler 'privilege' => '{DAV:}read', 184*a1a3b679SAndreas Boehler 'principal' => 'principals/user1/calendar-proxy-write', 185*a1a3b679SAndreas Boehler 'protected' => true, 186*a1a3b679SAndreas Boehler ), 187*a1a3b679SAndreas Boehler array( 188*a1a3b679SAndreas Boehler 'privilege' => '{DAV:}read', 189*a1a3b679SAndreas Boehler 'principal' => 'principals/user1/calendar-proxy-read', 190*a1a3b679SAndreas Boehler 'protected' => true, 191*a1a3b679SAndreas Boehler ), 192*a1a3b679SAndreas Boehler array( 193*a1a3b679SAndreas Boehler 'privilege' => '{DAV:}write', 194*a1a3b679SAndreas Boehler 'principal' => 'principals/user1', 195*a1a3b679SAndreas Boehler 'protected' => true, 196*a1a3b679SAndreas Boehler ), 197*a1a3b679SAndreas Boehler array( 198*a1a3b679SAndreas Boehler 'privilege' => '{DAV:}write', 199*a1a3b679SAndreas Boehler 'principal' => 'principals/user1/calendar-proxy-write', 200*a1a3b679SAndreas Boehler 'protected' => true, 201*a1a3b679SAndreas Boehler ), 202*a1a3b679SAndreas Boehler ); 203*a1a3b679SAndreas Boehler 204*a1a3b679SAndreas Boehler $children = $this->calendar->getChildren(); 205*a1a3b679SAndreas Boehler $this->assertTrue($children[0] instanceof CalendarObject); 206*a1a3b679SAndreas Boehler 207*a1a3b679SAndreas Boehler $obj = $children[0]; 208*a1a3b679SAndreas Boehler $this->assertEquals($expected, $obj->getACL()); 209*a1a3b679SAndreas Boehler 210*a1a3b679SAndreas Boehler } 211*a1a3b679SAndreas Boehler 212*a1a3b679SAndreas Boehler function testDefaultACL() { 213*a1a3b679SAndreas Boehler 214*a1a3b679SAndreas Boehler $backend = new Backend\Mock([], []); 215*a1a3b679SAndreas Boehler $calendarObject = new CalendarObject($backend, ['principaluri' => 'principals/user1'], ['calendarid' => 1, 'uri' => 'foo']); 216*a1a3b679SAndreas Boehler $expected = array( 217*a1a3b679SAndreas Boehler array( 218*a1a3b679SAndreas Boehler 'privilege' => '{DAV:}read', 219*a1a3b679SAndreas Boehler 'principal' => 'principals/user1', 220*a1a3b679SAndreas Boehler 'protected' => true, 221*a1a3b679SAndreas Boehler ), 222*a1a3b679SAndreas Boehler array( 223*a1a3b679SAndreas Boehler 'privilege' => '{DAV:}write', 224*a1a3b679SAndreas Boehler 'principal' => 'principals/user1', 225*a1a3b679SAndreas Boehler 'protected' => true, 226*a1a3b679SAndreas Boehler ), 227*a1a3b679SAndreas Boehler array( 228*a1a3b679SAndreas Boehler 'privilege' => '{DAV:}read', 229*a1a3b679SAndreas Boehler 'principal' => 'principals/user1/calendar-proxy-write', 230*a1a3b679SAndreas Boehler 'protected' => true, 231*a1a3b679SAndreas Boehler ), 232*a1a3b679SAndreas Boehler array( 233*a1a3b679SAndreas Boehler 'privilege' => '{DAV:}write', 234*a1a3b679SAndreas Boehler 'principal' => 'principals/user1/calendar-proxy-write', 235*a1a3b679SAndreas Boehler 'protected' => true, 236*a1a3b679SAndreas Boehler ), 237*a1a3b679SAndreas Boehler array( 238*a1a3b679SAndreas Boehler 'privilege' => '{DAV:}read', 239*a1a3b679SAndreas Boehler 'principal' => 'principals/user1/calendar-proxy-read', 240*a1a3b679SAndreas Boehler 'protected' => true, 241*a1a3b679SAndreas Boehler ), 242*a1a3b679SAndreas Boehler ); 243*a1a3b679SAndreas Boehler $this->assertEquals($expected, $calendarObject->getACL()); 244*a1a3b679SAndreas Boehler 245*a1a3b679SAndreas Boehler 246*a1a3b679SAndreas Boehler } 247*a1a3b679SAndreas Boehler 248*a1a3b679SAndreas Boehler /** 249*a1a3b679SAndreas Boehler * @expectedException Sabre\DAV\Exception\MethodNotAllowed 250*a1a3b679SAndreas Boehler */ 251*a1a3b679SAndreas Boehler function testSetACL() { 252*a1a3b679SAndreas Boehler 253*a1a3b679SAndreas Boehler $children = $this->calendar->getChildren(); 254*a1a3b679SAndreas Boehler $this->assertTrue($children[0] instanceof CalendarObject); 255*a1a3b679SAndreas Boehler 256*a1a3b679SAndreas Boehler $obj = $children[0]; 257*a1a3b679SAndreas Boehler $obj->setACL(array()); 258*a1a3b679SAndreas Boehler 259*a1a3b679SAndreas Boehler } 260*a1a3b679SAndreas Boehler 261*a1a3b679SAndreas Boehler function testGet() { 262*a1a3b679SAndreas Boehler 263*a1a3b679SAndreas Boehler $children = $this->calendar->getChildren(); 264*a1a3b679SAndreas Boehler $this->assertTrue($children[0] instanceof CalendarObject); 265*a1a3b679SAndreas Boehler 266*a1a3b679SAndreas Boehler $obj = $children[0]; 267*a1a3b679SAndreas Boehler 268*a1a3b679SAndreas Boehler $expected = "BEGIN:VCALENDAR 269*a1a3b679SAndreas BoehlerVERSION:2.0 270*a1a3b679SAndreas BoehlerPRODID:-//Apple Inc.//iCal 4.0.1//EN 271*a1a3b679SAndreas BoehlerCALSCALE:GREGORIAN 272*a1a3b679SAndreas BoehlerBEGIN:VTIMEZONE 273*a1a3b679SAndreas BoehlerTZID:Asia/Seoul 274*a1a3b679SAndreas BoehlerBEGIN:DAYLIGHT 275*a1a3b679SAndreas BoehlerTZOFFSETFROM:+0900 276*a1a3b679SAndreas BoehlerRRULE:FREQ=YEARLY;UNTIL=19880507T150000Z;BYMONTH=5;BYDAY=2SU 277*a1a3b679SAndreas BoehlerDTSTART:19870510T000000 278*a1a3b679SAndreas BoehlerTZNAME:GMT+09:00 279*a1a3b679SAndreas BoehlerTZOFFSETTO:+1000 280*a1a3b679SAndreas BoehlerEND:DAYLIGHT 281*a1a3b679SAndreas BoehlerBEGIN:STANDARD 282*a1a3b679SAndreas BoehlerTZOFFSETFROM:+1000 283*a1a3b679SAndreas BoehlerDTSTART:19881009T000000 284*a1a3b679SAndreas BoehlerTZNAME:GMT+09:00 285*a1a3b679SAndreas BoehlerTZOFFSETTO:+0900 286*a1a3b679SAndreas BoehlerEND:STANDARD 287*a1a3b679SAndreas BoehlerEND:VTIMEZONE 288*a1a3b679SAndreas BoehlerBEGIN:VEVENT 289*a1a3b679SAndreas BoehlerCREATED:20100225T154229Z 290*a1a3b679SAndreas BoehlerUID:39A6B5ED-DD51-4AFE-A683-C35EE3749627 291*a1a3b679SAndreas BoehlerTRANSP:TRANSPARENT 292*a1a3b679SAndreas BoehlerSUMMARY:Something here 293*a1a3b679SAndreas BoehlerDTSTAMP:20100228T130202Z 294*a1a3b679SAndreas BoehlerDTSTART;TZID=Asia/Seoul:20100223T060000 295*a1a3b679SAndreas BoehlerDTEND;TZID=Asia/Seoul:20100223T070000 296*a1a3b679SAndreas BoehlerATTENDEE;PARTSTAT=NEEDS-ACTION:mailto:lisa@example.com 297*a1a3b679SAndreas BoehlerSEQUENCE:2 298*a1a3b679SAndreas BoehlerEND:VEVENT 299*a1a3b679SAndreas BoehlerEND:VCALENDAR"; 300*a1a3b679SAndreas Boehler 301*a1a3b679SAndreas Boehler 302*a1a3b679SAndreas Boehler 303*a1a3b679SAndreas Boehler $this->assertEquals($expected, $obj->get()); 304*a1a3b679SAndreas Boehler 305*a1a3b679SAndreas Boehler } 306*a1a3b679SAndreas Boehler 307*a1a3b679SAndreas Boehler function testGetRefetch() { 308*a1a3b679SAndreas Boehler 309*a1a3b679SAndreas Boehler $backend = new Backend\Mock(array(), array( 310*a1a3b679SAndreas Boehler 1 => array( 311*a1a3b679SAndreas Boehler 'foo' => array( 312*a1a3b679SAndreas Boehler 'calendardata' => 'foo', 313*a1a3b679SAndreas Boehler 'uri' => 'foo' 314*a1a3b679SAndreas Boehler ), 315*a1a3b679SAndreas Boehler ) 316*a1a3b679SAndreas Boehler )); 317*a1a3b679SAndreas Boehler $obj = new CalendarObject($backend, array('id' => 1), array('uri' => 'foo')); 318*a1a3b679SAndreas Boehler 319*a1a3b679SAndreas Boehler $this->assertEquals('foo', $obj->get()); 320*a1a3b679SAndreas Boehler 321*a1a3b679SAndreas Boehler } 322*a1a3b679SAndreas Boehler 323*a1a3b679SAndreas Boehler function testGetEtag1() { 324*a1a3b679SAndreas Boehler 325*a1a3b679SAndreas Boehler $objectInfo = array( 326*a1a3b679SAndreas Boehler 'calendardata' => 'foo', 327*a1a3b679SAndreas Boehler 'uri' => 'foo', 328*a1a3b679SAndreas Boehler 'etag' => 'bar', 329*a1a3b679SAndreas Boehler 'calendarid' => 1 330*a1a3b679SAndreas Boehler ); 331*a1a3b679SAndreas Boehler 332*a1a3b679SAndreas Boehler $backend = new Backend\Mock(array(), array()); 333*a1a3b679SAndreas Boehler $obj = new CalendarObject($backend, array(), $objectInfo); 334*a1a3b679SAndreas Boehler 335*a1a3b679SAndreas Boehler $this->assertEquals('bar', $obj->getETag()); 336*a1a3b679SAndreas Boehler 337*a1a3b679SAndreas Boehler } 338*a1a3b679SAndreas Boehler 339*a1a3b679SAndreas Boehler function testGetEtag2() { 340*a1a3b679SAndreas Boehler 341*a1a3b679SAndreas Boehler $objectInfo = array( 342*a1a3b679SAndreas Boehler 'calendardata' => 'foo', 343*a1a3b679SAndreas Boehler 'uri' => 'foo', 344*a1a3b679SAndreas Boehler 'calendarid' => 1 345*a1a3b679SAndreas Boehler ); 346*a1a3b679SAndreas Boehler 347*a1a3b679SAndreas Boehler $backend = new Backend\Mock(array(), array()); 348*a1a3b679SAndreas Boehler $obj = new CalendarObject($backend, array(), $objectInfo); 349*a1a3b679SAndreas Boehler 350*a1a3b679SAndreas Boehler $this->assertEquals('"' . md5('foo') . '"', $obj->getETag()); 351*a1a3b679SAndreas Boehler 352*a1a3b679SAndreas Boehler } 353*a1a3b679SAndreas Boehler 354*a1a3b679SAndreas Boehler function testGetSupportedPrivilegesSet() { 355*a1a3b679SAndreas Boehler 356*a1a3b679SAndreas Boehler $objectInfo = array( 357*a1a3b679SAndreas Boehler 'calendardata' => 'foo', 358*a1a3b679SAndreas Boehler 'uri' => 'foo', 359*a1a3b679SAndreas Boehler 'calendarid' => 1 360*a1a3b679SAndreas Boehler ); 361*a1a3b679SAndreas Boehler 362*a1a3b679SAndreas Boehler $backend = new Backend\Mock(array(), array()); 363*a1a3b679SAndreas Boehler $obj = new CalendarObject($backend, array(), $objectInfo); 364*a1a3b679SAndreas Boehler $this->assertNull($obj->getSupportedPrivilegeSet()); 365*a1a3b679SAndreas Boehler 366*a1a3b679SAndreas Boehler } 367*a1a3b679SAndreas Boehler 368*a1a3b679SAndreas Boehler function testGetSize1() { 369*a1a3b679SAndreas Boehler 370*a1a3b679SAndreas Boehler $objectInfo = array( 371*a1a3b679SAndreas Boehler 'calendardata' => 'foo', 372*a1a3b679SAndreas Boehler 'uri' => 'foo', 373*a1a3b679SAndreas Boehler 'calendarid' => 1 374*a1a3b679SAndreas Boehler ); 375*a1a3b679SAndreas Boehler 376*a1a3b679SAndreas Boehler $backend = new Backend\Mock(array(), array()); 377*a1a3b679SAndreas Boehler $obj = new CalendarObject($backend, array(), $objectInfo); 378*a1a3b679SAndreas Boehler $this->assertEquals(3, $obj->getSize()); 379*a1a3b679SAndreas Boehler 380*a1a3b679SAndreas Boehler } 381*a1a3b679SAndreas Boehler 382*a1a3b679SAndreas Boehler function testGetSize2() { 383*a1a3b679SAndreas Boehler 384*a1a3b679SAndreas Boehler $objectInfo = array( 385*a1a3b679SAndreas Boehler 'uri' => 'foo', 386*a1a3b679SAndreas Boehler 'calendarid' => 1, 387*a1a3b679SAndreas Boehler 'size' => 4, 388*a1a3b679SAndreas Boehler ); 389*a1a3b679SAndreas Boehler 390*a1a3b679SAndreas Boehler $backend = new Backend\Mock(array(), array()); 391*a1a3b679SAndreas Boehler $obj = new CalendarObject($backend, array(), $objectInfo); 392*a1a3b679SAndreas Boehler $this->assertEquals(4, $obj->getSize()); 393*a1a3b679SAndreas Boehler 394*a1a3b679SAndreas Boehler } 395*a1a3b679SAndreas Boehler} 396