/**
  * @test
  * @dataProvider getCompileTestValues
  * @param array $childNodes
  * @param $expected
  */
 public function testCompileReturnsAndAssignsExpectedVariables(array $childNodes, $expected)
 {
     $node = new ViewHelperNode(new ViewHelperResolver(), 'f', 'if', array(), new ParsingState());
     foreach ($childNodes as $childNode) {
         $node->addChildNode($childNode);
     }
     $compiler = $this->getMock('TYPO3Fluid\\Fluid\\Core\\Compiler\\TemplateCompiler', array('wrapChildNodesInClosure', 'wrapViewHelperNodeArgumentEvaluationInClosure'));
     $compiler->expects($this->any())->method('wrapChildNodesInClosure')->willReturn('closure');
     $compiler->expects($this->any())->method('wrapViewHelperNodeArgumentEvaluationInClosure')->willReturn('arg-closure');
     $init = '';
     $this->viewHelper->compile('foobar-args', 'foobar-closure', $init, $node, $compiler);
     $this->assertEquals($expected, $init);
 }
 /**
  * @test
  * @dataProvider getCompileTestValues
  * @param array $childNodes
  * @param string $expected
  */
 public function testCompileReturnsAndAssignsExpectedVariables(array $childNodes, $expected)
 {
     $node = new ViewHelperNode($this->renderingContext, 'f', 'if', [], new ParsingState());
     foreach ($childNodes as $childNode) {
         $node->addChildNode($childNode);
     }
     $compiler = $this->getMock(TemplateCompiler::class, ['wrapChildNodesInClosure', 'wrapViewHelperNodeArgumentEvaluationInClosure']);
     $compiler->setRenderingContext($this->renderingContext);
     $compiler->expects($this->any())->method('wrapChildNodesInClosure')->willReturn('closure');
     $compiler->expects($this->any())->method('wrapViewHelperNodeArgumentEvaluationInClosure')->willReturn('arg-closure');
     $init = '';
     $this->viewHelper->compile('foobar-args', 'foobar-closure', $init, $node, $compiler);
     $this->assertEquals($expected, $init);
 }