From b6ffe7b9390f02b344ab92dd4ab272fcc1ea7640 Mon Sep 17 00:00:00 2001 From: Ingo Schommer Date: Thu, 9 Oct 2008 14:32:47 +0000 Subject: [PATCH] ENHANCEMENT Added unit test CheckboxSetFieldTest?->testLoadDataFromObject() git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@63996 467b73ca-7a2a-4603-9d3b-597d59a354a9 --- tests/forms/CheckboxSetFieldTest.php | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/tests/forms/CheckboxSetFieldTest.php b/tests/forms/CheckboxSetFieldTest.php index c8d487c96..1a95642f1 100644 --- a/tests/forms/CheckboxSetFieldTest.php +++ b/tests/forms/CheckboxSetFieldTest.php @@ -59,8 +59,28 @@ class CheckboxSetFieldTest extends SapphireTest { ); } - function testLoadDataFrom() { - + function testLoadDataFromObject() { + $article = $this->fixture->objFromFixture('CheckboxSetFieldTest_Article', 'articlewithouttags'); + $articleWithTags = $this->fixture->objFromFixture('CheckboxSetFieldTest_Article', 'articlewithtags'); + $tag1 = $this->fixture->objFromFixture('CheckboxSetFieldTest_Tag', 'tag1'); + $tag2 = $this->fixture->objFromFixture('CheckboxSetFieldTest_Tag', 'tag2'); + + $field = new CheckboxSetField("Tags", "Test field", DataObject::get("CheckboxSetFieldTest_Tag")->map()); + $form = new Form( + new Controller(), + 'Form', + new FieldSet($field), + new FieldSet() + ); + $form->loadDataFrom($articleWithTags); + $this->assertEquals( + array( + $tag1->ID => $tag1->ID, + $tag2->ID => $tag2->ID + ), + $field->Value(), + 'CheckboxSetField properly loads data from a manymany relationship in an object through Form->loadDataFrom()' + ); } }