public function uriForInSubRequestWithExplicitEmptySubpackageKeyDoesNotUseRequestSubpackageKey()
{
/** @var ActionRequest|\PHPUnit_Framework_MockObject_MockObject $mockSubRequest */
$mockSubRequest = $this->getMockBuilder(Mvc\ActionRequest::class)->setMethods([])->setConstructorArgs([$this->mockMainRequest])->getMock();
$mockSubRequest->expects($this->any())->method('getHttpRequest')->will($this->returnValue($this->mockHttpRequest));
$mockSubRequest->expects($this->any())->method('getMainRequest')->will($this->returnValue($this->mockMainRequest));
$mockSubRequest->expects($this->any())->method('isMainRequest')->will($this->returnValue(false));
$mockSubRequest->expects($this->any())->method('getParentRequest')->will($this->returnValue($this->mockMainRequest));
$mockSubRequest->expects($this->any())->method('getArgumentNamespace')->will($this->returnValue(''));
$mockSubRequest->expects($this->any())->method('getControllerSubpackageKey')->will($this->returnValue('SomeSubpackageKeyFromRequest'));
$this->uriBuilder->setRequest($mockSubRequest);
$expectedArguments = ['@action' => 'show', '@controller' => 'somecontroller', '@package' => 'somepackage', '@subpackage' => ''];
$this->uriBuilder->uriFor('show', null, 'SomeController', 'SomePackage', '');
$this->assertEquals($expectedArguments, $this->uriBuilder->getLastArguments());
}