ENHANCEMENT: allow adding a new a field to ArrayData

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/branches/2.4@107434 467b73ca-7a2a-4603-9d3b-597d59a354a9
This commit is contained in:
Saophalkun Ponlu 2010-07-02 04:13:25 +00:00 committed by Sam Minnee
parent e344eb0dcc
commit f9ea2613e6
2 changed files with 19 additions and 0 deletions

View File

@ -43,6 +43,16 @@ class ArrayData extends ViewableData {
}
}
/**
* Add or set a field on this object.
*
* @param string $field
* @param mixed $value
*/
public function setField($field, $value) {
$this->array[$field] = $value;
}
public function hasField($f) {
return isset($this->array[$f]);
}

View File

@ -75,6 +75,15 @@ class ArrayDataTest extends SapphireTest {
$this->assertEquals("Apple", $array['a']);
$this->assertEquals("Banana", $array['b']);
}
function testSetField() {
$arrayData = new ArrayData(array());
$arrayData->setField('d', 'Delta');
$this->assertTrue($arrayData->hasField('d'));
$this->assertEquals('Delta', $arrayData->getField('d'));
}
}