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