function testCurrentUserPrincipal() { $fakeServer = new DAV\Server(); $plugin = new DAV\Auth\Plugin(new DAV\Auth\Backend\Mock(), 'realm'); $fakeServer->addPlugin($plugin); $plugin = new Plugin(); $fakeServer->addPlugin($plugin); $requestedProperties = array('{DAV:}current-user-principal'); $returnedProperties = array(200 => array(), 404 => array()); $this->assertNull($plugin->beforeGetProperties('', new DAV\SimpleCollection('root'), $requestedProperties, $returnedProperties)); $this->assertEquals(1, count($returnedProperties[200])); $this->assertArrayHasKey('{DAV:}current-user-principal', $returnedProperties[200]); $this->assertInstanceOf('Sabre\\DAVACL\\Property\\Principal', $returnedProperties[200]['{DAV:}current-user-principal']); $this->assertEquals(Property\Principal::UNAUTHENTICATED, $returnedProperties[200]['{DAV:}current-user-principal']->getType()); // This will force the login $fakeServer->broadCastEvent('beforeMethod', array('GET', '')); $requestedProperties = array('{DAV:}current-user-principal'); $returnedProperties = array(200 => array(), 404 => array()); $this->assertNull($plugin->beforeGetProperties('', new DAV\SimpleCollection('root'), $requestedProperties, $returnedProperties)); $this->assertEquals(1, count($returnedProperties[200])); $this->assertArrayHasKey('{DAV:}current-user-principal', $returnedProperties[200]); $this->assertInstanceOf('Sabre\\DAVACL\\Property\\Principal', $returnedProperties[200]['{DAV:}current-user-principal']); $this->assertEquals(Property\Principal::HREF, $returnedProperties[200]['{DAV:}current-user-principal']->getType()); $this->assertEquals('principals/admin/', $returnedProperties[200]['{DAV:}current-user-principal']->getHref()); }
/** * @depends testInit */ function testGetCurrentUserPrincipal() { $fakeServer = new DAV\Server(new DAV\SimpleCollection('bla')); $plugin = new Plugin(new Backend\Mock(), 'realm'); $fakeServer->addPlugin($plugin); $fakeServer->broadCastEvent('beforeMethod', array('GET', '/')); $this->assertEquals('admin', $plugin->getCurrentUser()); }