public function testBuild()
 {
     $data = [['label' => 'Test label', 'value' => 34, 'count' => 21235], ['label' => 'New label for test', 'value' => 2344, 'count' => 122]];
     foreach ($data as $item) {
         $this->dataBuilder->addItemData($item['label'], $item['value'], $item['count']);
     }
     $actualData = $this->dataBuilder->build();
     $this->assertEquals($data, $actualData);
 }
示例#2
0
 /**
  * @param int $range
  * @param int[] $dbRanges
  * @return array
  */
 public function renderRangeData($range, $dbRanges)
 {
     if (empty($dbRanges)) {
         return [];
     }
     $lastIndex = array_keys($dbRanges);
     $lastIndex = $lastIndex[count($lastIndex) - 1];
     foreach ($dbRanges as $index => $count) {
         $fromPrice = $index == 1 ? '' : ($index - 1) * $range;
         $toPrice = $index == $lastIndex ? '' : $index * $range;
         $this->itemDataBuilder->addItemData($this->renderRangeLabel($fromPrice, $toPrice), $fromPrice . '-' . $toPrice, $count);
     }
     return $this->itemDataBuilder->build();
 }
 /**
  * @param string $label
  * @param $value
  * @param int $count
  * @param null $selected
  * @param null $type
  */
 public function addItemData($label, $value, $count, $selected = null, $type = null)
 {
     if ($this->bxDataHelper->isFilterLayoutEnabled($this->_layer)) {
         $this->_itemsData[] = ['label' => $label, 'value' => $value, 'count' => $count, 'selected' => $selected, 'type' => $type];
     } else {
         parent::addItemData($label, $value, $count);
     }
 }