public function testToArray() { $object = $this->getMockForAbstractClass('\\Foundation\\Form\\Element\\ListElement', array($this->field)); for ($i = 0; $i < 3; $i++) { $item = new \Foundation\Form\Element\ListItem(); $item->setValue($i . 'value'); $item->setLabel($i . 'label'); $object->addItem($item); } $values = array('name' => 'test' . uniqid(), 'class' => 'test' . uniqid(), 'value' => 'test' . uniqid(), 'instructions' => 'test' . uniqid(), 'format' => 'test' . uniqid(), 'label' => 'test' . uniqid()); $object->setName($values['name']); $object->setValue($values['value']); $object->setClass($values['class']); $object->setInstructions($values['instructions']); $object->setFormat($values['format']); $object->setLabel($values['label']); $arr = $object->toArray(); $this->assertArrayHasKey('items', $arr); for ($i = 0; $i < 3; $i++) { $this->assertArrayHasKey($i, $arr['items']); $this->assertSame($i . 'label', $arr['items'][$i]['label']); $this->assertSame($i . 'value', $arr['items'][$i]['value']); } unset($arr['items']); foreach ($arr as $key => $value) { $this->assertArrayHasKey($key, $values); $this->assertSame($values[$key], $value); } }
public function testSetProperties() { $object = new \Foundation\Form\Element\ListItem($this->field); $value = uniqid(); $attributes = array('class', 'dir', 'id', 'lang', 'style', 'title', 'xmlLang', 'disabled', 'value'); foreach ($attributes as $memberName) { $set = 'set' . ucfirst($memberName); $object->{$set}($value); } foreach ($attributes as $memberName) { $get = 'get' . ucfirst($memberName); $this->assertEquals($value, $object->{$get}(), "Wrong value for {$memberName}"); } $object->setLabel($value); $this->assertEquals($value, $object->getLabel()); $this->assertEmpty($object->getMetadataString()); $object->addMetadata($value); $this->assertContains($value, $object->getMetadataString()); }