View sourcecode

The following files exists in this folder. Click to view.

CFormElementSelectTest.php

1 lines ASCII Unix (LF)
1
<?php

namespace Mos\HTMLForm;

/**
 * HTML Form elements.
 *
 */
class CFormElementSelectTest extends \PHPUnit_Framework_TestCase
{

    /**
     * Test
     *
     * @return void
     *
     */
    public function testCreate()
    {
        $name = "name";
        $attr = [
            "options" => []
        ];
        
        $elem = new \Mos\HTMLForm\CFormElementSelect($name, $attr);

        $res = $elem['name'];
        $exp = $name;
        $this->assertEquals($res, $exp, "Name missmatch.");

        $res = $elem['type'];
        $exp = "select";
        $this->assertEquals($res, $exp, "Type missmatch.");

        $res = $elem->getValue();
        $exp = null;
        $this->assertEquals($res, $exp, "Value missmatch.");

        $res = is_array($elem['options']) && empty($elem['options']);
        $exp = true;
        $this->assertEquals($res, $exp, "Type missmatch.");
    }



    /**
     * Test
     *
     * @expectedException \Mos\HTMLForm\CFormException
     *
     */
    public function testCreateException()
    {
        $name = "name";
        $attr = [];
        
        $elem = new \Mos\HTMLForm\CFormElementSelect($name, $attr);
    }


    /**
     * Test
     *
     * @return void
     *
     */
    public function testGetHTMLEmpty()
    {
        $name = "name";
        $attr = [
            "options" => []
        ];
        
        $elem = new \Mos\HTMLForm\CFormElementSelect($name, $attr);

        $res = $elem->getHTML();
        $exp = <<<EOD
<p>
<label for='form-element-name'>Name:</label>
<br/>
<select id='form-element-name' name='name'>

</select>

</p>
<p class='cf-desc'></p>
EOD;
        $this->assertEquals($res, $exp, "Output HTML missmatch.");
    }


    /**
     * Test
     *
     * @return void
     *
     */
    public function testGetHTML()
    {
        $name = "name";
        $attr = [
            'options' => [
                'default' => 'Select...',
                '01' => 'January',
            ],
        ];
        
        $elem = new \Mos\HTMLForm\CFormElementSelect($name, $attr);

        $res = $elem->getHTML();
        $exp = <<<EOD
<p>
<label for='form-element-name'>Name:</label>
<br/>
<select id='form-element-name' name='name'>
<option value='default'>Select...</option>
<option value='01'>January</option>

</select>

</p>
<p class='cf-desc'></p>
EOD;
        $this->assertEquals($res, $exp, "Output HTML missmatch.");
    }
}