[HttpKernel] better written kernel tests
This commit is contained in:
parent
111ac18232
commit
2a9daff8d9
@ -23,32 +23,15 @@ class KernelForTest extends Kernel
|
||||
|
||||
public function registerBundles()
|
||||
{
|
||||
}
|
||||
|
||||
public function init()
|
||||
{
|
||||
}
|
||||
|
||||
public function registerBundleDirs()
|
||||
{
|
||||
return array();
|
||||
}
|
||||
|
||||
public function registerContainerConfiguration(LoaderInterface $loader)
|
||||
{
|
||||
}
|
||||
|
||||
public function initializeBundles()
|
||||
{
|
||||
parent::initializeBundles();
|
||||
}
|
||||
|
||||
public function isBooted()
|
||||
{
|
||||
return $this->booted;
|
||||
}
|
||||
|
||||
public function setIsBooted($value)
|
||||
{
|
||||
$this->booted = (Boolean) $value;
|
||||
}
|
||||
}
|
||||
|
@ -12,7 +12,6 @@
|
||||
namespace Symfony\Component\HttpKernel\Tests;
|
||||
|
||||
use Symfony\Component\HttpKernel\Kernel;
|
||||
use Symfony\Component\HttpKernel\Bundle\Bundle;
|
||||
use Symfony\Component\HttpKernel\HttpKernelInterface;
|
||||
use Symfony\Component\HttpFoundation\Request;
|
||||
use Symfony\Component\HttpFoundation\Response;
|
||||
@ -52,33 +51,22 @@ class KernelTest extends \PHPUnit_Framework_TestCase
|
||||
|
||||
public function testBootInitializesBundlesAndContainer()
|
||||
{
|
||||
$kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest')
|
||||
->disableOriginalConstructor()
|
||||
->setMethods(array('initializeBundles', 'initializeContainer', 'getBundles'))
|
||||
->getMock();
|
||||
$kernel = $this->getKernel(array('initializeBundles', 'initializeContainer'));
|
||||
$kernel->expects($this->once())
|
||||
->method('initializeBundles');
|
||||
$kernel->expects($this->once())
|
||||
->method('initializeContainer');
|
||||
$kernel->expects($this->once())
|
||||
->method('getBundles')
|
||||
->will($this->returnValue(array()));
|
||||
|
||||
$kernel->boot();
|
||||
}
|
||||
|
||||
public function testBootSetsTheContainerToTheBundles()
|
||||
{
|
||||
$bundle = $this->getMockBuilder('Symfony\Component\HttpKernel\Bundle\Bundle')
|
||||
->disableOriginalConstructor()
|
||||
->getMock();
|
||||
$bundle = $this->getMock('Symfony\Component\HttpKernel\Bundle\Bundle');
|
||||
$bundle->expects($this->once())
|
||||
->method('setContainer');
|
||||
|
||||
$kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest')
|
||||
->disableOriginalConstructor()
|
||||
->setMethods(array('initializeBundles', 'initializeContainer', 'getBundles'))
|
||||
->getMock();
|
||||
$kernel = $this->getKernel(array('initializeBundles', 'initializeContainer', 'getBundles'));
|
||||
$kernel->expects($this->once())
|
||||
->method('getBundles')
|
||||
->will($this->returnValue(array($bundle)));
|
||||
@ -88,13 +76,11 @@ class KernelTest extends \PHPUnit_Framework_TestCase
|
||||
|
||||
public function testBootSetsTheBootedFlagToTrue()
|
||||
{
|
||||
// use test kernel to access isBooted()
|
||||
$kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest')
|
||||
->disableOriginalConstructor()
|
||||
->setMethods(array('initializeBundles', 'initializeContainer', 'getBundles'))
|
||||
->setConstructorArgs(array('test', false))
|
||||
->setMethods(array('initializeBundles', 'initializeContainer'))
|
||||
->getMock();
|
||||
$kernel->expects($this->once())
|
||||
->method('getBundles')
|
||||
->will($this->returnValue(array()));
|
||||
|
||||
$kernel->boot();
|
||||
|
||||
@ -103,14 +89,8 @@ class KernelTest extends \PHPUnit_Framework_TestCase
|
||||
|
||||
public function testClassCacheIsLoaded()
|
||||
{
|
||||
$kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest')
|
||||
->disableOriginalConstructor()
|
||||
->setMethods(array('initializeBundles', 'initializeContainer', 'getBundles', 'doLoadClassCache'))
|
||||
->getMock();
|
||||
$kernel = $this->getKernel(array('initializeBundles', 'initializeContainer', 'doLoadClassCache'));
|
||||
$kernel->loadClassCache('name', '.extension');
|
||||
$kernel->expects($this->any())
|
||||
->method('getBundles')
|
||||
->will($this->returnValue(array()));
|
||||
$kernel->expects($this->once())
|
||||
->method('doLoadClassCache')
|
||||
->with('name', '.extension');
|
||||
@ -120,13 +100,7 @@ class KernelTest extends \PHPUnit_Framework_TestCase
|
||||
|
||||
public function testClassCacheIsNotLoadedByDefault()
|
||||
{
|
||||
$kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest')
|
||||
->disableOriginalConstructor()
|
||||
->setMethods(array('initializeBundles', 'initializeContainer', 'getBundles', 'doLoadClassCache'))
|
||||
->getMock();
|
||||
$kernel->expects($this->any())
|
||||
->method('getBundles')
|
||||
->will($this->returnValue(array()));
|
||||
$kernel = $this->getKernel(array('initializeBundles', 'initializeContainer'));
|
||||
$kernel->expects($this->never())
|
||||
->method('doLoadClassCache');
|
||||
|
||||
@ -135,27 +109,17 @@ class KernelTest extends \PHPUnit_Framework_TestCase
|
||||
|
||||
public function testClassCacheIsNotLoadedWhenKernelIsNotBooted()
|
||||
{
|
||||
$kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest')
|
||||
->disableOriginalConstructor()
|
||||
->setMethods(array('initializeBundles', 'initializeContainer', 'getBundles', 'doLoadClassCache'))
|
||||
->getMock();
|
||||
$kernel = $this->getKernel(array('initializeBundles', 'initializeContainer', 'doLoadClassCache'));
|
||||
$kernel->loadClassCache();
|
||||
$kernel->expects($this->any())
|
||||
->method('getBundles')
|
||||
->will($this->returnValue(array()));
|
||||
$kernel->expects($this->never())
|
||||
->method('doLoadClassCache');
|
||||
}
|
||||
|
||||
public function testBootKernelSeveralTimesOnlyInitializesBundlesOnce()
|
||||
{
|
||||
$kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest')
|
||||
->disableOriginalConstructor()
|
||||
->setMethods(array('initializeBundles', 'initializeContainer', 'getBundles'))
|
||||
->getMock();
|
||||
$kernel = $this->getKernel(array('initializeBundles', 'initializeContainer'));
|
||||
$kernel->expects($this->once())
|
||||
->method('getBundles')
|
||||
->will($this->returnValue(array()));
|
||||
->method('initializeBundles');
|
||||
|
||||
$kernel->boot();
|
||||
$kernel->boot();
|
||||
@ -163,40 +127,29 @@ class KernelTest extends \PHPUnit_Framework_TestCase
|
||||
|
||||
public function testShutdownCallsShutdownOnAllBundles()
|
||||
{
|
||||
$bundle = $this->getMockBuilder('Symfony\Component\HttpKernel\Bundle\Bundle')
|
||||
->disableOriginalConstructor()
|
||||
->getMock();
|
||||
$bundle = $this->getMock('Symfony\Component\HttpKernel\Bundle\Bundle');
|
||||
$bundle->expects($this->once())
|
||||
->method('shutdown');
|
||||
|
||||
$kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest')
|
||||
->disableOriginalConstructor()
|
||||
->setMethods(array('getBundles'))
|
||||
->getMock();
|
||||
$kernel->expects($this->once())
|
||||
->method('getBundles')
|
||||
->will($this->returnValue(array($bundle)));
|
||||
$kernel = $this->getKernel(array(), array($bundle));
|
||||
|
||||
$kernel->boot();
|
||||
$kernel->shutdown();
|
||||
}
|
||||
|
||||
public function testShutdownGivesNullContainerToAllBundles()
|
||||
{
|
||||
$bundle = $this->getMockBuilder('Symfony\Component\HttpKernel\Bundle\Bundle')
|
||||
->disableOriginalConstructor()
|
||||
->getMock();
|
||||
$bundle->expects($this->once())
|
||||
$bundle = $this->getMock('Symfony\Component\HttpKernel\Bundle\Bundle');
|
||||
$bundle->expects($this->at(3))
|
||||
->method('setContainer')
|
||||
->with(null);
|
||||
|
||||
$kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest')
|
||||
->disableOriginalConstructor()
|
||||
->setMethods(array('getBundles'))
|
||||
->getMock();
|
||||
$kernel->expects($this->once())
|
||||
$kernel = $this->getKernel(array('getBundles'));
|
||||
$kernel->expects($this->any())
|
||||
->method('getBundles')
|
||||
->will($this->returnValue(array($bundle)));
|
||||
|
||||
$kernel->boot();
|
||||
$kernel->shutdown();
|
||||
}
|
||||
|
||||
@ -214,11 +167,7 @@ class KernelTest extends \PHPUnit_Framework_TestCase
|
||||
->method('handle')
|
||||
->with($request, $type, $catch);
|
||||
|
||||
$kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest')
|
||||
->disableOriginalConstructor()
|
||||
->setMethods(array('getHttpKernel'))
|
||||
->getMock();
|
||||
|
||||
$kernel = $this->getKernel(array('getHttpKernel'));
|
||||
$kernel->expects($this->once())
|
||||
->method('getHttpKernel')
|
||||
->will($this->returnValue($httpKernelMock));
|
||||
@ -236,11 +185,7 @@ class KernelTest extends \PHPUnit_Framework_TestCase
|
||||
->disableOriginalConstructor()
|
||||
->getMock();
|
||||
|
||||
$kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest')
|
||||
->disableOriginalConstructor()
|
||||
->setMethods(array('getHttpKernel', 'boot'))
|
||||
->getMock();
|
||||
|
||||
$kernel = $this->getKernel(array('getHttpKernel', 'boot'));
|
||||
$kernel->expects($this->once())
|
||||
->method('getHttpKernel')
|
||||
->will($this->returnValue($httpKernelMock));
|
||||
@ -248,10 +193,6 @@ class KernelTest extends \PHPUnit_Framework_TestCase
|
||||
$kernel->expects($this->once())
|
||||
->method('boot');
|
||||
|
||||
// required as this value is initialized
|
||||
// in the kernel constructor, which we don't call
|
||||
$kernel->setIsBooted(false);
|
||||
|
||||
$kernel->handle($request, $type, $catch);
|
||||
}
|
||||
|
||||
@ -362,10 +303,7 @@ EOF;
|
||||
{
|
||||
$bundle = new FooBarBundle();
|
||||
|
||||
$kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest')
|
||||
->disableOriginalConstructor()
|
||||
->setMethods(array('getBundles'))
|
||||
->getMock();
|
||||
$kernel = $this->getKernel(array('getBundles'));
|
||||
$kernel->expects($this->once())
|
||||
->method('getBundles')
|
||||
->will($this->returnValue(array($bundle)));
|
||||
@ -409,7 +347,7 @@ EOF;
|
||||
*/
|
||||
public function testLocateResourceThrowsExceptionWhenNameIsNotValid()
|
||||
{
|
||||
$this->getKernelForInvalidLocateResource()->locateResource('Foo');
|
||||
$this->getKernel()->locateResource('Foo');
|
||||
}
|
||||
|
||||
/**
|
||||
@ -417,7 +355,7 @@ EOF;
|
||||
*/
|
||||
public function testLocateResourceThrowsExceptionWhenNameIsUnsafe()
|
||||
{
|
||||
$this->getKernelForInvalidLocateResource()->locateResource('@FooBundle/../bar');
|
||||
$this->getKernel()->locateResource('@FooBundle/../bar');
|
||||
}
|
||||
|
||||
/**
|
||||
@ -425,7 +363,7 @@ EOF;
|
||||
*/
|
||||
public function testLocateResourceThrowsExceptionWhenBundleDoesNotExist()
|
||||
{
|
||||
$this->getKernelForInvalidLocateResource()->locateResource('@FooBundle/config/routing.xml');
|
||||
$this->getKernel()->locateResource('@FooBundle/config/routing.xml');
|
||||
}
|
||||
|
||||
/**
|
||||
@ -433,7 +371,7 @@ EOF;
|
||||
*/
|
||||
public function testLocateResourceThrowsExceptionWhenResourceDoesNotExist()
|
||||
{
|
||||
$kernel = $this->getKernel();
|
||||
$kernel = $this->getKernel(array('getBundle'));
|
||||
$kernel
|
||||
->expects($this->once())
|
||||
->method('getBundle')
|
||||
@ -445,7 +383,7 @@ EOF;
|
||||
|
||||
public function testLocateResourceReturnsTheFirstThatMatches()
|
||||
{
|
||||
$kernel = $this->getKernel();
|
||||
$kernel = $this->getKernel(array('getBundle'));
|
||||
$kernel
|
||||
->expects($this->once())
|
||||
->method('getBundle')
|
||||
@ -460,7 +398,7 @@ EOF;
|
||||
$parent = $this->getBundle(__DIR__.'/Fixtures/Bundle1Bundle');
|
||||
$child = $this->getBundle(__DIR__.'/Fixtures/Bundle2Bundle');
|
||||
|
||||
$kernel = $this->getKernel();
|
||||
$kernel = $this->getKernel(array('getBundle'));
|
||||
$kernel
|
||||
->expects($this->exactly(2))
|
||||
->method('getBundle')
|
||||
@ -476,7 +414,7 @@ EOF;
|
||||
$parent = $this->getBundle(__DIR__.'/Fixtures/Bundle1Bundle');
|
||||
$child = $this->getBundle(__DIR__.'/Fixtures/Bundle2Bundle');
|
||||
|
||||
$kernel = $this->getKernel();
|
||||
$kernel = $this->getKernel(array('getBundle'));
|
||||
$kernel
|
||||
->expects($this->once())
|
||||
->method('getBundle')
|
||||
@ -491,7 +429,7 @@ EOF;
|
||||
|
||||
public function testLocateResourceReturnsAllMatchesBis()
|
||||
{
|
||||
$kernel = $this->getKernel();
|
||||
$kernel = $this->getKernel(array('getBundle'));
|
||||
$kernel
|
||||
->expects($this->once())
|
||||
->method('getBundle')
|
||||
@ -509,7 +447,7 @@ EOF;
|
||||
|
||||
public function testLocateResourceIgnoresDirOnNonResource()
|
||||
{
|
||||
$kernel = $this->getKernel();
|
||||
$kernel = $this->getKernel(array('getBundle'));
|
||||
$kernel
|
||||
->expects($this->once())
|
||||
->method('getBundle')
|
||||
@ -524,7 +462,7 @@ EOF;
|
||||
|
||||
public function testLocateResourceReturnsTheDirOneForResources()
|
||||
{
|
||||
$kernel = $this->getKernel();
|
||||
$kernel = $this->getKernel(array('getBundle'));
|
||||
$kernel
|
||||
->expects($this->once())
|
||||
->method('getBundle')
|
||||
@ -539,7 +477,7 @@ EOF;
|
||||
|
||||
public function testLocateResourceReturnsTheDirOneForResourcesAndBundleOnes()
|
||||
{
|
||||
$kernel = $this->getKernel();
|
||||
$kernel = $this->getKernel(array('getBundle'));
|
||||
$kernel
|
||||
->expects($this->once())
|
||||
->method('getBundle')
|
||||
@ -558,7 +496,7 @@ EOF;
|
||||
$parent = $this->getBundle(__DIR__.'/Fixtures/BaseBundle', null, 'BaseBundle', 'BaseBundle');
|
||||
$child = $this->getBundle(__DIR__.'/Fixtures/ChildBundle', 'ParentBundle', 'ChildBundle', 'ChildBundle');
|
||||
|
||||
$kernel = $this->getKernel();
|
||||
$kernel = $this->getKernel(array('getBundle'));
|
||||
$kernel
|
||||
->expects($this->exactly(4))
|
||||
->method('getBundle')
|
||||
@ -593,7 +531,7 @@ EOF;
|
||||
|
||||
public function testLocateResourceOnDirectories()
|
||||
{
|
||||
$kernel = $this->getKernel();
|
||||
$kernel = $this->getKernel(array('getBundle'));
|
||||
$kernel
|
||||
->expects($this->exactly(2))
|
||||
->method('getBundle')
|
||||
@ -609,7 +547,7 @@ EOF;
|
||||
$kernel->locateResource('@FooBundle/Resources', __DIR__.'/Fixtures/Resources')
|
||||
);
|
||||
|
||||
$kernel = $this->getKernel();
|
||||
$kernel = $this->getKernel(array('getBundle'));
|
||||
$kernel
|
||||
->expects($this->exactly(2))
|
||||
->method('getBundle')
|
||||
@ -631,13 +569,19 @@ EOF;
|
||||
$parent = $this->getBundle(null, null, 'ParentABundle');
|
||||
$child = $this->getBundle(null, 'ParentABundle', 'ChildABundle');
|
||||
|
||||
$kernel = $this->getKernel();
|
||||
// use test kernel so we can access getBundleMap()
|
||||
$kernel = $this
|
||||
->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest')
|
||||
->setMethods(array('registerBundles'))
|
||||
->setConstructorArgs(array('test', false))
|
||||
->getMock()
|
||||
;
|
||||
$kernel
|
||||
->expects($this->once())
|
||||
->method('registerBundles')
|
||||
->will($this->returnValue(array($parent, $child)))
|
||||
;
|
||||
$kernel->initializeBundles();
|
||||
$kernel->boot();
|
||||
|
||||
$map = $kernel->getBundleMap();
|
||||
$this->assertEquals(array($child, $parent), $map['ParentABundle']);
|
||||
@ -649,14 +593,20 @@ EOF;
|
||||
$parent = $this->getBundle(null, 'GrandParentBBundle', 'ParentBBundle');
|
||||
$child = $this->getBundle(null, 'ParentBBundle', 'ChildBBundle');
|
||||
|
||||
$kernel = $this->getKernel();
|
||||
// use test kernel so we can access getBundleMap()
|
||||
$kernel = $this
|
||||
->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest')
|
||||
->setMethods(array('registerBundles'))
|
||||
->setConstructorArgs(array('test', false))
|
||||
->getMock()
|
||||
;
|
||||
$kernel
|
||||
->expects($this->once())
|
||||
->method('registerBundles')
|
||||
->will($this->returnValue(array($grandparent, $parent, $child)))
|
||||
;
|
||||
|
||||
$kernel->initializeBundles();
|
||||
$kernel->boot();
|
||||
|
||||
$map = $kernel->getBundleMap();
|
||||
$this->assertEquals(array($child, $parent, $grandparent), $map['GrandParentBBundle']);
|
||||
@ -666,18 +616,13 @@ EOF;
|
||||
|
||||
/**
|
||||
* @expectedException \LogicException
|
||||
* @expectedExceptionMessage Bundle "ChildCBundle" extends bundle "FooBar", which is not registered.
|
||||
*/
|
||||
public function testInitializeBundlesThrowsExceptionWhenAParentDoesNotExists()
|
||||
{
|
||||
$child = $this->getBundle(null, 'FooBar', 'ChildCBundle');
|
||||
|
||||
$kernel = $this->getKernel();
|
||||
$kernel
|
||||
->expects($this->once())
|
||||
->method('registerBundles')
|
||||
->will($this->returnValue(array($child)))
|
||||
;
|
||||
$kernel->initializeBundles();
|
||||
$kernel = $this->getKernel(array(), array($child));
|
||||
$kernel->boot();
|
||||
}
|
||||
|
||||
public function testInitializeBundlesSupportsArbitraryBundleRegistrationOrder()
|
||||
@ -686,14 +631,20 @@ EOF;
|
||||
$parent = $this->getBundle(null, 'GrandParentCBundle', 'ParentCBundle');
|
||||
$child = $this->getBundle(null, 'ParentCBundle', 'ChildCBundle');
|
||||
|
||||
$kernel = $this->getKernel();
|
||||
// use test kernel so we can access getBundleMap()
|
||||
$kernel = $this
|
||||
->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest')
|
||||
->setMethods(array('registerBundles'))
|
||||
->setConstructorArgs(array('test', false))
|
||||
->getMock()
|
||||
;
|
||||
$kernel
|
||||
->expects($this->once())
|
||||
->method('registerBundles')
|
||||
->will($this->returnValue(array($parent, $grandparent, $child)))
|
||||
;
|
||||
|
||||
$kernel->initializeBundles();
|
||||
$kernel->boot();
|
||||
|
||||
$map = $kernel->getBundleMap();
|
||||
$this->assertEquals(array($child, $parent, $grandparent), $map['GrandParentCBundle']);
|
||||
@ -703,6 +654,7 @@ EOF;
|
||||
|
||||
/**
|
||||
* @expectedException \LogicException
|
||||
* @expectedExceptionMessage Bundle "ParentCBundle" is directly extended by two bundles "ChildC2Bundle" and "ChildC1Bundle".
|
||||
*/
|
||||
public function testInitializeBundlesThrowsExceptionWhenABundleIsDirectlyExtendedByTwoBundles()
|
||||
{
|
||||
@ -710,59 +662,41 @@ EOF;
|
||||
$child1 = $this->getBundle(null, 'ParentCBundle', 'ChildC1Bundle');
|
||||
$child2 = $this->getBundle(null, 'ParentCBundle', 'ChildC2Bundle');
|
||||
|
||||
$kernel = $this->getKernel();
|
||||
$kernel
|
||||
->expects($this->once())
|
||||
->method('registerBundles')
|
||||
->will($this->returnValue(array($parent, $child1, $child2)))
|
||||
;
|
||||
$kernel->initializeBundles();
|
||||
$kernel = $this->getKernel(array(), array($parent, $child1, $child2));
|
||||
$kernel->boot();
|
||||
}
|
||||
|
||||
/**
|
||||
* @expectedException \LogicException
|
||||
* @expectedExceptionMessage Trying to register two bundles with the same name "DuplicateName"
|
||||
*/
|
||||
public function testInitializeBundleThrowsExceptionWhenRegisteringTwoBundlesWithTheSameName()
|
||||
{
|
||||
$fooBundle = $this->getBundle(null, null, 'FooBundle', 'DuplicateName');
|
||||
$barBundle = $this->getBundle(null, null, 'BarBundle', 'DuplicateName');
|
||||
|
||||
$kernel = $this->getKernel();
|
||||
$kernel
|
||||
->expects($this->once())
|
||||
->method('registerBundles')
|
||||
->will($this->returnValue(array($fooBundle, $barBundle)))
|
||||
;
|
||||
$kernel->initializeBundles();
|
||||
$kernel = $this->getKernel(array(), array($fooBundle, $barBundle));
|
||||
$kernel->boot();
|
||||
}
|
||||
|
||||
/**
|
||||
* @expectedException \LogicException
|
||||
* @expectedExceptionMessage Bundle "CircularRefBundle" can not extend itself.
|
||||
*/
|
||||
public function testInitializeBundleThrowsExceptionWhenABundleExtendsItself()
|
||||
{
|
||||
$circularRef = $this->getBundle(null, 'CircularRefBundle', 'CircularRefBundle');
|
||||
|
||||
$kernel = $this->getKernel();
|
||||
$kernel
|
||||
->expects($this->once())
|
||||
->method('registerBundles')
|
||||
->will($this->returnValue(array($circularRef)))
|
||||
;
|
||||
$kernel->initializeBundles();
|
||||
$kernel = $this->getKernel(array(), array($circularRef));
|
||||
$kernel->boot();
|
||||
}
|
||||
|
||||
public function testTerminateReturnsSilentlyIfKernelIsNotBooted()
|
||||
{
|
||||
$kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest')
|
||||
->disableOriginalConstructor()
|
||||
->setMethods(array('getHttpKernel'))
|
||||
->getMock();
|
||||
|
||||
$kernel = $this->getKernel(array('getHttpKernel'));
|
||||
$kernel->expects($this->never())
|
||||
->method('getHttpKernel');
|
||||
|
||||
$kernel->setIsBooted(false);
|
||||
$kernel->terminate(Request::create('/'), new Response());
|
||||
}
|
||||
|
||||
@ -777,16 +711,12 @@ EOF;
|
||||
->expects($this->never())
|
||||
->method('terminate');
|
||||
|
||||
$kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest')
|
||||
->disableOriginalConstructor()
|
||||
->setMethods(array('getHttpKernel'))
|
||||
->getMock();
|
||||
|
||||
$kernel = $this->getKernel(array('getHttpKernel'));
|
||||
$kernel->expects($this->once())
|
||||
->method('getHttpKernel')
|
||||
->will($this->returnValue($httpKernelMock));
|
||||
|
||||
$kernel->setIsBooted(true);
|
||||
$kernel->boot();
|
||||
$kernel->terminate(Request::create('/'), new Response());
|
||||
|
||||
// implements TerminableInterface
|
||||
@ -799,19 +729,20 @@ EOF;
|
||||
->expects($this->once())
|
||||
->method('terminate');
|
||||
|
||||
$kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest')
|
||||
->disableOriginalConstructor()
|
||||
->setMethods(array('getHttpKernel'))
|
||||
->getMock();
|
||||
|
||||
$kernel = $this->getKernel(array('getHttpKernel'));
|
||||
$kernel->expects($this->exactly(2))
|
||||
->method('getHttpKernel')
|
||||
->will($this->returnValue($httpKernelMock));
|
||||
|
||||
$kernel->setIsBooted(true);
|
||||
$kernel->boot();
|
||||
$kernel->terminate(Request::create('/'), new Response());
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a mock for the BundleInterface
|
||||
*
|
||||
* @return BundleInterface
|
||||
*/
|
||||
protected function getBundle($dir = null, $parent = null, $className = null, $bundleName = null)
|
||||
{
|
||||
$bundle = $this
|
||||
@ -847,22 +778,28 @@ EOF;
|
||||
return $bundle;
|
||||
}
|
||||
|
||||
protected function getKernel()
|
||||
/**
|
||||
* Returns a mock for the abstract kernel.
|
||||
*
|
||||
* @param array $methods Additional methods to mock (besides the abstract ones)
|
||||
* @param array $bundles Bundles to register
|
||||
*
|
||||
* @return Kernel
|
||||
*/
|
||||
protected function getKernel(array $methods = array(), array $bundles = array())
|
||||
{
|
||||
return $this
|
||||
->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest')
|
||||
->setMethods(array('getBundle', 'registerBundles'))
|
||||
->disableOriginalConstructor()
|
||||
->getMock()
|
||||
;
|
||||
}
|
||||
|
||||
protected function getKernelForInvalidLocateResource()
|
||||
{
|
||||
return $this
|
||||
$kernel = $this
|
||||
->getMockBuilder('Symfony\Component\HttpKernel\Kernel')
|
||||
->disableOriginalConstructor()
|
||||
->setMethods($methods)
|
||||
->setConstructorArgs(array('test', false))
|
||||
->getMockForAbstractClass()
|
||||
;
|
||||
|
||||
$kernel->expects($this->any())
|
||||
->method('registerBundles')
|
||||
->will($this->returnValue($bundles))
|
||||
;
|
||||
|
||||
return $kernel;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user