|
|
@@ -3407,10 +3407,11 @@ class FormHelperTest extends CakeTestCase {
|
|
|
|
|
|
/**
|
|
|
* Test that radios with a 0 value are selected under the correct conditions.
|
|
|
+ * Also ensure that values that are booleanish are handled correctly.
|
|
|
*
|
|
|
* @return void
|
|
|
*/
|
|
|
- public function testRadioOptionWithZeroValue() {
|
|
|
+ public function testRadioOptionWithBooleanishValues() {
|
|
|
$expected = array(
|
|
|
'fieldset' => array(),
|
|
|
'legend' => array(),
|
|
|
@@ -3432,6 +3433,9 @@ class FormHelperTest extends CakeTestCase {
|
|
|
$result = $this->Form->radio('Model.field', array('1' => 'Yes', '0' => 'No'), array('value' => 0));
|
|
|
$this->assertTags($result, $expected);
|
|
|
|
|
|
+ $result = $this->Form->radio('Model.field', array('1' => 'Yes', '0' => 'No'), array('value' => false));
|
|
|
+ $this->assertTags($result, $expected);
|
|
|
+
|
|
|
$expected = array(
|
|
|
'fieldset' => array(),
|
|
|
'legend' => array(),
|
|
|
@@ -3456,6 +3460,30 @@ class FormHelperTest extends CakeTestCase {
|
|
|
|
|
|
$result = $this->Form->radio('Model.field', array('1' => 'Yes', '0' => 'No'));
|
|
|
$this->assertTags($result, $expected);
|
|
|
+
|
|
|
+ $expected = array(
|
|
|
+ 'fieldset' => array(),
|
|
|
+ 'legend' => array(),
|
|
|
+ 'Field',
|
|
|
+ '/legend',
|
|
|
+ array('input' => array('type' => 'radio', 'name' => 'data[Model][field]', 'checked' => 'checked', 'value' => '1', 'id' => 'ModelField1')),
|
|
|
+ array('label' => array('for' => 'ModelField1')),
|
|
|
+ 'Yes',
|
|
|
+ '/label',
|
|
|
+ array('input' => array('type' => 'radio', 'name' => 'data[Model][field]', 'value' => '0', 'id' => 'ModelField0')),
|
|
|
+ array('label' => array('for' => 'ModelField0')),
|
|
|
+ 'No',
|
|
|
+ '/label',
|
|
|
+ '/fieldset'
|
|
|
+ );
|
|
|
+ $result = $this->Form->radio('Model.field', array('1' => 'Yes', '0' => 'No'), array('value' => 1));
|
|
|
+ $this->assertTags($result, $expected);
|
|
|
+
|
|
|
+ $result = $this->Form->radio('Model.field', array('1' => 'Yes', '0' => 'No'), array('value' => '1'));
|
|
|
+ $this->assertTags($result, $expected);
|
|
|
+
|
|
|
+ $result = $this->Form->radio('Model.field', array('1' => 'Yes', '0' => 'No'), array('value' => true));
|
|
|
+ $this->assertTags($result, $expected);
|
|
|
}
|
|
|
|
|
|
/**
|