mirror of
https://github.com/silverstripe/silverstripe-framework
synced 2024-10-22 14:05:37 +02:00
54 lines
964 B
PHP
54 lines
964 B
PHP
<?php
|
|
|
|
|
|
use SilverStripe\ORM\ArrayLib;
|
|
use SilverStripe\ORM\FieldType\DBEnum;
|
|
use SilverStripe\Dev\SapphireTest;
|
|
|
|
|
|
|
|
/**
|
|
* @package framework
|
|
* @subpackage tests
|
|
*/
|
|
class EnumFieldTest extends SapphireTest {
|
|
public function testAnyFieldIsPresentInSearchField() {
|
|
$values = array (
|
|
'Key' => 'Value'
|
|
);
|
|
$enumField = new DBEnum('testField', $values);
|
|
|
|
$searchField = $enumField->scaffoldSearchField();
|
|
|
|
$anyText = "(" . _t('Enum.ANY', 'Any') . ")";
|
|
$this->assertEquals(true, $searchField->getHasEmptyDefault());
|
|
$this->assertEquals($anyText, $searchField->getEmptyString());
|
|
}
|
|
|
|
public function testEnumParsing() {
|
|
$enum = new DBEnum('testField', "
|
|
,
|
|
0,
|
|
Item1,
|
|
Item2,
|
|
Item 3,
|
|
Item-4,
|
|
item 5
|
|
still 5,
|
|
trailing comma,
|
|
");
|
|
|
|
$this->assertEquals(ArrayLib::valuekey(array(
|
|
'',
|
|
'0',
|
|
'Item1',
|
|
'Item2',
|
|
'Item 3',
|
|
'Item-4',
|
|
'item 5
|
|
still 5',
|
|
'trailing comma'
|
|
)), $enum->enumValues());
|
|
}
|
|
}
|