*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Symfony\Bridge\Twig\Tests\Extension;
use Symfony\Bridge\Twig\Extension\CodeExtension;
class CodeExtensionTest extends \PHPUnit_Framework_TestCase
{
protected $helper;
public function testFormatFile()
{
$expected = sprintf('%s at line 25', __FILE__, __FILE__);
$this->assertEquals($expected, $this->getExtension()->formatFile(__FILE__, 25));
}
/**
* @dataProvider getClassNameProvider
*/
public function testGettingClassAbbreviation($class, $abbr)
{
$this->assertEquals($this->getExtension()->abbrClass($class), $abbr);
}
/**
* @dataProvider getMethodNameProvider
*/
public function testGettingMethodAbbreviation($method, $abbr)
{
$this->assertEquals($this->getExtension()->abbrMethod($method), $abbr);
}
public function getClassNameProvider()
{
return array(
array('F\Q\N\Foo', 'Foo'),
array('Bare', 'Bare'),
);
}
public function getMethodNameProvider()
{
return array(
array('F\Q\N\Foo::Method', 'Foo::Method()'),
array('Bare::Method', 'Bare::Method()'),
array('Closure', 'Closure'),
array('Method', 'Method()')
);
}
public function testGetName()
{
$this->assertEquals('code', $this->getExtension()->getName());
}
protected function getExtension()
{
return new CodeExtension('txmt://open?url=file://%f&line=%l', '/root', 'UTF-8');
}
}