Файл: gapps/vendor/symfony/http-kernel/Tests/EventListener/AddRequestFormatsListenerTest.php
Строк: 115
<?php
/*
 * This file is part of the Symfony package.
 *
 * (c) Fabien Potencier <fabien@symfony.com>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */
namespace SymfonyComponentHttpKernelTestsEventListener;
use SymfonyComponentHttpKernelEventListenerAddRequestFormatsListener;
use SymfonyComponentHttpFoundationRequest;
use SymfonyComponentHttpKernelKernelEvents;
/**
 * Test AddRequestFormatsListener class.
 *
 * @author Gildas Quemener <gildas.quemener@gmail.com>
 */
class AddRequestFormatsListenerTest extends PHPUnit_Framework_TestCase
{
    /**
     * @var AddRequestFormatsListener
     */
    private $listener;
    protected function setUp()
    {
        $this->listener = new AddRequestFormatsListener(array('csv' => array('text/csv', 'text/plain')));
    }
    protected function tearDown()
    {
        $this->listener = null;
    }
    public function testIsAnEventSubscriber()
    {
        $this->assertInstanceOf('SymfonyComponentEventDispatcherEventSubscriberInterface', $this->listener);
    }
    public function testRegisteredEvent()
    {
        $this->assertEquals(
            array(KernelEvents::REQUEST => 'onKernelRequest'),
            AddRequestFormatsListener::getSubscribedEvents()
        );
    }
    public function testSetAdditionalFormats()
    {
        $request = $this->getRequestMock();
        $event = $this->getGetResponseEventMock($request);
        $request->expects($this->once())
            ->method('setFormat')
            ->with('csv', array('text/csv', 'text/plain'));
        $this->listener->onKernelRequest($event);
    }
    protected function getRequestMock()
    {
        return $this->getMock('SymfonyComponentHttpFoundationRequest');
    }
    protected function getGetResponseEventMock(Request $request)
    {
        $event = $this
            ->getMockBuilder('SymfonyComponentHttpKernelEventGetResponseEvent')
            ->disableOriginalConstructor()
            ->getMock();
        $event->expects($this->any())
            ->method('getRequest')
            ->will($this->returnValue($request));
        return $event;
    }
}