Вход Регистрация
Файл: symfony-2.7/src/Symfony/Bridge/Twig/Tests/Extension/FormExtensionTableLayoutTest.php
Строк: 223
<?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 SymfonyBridgeTwigTestsExtension;

use 
SymfonyComponentFormFormView;
use 
SymfonyBridgeTwigFormTwigRenderer;
use 
SymfonyBridgeTwigFormTwigRendererEngine;
use 
SymfonyBridgeTwigExtensionFormExtension;
use 
SymfonyBridgeTwigExtensionTranslationExtension;
use 
SymfonyComponentFormTestsAbstractTableLayoutTest;
use 
SymfonyBridgeTwigTestsExtensionFixturesStubTranslator;
use 
SymfonyBridgeTwigTestsExtensionFixturesStubFilesystemLoader;

class 
FormExtensionTableLayoutTest extends AbstractTableLayoutTest
{
    
/**
     * @var FormExtension
     */
    
protected $extension;

    protected function 
setUp()
    {
        
parent::setUp();

        
$rendererEngine = new TwigRendererEngine(array(
            
'form_table_layout.html.twig',
            
'custom_widgets.html.twig',
        ));
        
$renderer = new TwigRenderer($rendererEngine$this->getMock('SymfonyComponentSecurityCsrfCsrfTokenManagerInterface'));

        
$this->extension = new FormExtension($renderer);

        
$loader = new StubFilesystemLoader(array(
            
__DIR__.'/../../Resources/views/Form',
            
__DIR__.'/Fixtures/templates/form',
        ));

        
$environment = new Twig_Environment($loader, array('strict_variables' => true));
        
$environment->addExtension(new TranslationExtension(new StubTranslator()));
        
$environment->addGlobal('global''');
        
$environment->addExtension($this->extension);

        
$this->extension->initRuntime($environment);
    }

    protected function 
tearDown()
    {
        
parent::tearDown();

        
$this->extension null;
    }

    protected function 
renderForm(FormView $view, array $vars = array())
    {
        return (string) 
$this->extension->renderer->renderBlock($view'form'$vars);
    }

    protected function 
renderEnctype(FormView $view)
    {
        return (string) 
$this->extension->renderer->searchAndRenderBlock($view'enctype');
    }

    protected function 
renderLabel(FormView $view$label null, array $vars = array())
    {
        if (
$label !== null) {
            
$vars += array('label' => $label);
        }

        return (string) 
$this->extension->renderer->searchAndRenderBlock($view'label'$vars);
    }

    protected function 
renderErrors(FormView $view)
    {
        return (string) 
$this->extension->renderer->searchAndRenderBlock($view'errors');
    }

    protected function 
renderWidget(FormView $view, array $vars = array())
    {
        return (string) 
$this->extension->renderer->searchAndRenderBlock($view'widget'$vars);
    }

    protected function 
renderRow(FormView $view, array $vars = array())
    {
        return (string) 
$this->extension->renderer->searchAndRenderBlock($view'row'$vars);
    }

    protected function 
renderRest(FormView $view, array $vars = array())
    {
        return (string) 
$this->extension->renderer->searchAndRenderBlock($view'rest'$vars);
    }

    protected function 
renderStart(FormView $view, array $vars = array())
    {
        return (string) 
$this->extension->renderer->renderBlock($view'form_start'$vars);
    }

    protected function 
renderEnd(FormView $view, array $vars = array())
    {
        return (string) 
$this->extension->renderer->renderBlock($view'form_end'$vars);
    }

    protected function 
setTheme(FormView $view, array $themes)
    {
        
$this->extension->renderer->setTheme($view$themes);
    }
}
Онлайн: 3
Реклама