diff --git a/lib/Twig/Loader/Array.php b/lib/Twig/Loader/Array.php index e8dc16052..962d64cb3 100644 --- a/lib/Twig/Loader/Array.php +++ b/lib/Twig/Loader/Array.php @@ -90,6 +90,10 @@ class Twig_Loader_Array implements Twig_LoaderInterface */ public function isFresh($name, $time) { + if (!isset($this->templates[$name])) { + throw new Twig_Error_Loader(sprintf('Template "%s" is not defined.', $name)); + } + return true; } } diff --git a/test/Twig/Tests/Loader/ArrayTest.php b/test/Twig/Tests/Loader/ArrayTest.php index 38a8f89c0..ae7648ffd 100644 --- a/test/Twig/Tests/Loader/ArrayTest.php +++ b/test/Twig/Tests/Loader/ArrayTest.php @@ -58,4 +58,14 @@ class Twig_Tests_Loader_ArrayTest extends PHPUnit_Framework_TestCase $loader = new Twig_Loader_Array(array('foo' => 'bar')); $this->assertTrue($loader->isFresh('foo', time())); } + + /** + * @expectedException Twig_Error_Loader + */ + public function testIsFreshWhenTemplateDoesNotExist() + { + $loader = new Twig_Loader_Array(array()); + + $loader->isFresh('foo', time()); + } }