diff options
Diffstat (limited to 'vendor/sabre/dav/tests/Sabre/DAV/Auth/Backend/AbstractDigestTest.php')
-rw-r--r-- | vendor/sabre/dav/tests/Sabre/DAV/Auth/Backend/AbstractDigestTest.php | 124 |
1 files changed, 57 insertions, 67 deletions
diff --git a/vendor/sabre/dav/tests/Sabre/DAV/Auth/Backend/AbstractDigestTest.php b/vendor/sabre/dav/tests/Sabre/DAV/Auth/Backend/AbstractDigestTest.php index 495690c4e..8ef416c37 100644 --- a/vendor/sabre/dav/tests/Sabre/DAV/Auth/Backend/AbstractDigestTest.php +++ b/vendor/sabre/dav/tests/Sabre/DAV/Auth/Backend/AbstractDigestTest.php @@ -5,130 +5,120 @@ namespace Sabre\DAV\Auth\Backend; use Sabre\DAV; use Sabre\HTTP; -require_once 'Sabre/HTTP/ResponseMock.php'; - class AbstractDigestTest extends \PHPUnit_Framework_TestCase { - /** - * @expectedException Sabre\DAV\Exception\NotAuthenticated - */ - public function testAuthenticateNoHeaders() { + function testCheckNoHeaders() { - $response = new HTTP\ResponseMock(); - $server = new DAV\Server(); - $server->httpResponse = $response; + $request = new HTTP\Request(); + $response = new HTTP\Response(); $backend = new AbstractDigestMock(); - $backend->authenticate($server,'myRealm'); + $this->assertFalse( + $backend->check($request, $response)[0] + ); } - /** - * @expectedException Sabre\DAV\Exception - */ - public function testAuthenticateBadGetUserInfoResponse() { - - $response = new HTTP\ResponseMock(); - $server = new DAV\Server(); - $server->httpResponse = $response; + function testCheckBadGetUserInfoResponse() { $header = 'username=null, realm=myRealm, nonce=12345, uri=/, response=HASH, opaque=1, qop=auth, nc=1, cnonce=1'; - $request = new HTTP\Request(array( + $request = HTTP\Sapi::createFromServerArray([ 'PHP_AUTH_DIGEST' => $header, - )); - $server->httpRequest = $request; + ]); + $response = new HTTP\Response(); $backend = new AbstractDigestMock(); - $backend->authenticate($server,'myRealm'); + $this->assertFalse( + $backend->check($request, $response)[0] + ); } /** * @expectedException Sabre\DAV\Exception */ - public function testAuthenticateBadGetUserInfoResponse2() { - - $response = new HTTP\ResponseMock(); - $server = new DAV\Server(); - $server->httpResponse = $response; + function testCheckBadGetUserInfoResponse2() { $header = 'username=array, realm=myRealm, nonce=12345, uri=/, response=HASH, opaque=1, qop=auth, nc=1, cnonce=1'; - $request = new HTTP\Request(array( + $request = HTTP\Sapi::createFromServerArray([ 'PHP_AUTH_DIGEST' => $header, - )); - $server->httpRequest = $request; + ]); + + $response = new HTTP\Response(); $backend = new AbstractDigestMock(); - $backend->authenticate($server,'myRealm'); + $backend->check($request, $response); } - /** - * @expectedException Sabre\DAV\Exception\NotAuthenticated - */ - public function testAuthenticateUnknownUser() { - - $response = new HTTP\ResponseMock(); - $server = new DAV\Server(); - $server->httpResponse = $response; + function testCheckUnknownUser() { $header = 'username=false, realm=myRealm, nonce=12345, uri=/, response=HASH, opaque=1, qop=auth, nc=1, cnonce=1'; - $request = new HTTP\Request(array( + $request = HTTP\Sapi::createFromServerArray([ 'PHP_AUTH_DIGEST' => $header, - )); - $server->httpRequest = $request; + ]); + + $response = new HTTP\Response(); $backend = new AbstractDigestMock(); - $backend->authenticate($server,'myRealm'); + $this->assertFalse( + $backend->check($request, $response)[0] + ); } - /** - * @expectedException Sabre\DAV\Exception\NotAuthenticated - */ - public function testAuthenticateBadPassword() { - - $response = new HTTP\ResponseMock(); - $server = new DAV\Server(); - $server->httpResponse = $response; + function testCheckBadPassword() { $header = 'username=user, realm=myRealm, nonce=12345, uri=/, response=HASH, opaque=1, qop=auth, nc=1, cnonce=1'; - $request = new HTTP\Request(array( + $request = HTTP\Sapi::createFromServerArray([ 'PHP_AUTH_DIGEST' => $header, 'REQUEST_METHOD' => 'PUT', - )); - $server->httpRequest = $request; + ]); + + $response = new HTTP\Response(); $backend = new AbstractDigestMock(); - $backend->authenticate($server,'myRealm'); + $this->assertFalse( + $backend->check($request, $response)[0] + ); } - public function testAuthenticate() { - - $response = new HTTP\ResponseMock(); - $server = new DAV\Server(); - $server->httpResponse = $response; + function testCheck() { $digestHash = md5('HELLO:12345:1:1:auth:' . md5('GET:/')); $header = 'username=user, realm=myRealm, nonce=12345, uri=/, response='.$digestHash.', opaque=1, qop=auth, nc=1, cnonce=1'; - $request = new HTTP\Request(array( + $request = HTTP\Sapi::createFromServerArray(array( 'REQUEST_METHOD' => 'GET', 'PHP_AUTH_DIGEST' => $header, 'REQUEST_URI' => '/', )); - $server->httpRequest = $request; + + $response = new HTTP\Response(); $backend = new AbstractDigestMock(); - $this->assertTrue($backend->authenticate($server,'myRealm')); + $this->assertEquals( + [true, 'principals/user'], + $backend->check($request, $response) + ); - $result = $backend->getCurrentUser(); + } - $this->assertEquals('user', $result); - $this->assertEquals('HELLO', $backend->getDigestHash('myRealm', $result)); + function testRequireAuth() { - } + $request = new HTTP\Request(); + $response = new HTTP\Response(); + $backend = new AbstractDigestMock(); + $backend->setRealm('writing unittests on a saturday night'); + $backend->challenge($request, $response); + + $this->assertStringStartsWith( + 'Digest realm="writing unittests on a saturday night"', + $response->getHeader('WWW-Authenticate') + ); + + } } |