ChainTest.php

File

drupal/core/vendor/twig/twig/test/Twig/Tests/Loader/ChainTest.php
View source
<?php

/*
 * This file is part of Twig.
 *
 * (c) Fabien Potencier
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */
class Twig_Tests_Loader_ChainTest extends PHPUnit_Framework_TestCase {
  public function testGetSource() {
    $loader = new Twig_Loader_Chain(array(
      new Twig_Loader_Array(array(
        'foo' => 'bar',
      )),
      new Twig_Loader_Array(array(
        'foo' => 'foobar',
        'bar' => 'foo',
      )),
    ));
    $this
      ->assertEquals('bar', $loader
      ->getSource('foo'));
    $this
      ->assertEquals('foo', $loader
      ->getSource('bar'));
  }

  /**
   * @expectedException Twig_Error_Loader
   */
  public function testGetSourceWhenTemplateDoesNotExist() {
    $loader = new Twig_Loader_Chain(array());
    $loader
      ->getSource('foo');
  }
  public function testGetCacheKey() {
    $loader = new Twig_Loader_Chain(array(
      new Twig_Loader_Array(array(
        'foo' => 'bar',
      )),
      new Twig_Loader_Array(array(
        'foo' => 'foobar',
        'bar' => 'foo',
      )),
    ));
    $this
      ->assertEquals('bar', $loader
      ->getCacheKey('foo'));
    $this
      ->assertEquals('foo', $loader
      ->getCacheKey('bar'));
  }

  /**
   * @expectedException Twig_Error_Loader
   */
  public function testGetCacheKeyWhenTemplateDoesNotExist() {
    $loader = new Twig_Loader_Chain(array());
    $loader
      ->getCacheKey('foo');
  }
  public function testAddLoader() {
    $loader = new Twig_Loader_Chain();
    $loader
      ->addLoader(new Twig_Loader_Array(array(
      'foo' => 'bar',
    )));
    $this
      ->assertEquals('bar', $loader
      ->getSource('foo'));
  }

}

Classes