mirror of
https://github.com/silverstripe/silverstripe-framework
synced 2024-10-22 12:05:37 +00:00
ENHANCEMENT Added renameField() to FieldSet
MINOR Added test for FieldSet->renameField() to test method behaviour git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/branches/2.3@69244 467b73ca-7a2a-4603-9d3b-597d59a354a9
This commit is contained in:
parent
e24c5801d3
commit
c5ab033cdd
@ -201,6 +201,22 @@ class FieldSet extends DataObjectSet {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Rename the title of a particular field name in this set.
|
||||||
|
*
|
||||||
|
* @param string $fieldName Name of field to rename title of
|
||||||
|
* @param string $newFieldTitle New title of field
|
||||||
|
* @return boolean
|
||||||
|
*/
|
||||||
|
function renameField($fieldName, $newFieldTitle) {
|
||||||
|
$field = $this->dataFieldByName($fieldName);
|
||||||
|
if(!$field) return false;
|
||||||
|
|
||||||
|
$field->setTitle($newFieldTitle);
|
||||||
|
|
||||||
|
return $field->Title() == $newFieldTitle;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return boolean
|
* @return boolean
|
||||||
*/
|
*/
|
||||||
|
@ -167,6 +167,24 @@ class FieldSetTest extends SapphireTest {
|
|||||||
$this->assertEquals(1, $tab->Fields()->Count());
|
$this->assertEquals(1, $tab->Fields()->Count());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function testRenameField() {
|
||||||
|
$fields = new FieldSet();
|
||||||
|
$nameField = new TextField('Name', 'Before title');
|
||||||
|
$fields->push($nameField);
|
||||||
|
|
||||||
|
/* The title of the field object is the same as what we put in */
|
||||||
|
$this->assertSame('Before title', $nameField->Title());
|
||||||
|
|
||||||
|
/* The field gets renamed to a different title */
|
||||||
|
$fields->renameField('Name', 'After title');
|
||||||
|
|
||||||
|
/* The title of the field object is the title we renamed to, this
|
||||||
|
includes the original object we created ($nameField), and getting
|
||||||
|
the field back out of the set */
|
||||||
|
$this->assertSame('After title', $nameField->Title());
|
||||||
|
$this->assertSame('After title', $fields->dataFieldByName('Name')->Title());
|
||||||
|
}
|
||||||
|
|
||||||
function testReplaceAFieldInADifferentTab() {
|
function testReplaceAFieldInADifferentTab() {
|
||||||
/* A FieldSet gets created with a TabSet and some field objects */
|
/* A FieldSet gets created with a TabSet and some field objects */
|
||||||
$fieldSet = new FieldSet(
|
$fieldSet = new FieldSet(
|
||||||
|
Loading…
x
Reference in New Issue
Block a user