Example #1
0
     });
     it("extracts username & password from Basic authorization", function () {
         $request = new Request(['env' => ['HTTP_AUTHORIZATION' => 'Basic d2lsbHk6YWJjZGVm']]);
         expect($request->username())->toBe('willy');
         expect($request->password())->toBe('abcdef');
         expect($request->headers['Authorization']->value())->toBe('Basic d2lsbHk6YWJjZGVm');
     });
     it("extracts username from Digest authorization", function () {
         $digest = 'Digest qop="auth", nonce="4bca0fbca7bd0", ';
         $digest .= 'nc=00000001, cnonce="95b2cd1e179bf5414e52ed62811481cf", ';
         $digest .= 'uri="/http_auth", realm="app", ';
         $digest .= 'opaque="d3fb67a7aa4d887ec4bf83040a820a46", username="******", ';
         $digest .= 'response="04d7d878c67f289f37e553d2025e3a52"';
         $request = new Request(['env' => ['HTTP_AUTHORIZATION' => $digest]]);
         expect($request->username())->toBe('willy');
         expect($request->password())->toBe(null);
         expect($request->headers['Authorization']->value())->toBe($digest);
     });
     it("applies the ignore pattern to the base path", function () {
         $request = new Request(['basePath' => '/base/path/webroot/index.php', 'ignorePath' => '~/webroot/index.php$~']);
         expect($request->basePath())->toBe('/base/path');
     });
 });
 describe("->is()", function () {
     it("checks ssl", function () {
         $request = new Request(['env' => ['HTTPS' => 'off']]);
         expect($request->is('ssl'))->toBe(false);
         $request = new Request(['env' => ['HTTPS' => 'on']]);
         expect($request->is('ssl'))->toBe(true);
         $request = new Request(['env' => ['HTTPS' => null]]);
         expect($request->is('ssl'))->toBe(false);