platform/api/symfony/Component/HttpFoundation/Tests/ServerBagTest.yaml

86 lines
5.6 KiB
YAML
Raw Normal View History

2024-09-02 17:44:11 +00:00
name: ServerBagTest
class_comment: '# * ServerBagTest.
# *
# * @author Bulat Shakirzyanov <mallluhuct@gmail.com>'
dependencies:
- name: TestCase
type: class
source: PHPUnit\Framework\TestCase
- name: ServerBag
type: class
source: Symfony\Component\HttpFoundation\ServerBag
properties: []
methods:
- name: testItDoesNotOverwriteTheAuthorizationHeaderIfItIsAlreadySet
visibility: public
parameters: []
comment: "# * ServerBagTest.\n# *\n# * @author Bulat Shakirzyanov <mallluhuct@gmail.com>\n\
# */\n# class ServerBagTest extends TestCase\n# {\n# public function testShouldExtractHeadersFromServerArray()\n\
# {\n# $server = [\n# 'SOME_SERVER_VARIABLE' => 'value',\n# 'SOME_SERVER_VARIABLE2'\
\ => 'value',\n# 'ROOT' => 'value',\n# 'HTTP_CONTENT_TYPE' => 'text/html',\n#\
\ 'HTTP_CONTENT_LENGTH' => '0',\n# 'HTTP_ETAG' => 'asdf',\n# 'PHP_AUTH_USER' =>\
\ 'foo',\n# 'PHP_AUTH_PW' => 'bar',\n# ];\n# \n# $bag = new ServerBag($server);\n\
# \n# $this->assertEquals([\n# 'CONTENT_TYPE' => 'text/html',\n# 'CONTENT_LENGTH'\
\ => '0',\n# 'ETAG' => 'asdf',\n# 'AUTHORIZATION' => 'Basic '.base64_encode('foo:bar'),\n\
# 'PHP_AUTH_USER' => 'foo',\n# 'PHP_AUTH_PW' => 'bar',\n# ], $bag->getHeaders());\n\
# }\n# \n# public function testHttpPasswordIsOptional()\n# {\n# $bag = new ServerBag(['PHP_AUTH_USER'\
\ => 'foo']);\n# \n# $this->assertEquals([\n# 'AUTHORIZATION' => 'Basic '.base64_encode('foo:'),\n\
# 'PHP_AUTH_USER' => 'foo',\n# 'PHP_AUTH_PW' => '',\n# ], $bag->getHeaders());\n\
# }\n# \n# public function testHttpPasswordIsOptionalWhenPassedWithHttpPrefix()\n\
# {\n# $bag = new ServerBag(['HTTP_PHP_AUTH_USER' => 'foo']);\n# \n# $this->assertEquals([\n\
# 'AUTHORIZATION' => 'Basic '.base64_encode('foo:'),\n# 'PHP_AUTH_USER' => 'foo',\n\
# ], $bag->getHeaders());\n# }\n# \n# public function testHttpBasicAuthWithPhpCgi()\n\
# {\n# $bag = new ServerBag(['HTTP_AUTHORIZATION' => 'Basic '.base64_encode('foo:bar')]);\n\
# \n# $this->assertEquals([\n# 'AUTHORIZATION' => 'Basic '.base64_encode('foo:bar'),\n\
# 'PHP_AUTH_USER' => 'foo',\n# 'PHP_AUTH_PW' => 'bar',\n# ], $bag->getHeaders());\n\
# }\n# \n# public function testHttpBasicAuthWithPhpCgiBogus()\n# {\n# $bag = new\
\ ServerBag(['HTTP_AUTHORIZATION' => 'Basic_'.base64_encode('foo:bar')]);\n# \n\
# // Username and passwords should not be set as the header is bogus\n# $headers\
\ = $bag->getHeaders();\n# $this->assertArrayNotHasKey('PHP_AUTH_USER', $headers);\n\
# $this->assertArrayNotHasKey('PHP_AUTH_PW', $headers);\n# }\n# \n# public function\
\ testHttpBasicAuthWithPhpCgiRedirect()\n# {\n# $bag = new ServerBag(['REDIRECT_HTTP_AUTHORIZATION'\
\ => 'Basic '.base64_encode('username:pass:word')]);\n# \n# $this->assertEquals([\n\
# 'AUTHORIZATION' => 'Basic '.base64_encode('username:pass:word'),\n# 'PHP_AUTH_USER'\
\ => 'username',\n# 'PHP_AUTH_PW' => 'pass:word',\n# ], $bag->getHeaders());\n\
# }\n# \n# public function testHttpBasicAuthWithPhpCgiEmptyPassword()\n# {\n#\
\ $bag = new ServerBag(['HTTP_AUTHORIZATION' => 'Basic '.base64_encode('foo:')]);\n\
# \n# $this->assertEquals([\n# 'AUTHORIZATION' => 'Basic '.base64_encode('foo:'),\n\
# 'PHP_AUTH_USER' => 'foo',\n# 'PHP_AUTH_PW' => '',\n# ], $bag->getHeaders());\n\
# }\n# \n# public function testHttpDigestAuthWithPhpCgi()\n# {\n# $digest = 'Digest\
\ username=\"foo\", realm=\"acme\", nonce=\"'.md5('secret').'\", uri=\"/protected,\
\ qop=\"auth\"';\n# $bag = new ServerBag(['HTTP_AUTHORIZATION' => $digest]);\n\
# \n# $this->assertEquals([\n# 'AUTHORIZATION' => $digest,\n# 'PHP_AUTH_DIGEST'\
\ => $digest,\n# ], $bag->getHeaders());\n# }\n# \n# public function testHttpDigestAuthWithPhpCgiBogus()\n\
# {\n# $digest = 'Digest_username=\"foo\", realm=\"acme\", nonce=\"'.md5('secret').'\"\
, uri=\"/protected, qop=\"auth\"';\n# $bag = new ServerBag(['HTTP_AUTHORIZATION'\
\ => $digest]);\n# \n# // Username and passwords should not be set as the header\
\ is bogus\n# $headers = $bag->getHeaders();\n# $this->assertArrayNotHasKey('PHP_AUTH_USER',\
\ $headers);\n# $this->assertArrayNotHasKey('PHP_AUTH_PW', $headers);\n# }\n#\
\ \n# public function testHttpDigestAuthWithPhpCgiRedirect()\n# {\n# $digest =\
\ 'Digest username=\"foo\", realm=\"acme\", nonce=\"'.md5('secret').'\", uri=\"\
/protected, qop=\"auth\"';\n# $bag = new ServerBag(['REDIRECT_HTTP_AUTHORIZATION'\
\ => $digest]);\n# \n# $this->assertEquals([\n# 'AUTHORIZATION' => $digest,\n\
# 'PHP_AUTH_DIGEST' => $digest,\n# ], $bag->getHeaders());\n# }\n# \n# public\
\ function testOAuthBearerAuth()\n# {\n# $headerContent = 'Bearer L-yLEOr9zhmUYRkzN1jwwxwQ-PBNiKDc8dgfB4hTfvo';\n\
# $bag = new ServerBag(['HTTP_AUTHORIZATION' => $headerContent]);\n# \n# $this->assertEquals([\n\
# 'AUTHORIZATION' => $headerContent,\n# ], $bag->getHeaders());\n# }\n# \n# public\
\ function testOAuthBearerAuthWithRedirect()\n# {\n# $headerContent = 'Bearer\
\ L-yLEOr9zhmUYRkzN1jwwxwQ-PBNiKDc8dgfB4hTfvo';\n# $bag = new ServerBag(['REDIRECT_HTTP_AUTHORIZATION'\
\ => $headerContent]);\n# \n# $this->assertEquals([\n# 'AUTHORIZATION' => $headerContent,\n\
# ], $bag->getHeaders());\n# }\n# \n# /**\n# * @see https://github.com/symfony/symfony/issues/17345"
- name: testRequestWithoutContentTypeAndContentLength
visibility: public
parameters: []
comment: '# * An HTTP request without content-type and content-length will result
in
# * the variables $_SERVER[''CONTENT_TYPE''] and $_SERVER[''CONTENT_LENGTH'']
# * containing an empty string in PHP.'
traits:
- PHPUnit\Framework\TestCase
- Symfony\Component\HttpFoundation\ServerBag
interfaces: []