public function testFieldSetBasics() { $f = new Form\FieldSet(); $f2 = new Form\FieldSet('group'); $f3 = new Form\FieldSet(); $t = new Form\Element\Text('one'); $t->setRequired(true); $f2->addField($t); $t = new Form\Element\Text('two'); $f2->addField($t); $t = new Form\Element\Text('three'); $f3->addField($t); $f->addField($f2); $f->addField($f3); $this->assertFalse($f->validate()); $f->setValues(array('group' => array('one' => 'ONE', 'two' => 'TWO'), 'three' => 'THREE')); $values = $f->getValues(); $this->assertTrue(is_array($values)); $this->assertTrue(array_key_exists('group', $values)); $this->assertTrue(array_key_exists('one', $values['group'])); $this->assertTrue(array_key_exists('three', $values)); $this->assertTrue($values['group']['one'] == 'ONE'); $this->assertTrue($values['group']['two'] == 'TWO'); $this->assertTrue($values['three'] == 'THREE'); $this->assertTrue($f->validate()); $html = $f->render(); $this->assertTrue(strpos($html, 'one') !== false); $this->assertTrue(strpos($html, 'two') !== false); }