public function testGetMatch()
 {
     $condition = new PaletteConditionChain();
     $condition->setConjunction(PaletteConditionChain::AND_CONJUNCTION);
     $condition->addCondition(new PropertyValueCondition('prop1', '0'));
     $condition->addCondition(new PropertyValueCondition('prop2', '1'));
     $this->assertEquals(0, $condition->getMatchCount());
     $model = new DefaultModel();
     $model->setProperty('prop1', '0');
     $model->setProperty('prop2', '1');
     $this->assertEquals(2, $condition->getMatchCount($model));
     $model->setProperty('prop2', '0');
     $this->assertEquals(0, $condition->getMatchCount($model));
     $propertyValueBag = new PropertyValueBag();
     $propertyValueBag->setPropertyValue('prop1', '0');
     $propertyValueBag->setPropertyValue('prop2', '1');
     $this->assertEquals(2, $condition->getMatchCount(null, $propertyValueBag));
     $propertyValueBag->setPropertyValue('prop2', '3');
     $this->assertEquals(0, $condition->getMatchCount(null, $propertyValueBag));
 }
Exemplo n.º 2
0
 /**
  * Prepare the required collections from provided test data.
  *
  * @param array|ModelIdInterface[] $siblings          List of all models.
  * @param array                    $resortingIds      Resorting ids.
  * @param int|null                 $previousModelId   Previous model ids.
  * @param CollectionInterface      $siblingCollection The sibling collection.
  * @param CollectionInterface      $modelCollection   The model collection of models being moved.
  * @param ModelIdInterface|null    $previousModel     Optional previous model.
  *
  * @return void.
  */
 protected function prepareCollections(array &$siblings, array $resortingIds, $previousModelId, $siblingCollection, $modelCollection, &$previousModel)
 {
     foreach ($siblings as $id => $sorting) {
         $model = new DefaultModel();
         $model->setID($id);
         $model->setProperty('sorting', $sorting);
         $siblingCollection->push($model);
         $siblings[$id] = $model;
         if (in_array($id, $resortingIds)) {
             $modelCollection->push($model);
         }
         if ($id === $previousModelId) {
             $previousModel = $model;
         }
     }
 }