Permalink
Browse files

Added binary type to field type map, defaulting to file input field

Refs  #2071
  • Loading branch information...
1 parent 5a394c3 commit bf8a13a77c76f96f36686ba9d020f4ec291afa36 @ravage84 ravage84 committed Oct 15, 2013
Showing with 32 additions and 1 deletion.
  1. +30 −0 lib/Cake/Test/Case/View/Helper/FormHelperTest.php
  2. +2 −1 lib/Cake/View/Helper/FormHelper.php
View
30 lib/Cake/Test/Case/View/Helper/FormHelperTest.php
@@ -808,6 +808,36 @@ public function testTextFieldTypeNumberGenerationForIntegers() {
}
/**
+ * Tests correct generation of file upload fields for binary fields
+ *
+ * @return void
+ */
+ public function testFileUploadFieldTypeGenerationForBinaries() {
+ $model = ClassRegistry::getObject('Contact');
+ $model->setSchema(array('foo' => array(
+ 'type' => 'binary',
+ 'null' => false,
+ 'default' => null,
+ 'length' => 1024
+ )));
+
+ $this->Form->create('Contact');
+ $result = $this->Form->input('foo');
+ $expected = array(
+ 'div' => array('class' => 'input file'),
+ 'label' => array('for' => 'ContactFoo'),
+ 'Foo',
+ '/label',
+ array('input' => array(
+ 'type' => 'file', 'name' => 'data[Contact][foo]',
+ 'id' => 'ContactFoo'
+ )),
+ '/div'
+ );
+ $this->assertTags($result, $expected);
+ }
+
+/**
* testFormSecurityMultipleFields method
*
* Test secure() with multiple row form. Ensure hash is correct.
View
3 lib/Cake/View/Helper/FormHelper.php
@@ -1147,7 +1147,8 @@ protected function _magicOptions($options) {
'boolean' => 'checkbox', 'timestamp' => 'datetime',
'text' => 'textarea', 'time' => 'time',
'date' => 'date', 'float' => 'number',
- 'integer' => 'number', 'decimal' => 'number'
+ 'integer' => 'number', 'decimal' => 'number',
+ 'binary' => 'file'
);
if (isset($this->map[$type])) {

0 comments on commit bf8a13a

Please sign in to comment.