mirror of
https://github.com/silverstripe/silverstripe-framework
synced 2024-10-22 14:05:37 +02:00
Merge branch 'pull/6905'
This commit is contained in:
commit
e741af9127
@ -333,7 +333,22 @@ class FormField extends RequestHandler
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($content || $tag != 'input') {
|
if ($content || !in_array($tag, [
|
||||||
|
'area',
|
||||||
|
'base',
|
||||||
|
'br',
|
||||||
|
'col',
|
||||||
|
'embed',
|
||||||
|
'hr',
|
||||||
|
'img',
|
||||||
|
'input',
|
||||||
|
'link',
|
||||||
|
'meta',
|
||||||
|
'param',
|
||||||
|
'source',
|
||||||
|
'track',
|
||||||
|
'wbr',
|
||||||
|
])) {
|
||||||
return sprintf(
|
return sprintf(
|
||||||
'<%s%s>%s</%s>',
|
'<%s%s>%s</%s>',
|
||||||
$tag,
|
$tag,
|
||||||
|
@ -13,15 +13,16 @@ use SilverStripe\Forms\RequiredFields;
|
|||||||
use SilverStripe\Forms\FieldList;
|
use SilverStripe\Forms\FieldList;
|
||||||
use SilverStripe\Forms\Form;
|
use SilverStripe\Forms\Form;
|
||||||
use ReflectionClass;
|
use ReflectionClass;
|
||||||
|
use SilverStripe\ORM\FieldType\DBField;
|
||||||
|
|
||||||
class FormFieldTest extends SapphireTest
|
class FormFieldTest extends SapphireTest
|
||||||
{
|
{
|
||||||
|
|
||||||
protected static $required_extensions = array(
|
protected static $required_extensions = [
|
||||||
FormField::class => array(
|
FormField::class => [
|
||||||
TestExtension::class
|
TestExtension::class,
|
||||||
)
|
],
|
||||||
);
|
];
|
||||||
|
|
||||||
public function testDefaultClasses()
|
public function testDefaultClasses()
|
||||||
{
|
{
|
||||||
@ -29,9 +30,9 @@ class FormFieldTest extends SapphireTest
|
|||||||
|
|
||||||
FormField::config()->update(
|
FormField::config()->update(
|
||||||
'default_classes',
|
'default_classes',
|
||||||
array(
|
[
|
||||||
'class1',
|
'class1',
|
||||||
)
|
]
|
||||||
);
|
);
|
||||||
|
|
||||||
$field = new FormField('MyField');
|
$field = new FormField('MyField');
|
||||||
@ -40,10 +41,10 @@ class FormFieldTest extends SapphireTest
|
|||||||
|
|
||||||
FormField::config()->update(
|
FormField::config()->update(
|
||||||
'default_classes',
|
'default_classes',
|
||||||
array(
|
[
|
||||||
'class1',
|
'class1',
|
||||||
'class2',
|
'class2',
|
||||||
)
|
]
|
||||||
);
|
);
|
||||||
|
|
||||||
$field = new FormField('MyField');
|
$field = new FormField('MyField');
|
||||||
@ -52,9 +53,9 @@ class FormFieldTest extends SapphireTest
|
|||||||
|
|
||||||
FormField::config()->update(
|
FormField::config()->update(
|
||||||
'default_classes',
|
'default_classes',
|
||||||
array(
|
[
|
||||||
'class3',
|
'class3',
|
||||||
)
|
]
|
||||||
);
|
);
|
||||||
|
|
||||||
$field = new FormField('MyField');
|
$field = new FormField('MyField');
|
||||||
@ -67,9 +68,9 @@ class FormFieldTest extends SapphireTest
|
|||||||
|
|
||||||
TextField::config()->update(
|
TextField::config()->update(
|
||||||
'default_classes',
|
'default_classes',
|
||||||
array(
|
[
|
||||||
'textfield-class',
|
'textfield-class',
|
||||||
)
|
]
|
||||||
);
|
);
|
||||||
|
|
||||||
$field = new TextField('MyField');
|
$field = new TextField('MyField');
|
||||||
@ -370,4 +371,14 @@ class FormFieldTest extends SapphireTest
|
|||||||
$schema['message']['value']
|
$schema['message']['value']
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function testCreateVoidTag()
|
||||||
|
{
|
||||||
|
$tag = FormField::create_tag('meta', [
|
||||||
|
'name' => 'description',
|
||||||
|
'content' => 'test tag',
|
||||||
|
]);
|
||||||
|
$this->assertNotContains('</meta>', $tag);
|
||||||
|
$this->assertRegexp('#/>$#', $tag);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user