eZ\Bundle\EzPublishCoreBundle\Tests\EventListener\SiteAccessListenerTest::testOnSiteAccessMatchSubRequest PHP Method

testOnSiteAccessMatchSubRequest() public method

public testOnSiteAccessMatchSubRequest ( $uri, $semanticPathinfo, $vpString, $expectedViewParameters )
    public function testOnSiteAccessMatchSubRequest($uri, $semanticPathinfo, $vpString, $expectedViewParameters)
    {
        $defaultSiteAccess = new SiteAccess('default');
        $siteAccess = new SiteAccess('test', 'test', $this->getMock('eZ\\Publish\\Core\\MVC\\Symfony\\SiteAccess\\Matcher'));
        $request = Request::create($uri);
        $request->attributes->set('semanticPathinfo', $semanticPathinfo);
        if (!empty($vpString)) {
            $request->attributes->set('viewParametersString', $vpString);
        }
        $event = new PostSiteAccessMatchEvent($siteAccess, $request, HttpKernelInterface::SUB_REQUEST);
        $this->container->expects($this->once())->method('get')->with('ezpublish.siteaccess')->willReturn($defaultSiteAccess);
        $this->listener->onSiteAccessMatch($event);
        $this->assertSame($semanticPathinfo, $request->attributes->get('semanticPathinfo'));
        $this->assertSame($expectedViewParameters, $request->attributes->get('viewParameters'));
        $this->assertSame($vpString, $request->attributes->get('viewParametersString'));
        $this->assertSame($defaultSiteAccess->name, $siteAccess->name);
        $this->assertSame($defaultSiteAccess->matchingType, $siteAccess->matchingType);
        $this->assertSame($defaultSiteAccess->matcher, $siteAccess->matcher);
    }