Пример #1
0
 public function testGetValuesForChoices()
 {
     $item1 = new Item(1, 'Foo');
     $item2 = new Item(2, 'Bar');
     $choiceList = new ModelChoiceList(self::ITEM_CLASS, 'value', null, null, null, null);
     $this->assertEquals(array(1, 2), $choiceList->getValuesForChoices(array($item1, $item2)));
     $this->assertEquals(array(1, 2), $choiceList->getIndicesForChoices(array($item1, $item2)));
 }
 /**
  * {@inheritdoc}
  */
 public function getChoices()
 {
     $choices = parent::getChoices();
     $array = array();
     foreach ($choices as $value => $label) {
         $array[] = array('value' => $value, 'label' => $label);
     }
     return $array;
 }
Пример #3
0
 public function testGetIndicesForNullChoices()
 {
     $item = new Item(1, 'Foo');
     $choiceList = new ModelChoiceList(self::ITEM_CLASS, 'value', array($item));
     $this->assertEquals(array(), $choiceList->getIndicesForChoices(array(null)));
 }
Пример #4
0
 public function testCustomIdentifier()
 {
     $item1 = new Item(1, 'Foo', null, null, 'slug');
     $item2 = new Item(2, 'Bar', null, null, 'slug2');
     $choiceList = new ModelChoiceList(self::ITEM_CLASS, 'value', array($item1, $item2), null, null, array(), null, 'slug');
     $this->assertSame(array('slug' => $item1, 'slug2' => $item2), $choiceList->getChoices());
 }
Пример #5
0
 public function testDontAllowInvalidChoiceValues()
 {
     $item = new Item(1, 'Foo');
     $choiceList = new ModelChoiceList(self::ITEM_CLASS, 'value', array($item));
     $this->assertEquals(array(), $choiceList->getValuesForChoices(array(new Item(2, 'Bar'))));
     $this->assertEquals(array(), $choiceList->getChoicesForValues(array(2)));
 }
 public function testDifferentEqualObjectsAreChoosen()
 {
     $item = new Item(1, 'Foo');
     $choiceList = new ModelChoiceList(self::ITEM_CLASS, 'value', array($item));
     $choosenItem = new Item(1, 'Foo');
     $this->assertEquals(array(1), $choiceList->getIndicesForChoices(array($choosenItem)));
 }