13
13
14
14
use PHPUnit \Framework \TestCase ;
15
15
use Symfony \Bridge \Twig \Node \FormThemeNode ;
16
+ use Symfony \Bridge \Twig \Tests \Extension \RuntimeLoaderProvider ;
17
+ use Symfony \Component \Form \FormRenderer ;
18
+ use Symfony \Component \Form \FormRendererEngineInterface ;
16
19
use Twig \Compiler ;
17
20
use Twig \Environment ;
18
21
use Twig \Node \Expression \ArrayExpression ;
22
25
23
26
class FormThemeTest extends TestCase
24
27
{
28
+ use RuntimeLoaderProvider;
29
+
25
30
public function testConstructor ()
26
31
{
27
32
$ form = new NameExpression ('form ' , 0 );
@@ -48,11 +53,14 @@ public function testCompile()
48
53
49
54
$ node = new FormThemeNode ($ form , $ resources , 0 );
50
55
51
- $ compiler = new Compiler (new Environment ($ this ->getMockBuilder ('Twig\Loader\LoaderInterface ' )->getMock ()));
56
+ $ environment = new Environment ($ this ->getMockBuilder ('Twig\Loader\LoaderInterface ' )->getMock ());
57
+ $ formRenderer = new FormRenderer ($ this ->getMockBuilder (FormRendererEngineInterface::class)->getMock ());
58
+ $ this ->registerTwigRuntimeLoader ($ environment , $ formRenderer );
59
+ $ compiler = new Compiler ($ environment );
52
60
53
61
$ this ->assertEquals (
54
62
sprintf (
55
- '$this->env->getRuntime( \' Symfony\Component\Form\FormRenderer \' )->setTheme(%s, array(0 => "tpl1", 1 => "tpl2")); ' ,
63
+ '$this->env->getRuntime(" Symfony \\\\ Component \\\\ Form \\\\ FormRenderer" )->setTheme(%s, array(0 => "tpl1", 1 => "tpl2")); ' ,
56
64
$ this ->getVariableGetter ('form ' )
57
65
),
58
66
trim ($ compiler ->compile ($ node )->getSource ())
@@ -64,7 +72,7 @@ public function testCompile()
64
72
65
73
$ this ->assertEquals (
66
74
sprintf (
67
- '$this->env->getRuntime( \' Symfony\Component\Form\FormRenderer \' )->setTheme(%s, "tpl1"); ' ,
75
+ '$this->env->getRuntime(" Symfony \\\\ Component \\\\ Form \\\\ FormRenderer" )->setTheme(%s, "tpl1"); ' ,
68
76
$ this ->getVariableGetter ('form ' )
69
77
),
70
78
trim ($ compiler ->compile ($ node )->getSource ())
0 commit comments