PHP Class Neos\Flow\Tests\Unit\Http\Component\TrustedProxiesComponentTest

Inheritance: extends Neos\Flow\Tests\UnitTestCase
Show file Open project: neos/flow-development-collection

Protected Properties

Property Type Description
$mockComponentContext Neos\Flow\Http\Component\ComponentContext | PHPUnit_Framework_MockObject_MockObject
$mockHttpRequest Neos\Flow\Http\Request | PHPUnit_Framework_MockObject_MockObject
$mockHttpResponse Neos\Flow\Http\Response | PHPUnit_Framework_MockObject_MockObject
$trustedProxiesComponent Neos\Flow\Http\Component\TrustedProxiesComponent
$trustedProxiesSettings ReflectionProperty

Public Methods

Method Description
forwardHeaderTests ( $forwardedProtocol, $forwardedPort, $requestUri, $expectedUri )
forwardHeaderTestsDataProvider ( ) : array
getClientIpAddressReturnsTheIpAddressDerivedFromSeveralServerEnvironmentVariables ( array $serverEnvironment, $expectedIpAddress )
hostIsNotOverridenIfTheHeaderIsNotTrusted ( )
isFromTrustedProxyByDefault ( )
isFromTrustedProxyIfRemoteAddressMatchesRange ( )
isNotFromTrustedProxyIfNoProxiesAreTrusted ( )
isNotFromTrustedProxyIfRemoteAddressDoesntMatch ( )
isSecureReturnsFalseIfTheRequestWasForwardedAndOriginallyWasHttp ( )
isSecureReturnsTrueEvenIfTheSchemeIsHttpButTheRequestWasForwardedAndOriginallyWasHttps ( )
portInProxyHeaderIsAcknowledged ( ) RFC 2616 / 14.23 (Host)
portIsNotOverridenIfTheHeaderIsNotTrusted ( )
protocolIsNotOverridenIfTheHeaderIsNotTrusted ( )
serverEnvironmentsForClientIpAddresses ( ) Data Provider
setUp ( )
trustedClientIpAddressIsFirstForwardedForAddressIfAllProxiesTrusted ( )
trustedClientIpAddressIsForwardedForAddressIfProxyTrusted ( )
trustedClientIpAddressIsRemoteAddressIfHeaderNotTrusted ( )
trustedClientIpAddressIsRemoteAddressIfNoProxiesAreTrusted ( )
trustedClientIpAddressIsRemoteAddressIfTheHeaderIsNotTrusted ( )
trustedClientIpAddressIsRightMostForwardedForAddressThatIsNotTrusted ( )

Protected Methods

Method Description
callWithRequest ( Request $request ) : Request
withTrustedProxiesSettings ( array $settings )

Method Details

callWithRequest() protected method

protected callWithRequest ( Request $request ) : Request
$request Neos\Flow\Http\Request
return Neos\Flow\Http\Request

forwardHeaderTests() public method

public forwardHeaderTests ( $forwardedProtocol, $forwardedPort, $requestUri, $expectedUri )

forwardHeaderTestsDataProvider() public method

getClientIpAddressReturnsTheIpAddressDerivedFromSeveralServerEnvironmentVariables() public method

public getClientIpAddressReturnsTheIpAddressDerivedFromSeveralServerEnvironmentVariables ( array $serverEnvironment, $expectedIpAddress )
$serverEnvironment array

hostIsNotOverridenIfTheHeaderIsNotTrusted() public method

isFromTrustedProxyByDefault() public method

isFromTrustedProxyIfRemoteAddressMatchesRange() public method

isNotFromTrustedProxyIfNoProxiesAreTrusted() public method

isNotFromTrustedProxyIfRemoteAddressDoesntMatch() public method

isSecureReturnsFalseIfTheRequestWasForwardedAndOriginallyWasHttp() public method

isSecureReturnsTrueEvenIfTheSchemeIsHttpButTheRequestWasForwardedAndOriginallyWasHttps() public method

portInProxyHeaderIsAcknowledged() public method

RFC 2616 / 14.23 (Host)

portIsNotOverridenIfTheHeaderIsNotTrusted() public method

protocolIsNotOverridenIfTheHeaderIsNotTrusted() public method

serverEnvironmentsForClientIpAddresses() public method

Data Provider

setUp() public method

public setUp ( )

trustedClientIpAddressIsFirstForwardedForAddressIfAllProxiesTrusted() public method

trustedClientIpAddressIsForwardedForAddressIfProxyTrusted() public method

trustedClientIpAddressIsRemoteAddressIfHeaderNotTrusted() public method

trustedClientIpAddressIsRemoteAddressIfNoProxiesAreTrusted() public method

trustedClientIpAddressIsRemoteAddressIfTheHeaderIsNotTrusted() public method

trustedClientIpAddressIsRightMostForwardedForAddressThatIsNotTrusted() public method

withTrustedProxiesSettings() protected method

protected withTrustedProxiesSettings ( array $settings )
$settings array

Property Details

$mockComponentContext protected property

protected ComponentContext,Neos\Flow\Http\Component|PHPUnit_Framework_MockObject_MockObject $mockComponentContext
return Neos\Flow\Http\Component\ComponentContext | PHPUnit_Framework_MockObject_MockObject

$mockHttpRequest protected property

protected Request,Neos\Flow\Http|PHPUnit_Framework_MockObject_MockObject $mockHttpRequest
return Neos\Flow\Http\Request | PHPUnit_Framework_MockObject_MockObject

$mockHttpResponse protected property

protected Response,Neos\Flow\Http|PHPUnit_Framework_MockObject_MockObject $mockHttpResponse
return Neos\Flow\Http\Response | PHPUnit_Framework_MockObject_MockObject

$trustedProxiesComponent protected property

protected TrustedProxiesComponent,Neos\Flow\Http\Component $trustedProxiesComponent
return Neos\Flow\Http\Component\TrustedProxiesComponent

$trustedProxiesSettings protected property

protected ReflectionProperty $trustedProxiesSettings
return ReflectionProperty