Location: PHPKode > projects > Runemaster > specs/LayoutSpec.php
<?php
/* vim: set expandtab tabstop=4 shiftwidth=4: */

/* 
 * @package    Runemaster
 * @copyright  2008 KUMAKURA Yousuke All rights reserved.
 * @version    SVN: $Id: LayoutSpec.php 42 2008-08-20 15:33:33Z kumatch $
 * @since      File available since Release 0.2.0
 */

require_once dirname(__FILE__) . '/prepare.php';

// {{{ Describeレイアウト機能

/**
 * レイアウト機能に関するSpec
 *
 * @package    Runemaster
 * @copyright  2008 KUMAKURA Yousuke All rights reserved.
 * @version    Release: @package_version@
 * @since      Class available since Release 0.2.0
 */
class Describeレイアウト機能 extends SpecCommon
{

    // {{{ properties

    /**#@+
     * @access public
     */

    /**#@-*/

    /**#@+
     * @access protected
     */

    /**#@-*/

    /**#@+
     * @access private
     */

    /**#@-*/

    /**#@+
     * @access public
     */

    public function it指定タグの内部へコンテンツを置換挿入できる()
    {
        $master = $this->_master;
        $master->setLayout('Layout/Basic');
        $display = rendererInTest($master, 'Layout/Content');
        $result = file_get_contents('./results/Layout/Inner.html');

        $this->spec($display)->should->be($result);
    }

    public function it指定タグの内部へと明示的に指定してコンテンツを置換挿入できる()
    {
        $master = $this->_master;
        $master->setLayout('Layout/Inner');
        $display = rendererInTest($master, 'Layout/Content');
        $result = file_get_contents('./results/Layout/Inner.html');

        $this->spec($display)->should->be($result);
    }

    public function it指定タグの外部へと明示的に指定してコンテンツを置換挿入できる()
    {
        $master = $this->_master;
        $master->setLayout('Layout/Outer');
        $display = rendererInTest($master, 'Layout/Content');
        $result = file_get_contents('./results/Layout/Outer.html');

        $this->spec($display)->should->be($result);
    }

    public function itレイアウトテンプレートのディレクトリを個別指定できる()
    {
        $master = $this->_master;
        $master->setLayout('Inner', $this->_templateDirectory . '/Layout');
        $display = rendererInTest($master, 'Layout/Content');
        $result = file_get_contents('./results/Layout/Inner.html');

        $this->spec($display)->should->be($result);
    }

    public function it指定タグ内部に記述してあるテキストをレイアウトへ挿入するコンテンツとして利用できる()
    {
        $master = $this->_master;
        $master->setLayout('Layout/Inner');
        $display = rendererInTest($master, 'Layout/ContentsWithOther');
        $result = file_get_contents('./results/Layout/Inner.html');

        $this->spec($display)->should->be($result);
    }

    public function it指定タグ内部に記述してあると明示的にしたテキストをレイアウトへ挿入するコンテンツとして利用できる()
    {
        $master = $this->_master;
        $master->setLayout('Layout/Inner');
        $display = rendererInTest($master, 'Layout/ContentsInInner');
        $result = file_get_contents('./results/Layout/Inner.html');

        $this->spec($display)->should->be($result);
    }

    public function it指定タグ外部を含めると明示的にしたテキストをレイアウトへ挿入するコンテンツとして利用できる()
    {
        $master = $this->_master;
        $master->setLayout('Layout/Outer');
        $display = rendererInTest($master, 'Layout/ContentsInOuter');
        $result = file_get_contents('./results/Layout/Inner.html');

        $this->spec($display)->should->be($result);
    }

    /**#@-*/

    /**#@+
     * @access protected
     */

    /**#@-*/

    /**#@+
     * @access private
     */

    /**#@-*/

    // }}}
}

// }}}

/*
 * Local Variables:
 * mode: php
 * coding: utf-8
 * tab-width: 4
 * c-basic-offset: 4
 * c-hanging-comment-ender-p: nil
 * indent-tabs-mode: nil
 * End:
 */
?>
Return current item: Runemaster