Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

116 lines (107 sloc) 2.604 kB
<?php
/**
* CakePHP(tm) : Rapid Development Framework (http://cakephp.org)
* Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
*
* Licensed under The MIT License
* For full copyright and license information, please see the LICENSE.txt
* Redistributions of files must retain the above copyright notice.
*
* @copyright Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
* @link http://cakephp.org CakePHP(tm) Project
* @since CakePHP(tm) v3.0
* @license http://www.opensource.org/licenses/mit-license.php MIT License
*/
namespace Cake\Test\TestCase\View\Input;
use Cake\TestSuite\TestCase;
use Cake\View\Input\Text;
use Cake\View\StringTemplate;
/**
* Text input test.
*/
class TextTest extends TestCase {
public function setUp() {
parent::setUp();
$templates = [
'input' => '<input type="{{type}}" name="{{name}}"{{attrs}}>',
];
$this->templates = new StringTemplate();
$this->templates->add($templates);
}
/**
* Test render in a simple case.
*
* @return void
*/
public function testRenderSimple() {
$text = new Text($this->templates);
$result = $text->render(['name' => 'my_input']);
$expected = [
'input' => ['type' => 'text', 'name' => 'my_input']
];
$this->assertTags($result, $expected);
}
/**
* Test render with custom type
*
* @return void
*/
public function testRenderType() {
$text = new Text($this->templates);
$data = [
'name' => 'my_input',
'type' => 'email',
];
$result = $text->render($data);
$expected = [
'input' => ['type' => 'email', 'name' => 'my_input']
];
$this->assertTags($result, $expected);
}
/**
* Test render with a value
*
* @return void
*/
public function testRenderWithValue() {
$text = new Text($this->templates);
$data = [
'name' => 'my_input',
'type' => 'email',
'value' => 'Some <value>'
];
$result = $text->render($data);
$expected = [
'input' => [
'type' => 'email',
'name' => 'my_input',
'value' => 'Some &lt;value&gt;'
]
];
$this->assertTags($result, $expected);
}
/**
* Test render with additional attributes.
*
* @return void
*/
public function testRenderAttributes() {
$text = new Text($this->templates);
$data = [
'name' => 'my_input',
'type' => 'email',
'class' => 'form-control',
'required' => true
];
$result = $text->render($data);
$expected = [
'input' => [
'type' => 'email',
'name' => 'my_input',
'class' => 'form-control',
'required' => 'required',
]
];
$this->assertTags($result, $expected);
}
}
Jump to Line
Something went wrong with that request. Please try again.