/** * @test * @dataProvider getEvaluateTestValues * @param array $variables * @param string $path * @param mixed $expected */ public function testEvaluateGetsExpectedValue(array $variables, $path, $expected) { $node = new ObjectAccessorNode($path); $renderingContext = $this->getMock('TYPO3Fluid\\Fluid\\Core\\Rendering\\RenderingContextInterface'); $variableContainer = new StandardVariableProvider($variables); $renderingContext->expects($this->any())->method('getVariableProvider')->will($this->returnValue($variableContainer)); $value = $node->evaluate($renderingContext); $this->assertEquals($expected, $value); }
/** * @test */ public function testEvaluatedUsesVariableProviderGetByPath() { $node = new ObjectAccessorNode('foo.bar'); $renderingContext = $this->getMock(RenderingContextInterface::class); $variableContainer = $this->getMock(StandardVariableProvider::class, array()); $variableContainer->expects($this->once())->method('getByPath')->with('foo.bar', array())->will($this->returnValue('foo')); $renderingContext->expects($this->any())->method('getVariableProvider')->will($this->returnValue($variableContainer)); $value = $node->evaluate($renderingContext); $this->assertEquals('foo', $value); }