/** * @param StoreFrontBundle\Struct\ListProduct $product * @param StoreFrontBundle\Struct\Configurator\Set $set * @return array */ public function convertConfiguratorStruct(StoreFrontBundle\Struct\ListProduct $product, StoreFrontBundle\Struct\Configurator\Set $set) { $groups = array(); foreach ($set->getGroups() as $group) { $groupData = $this->convertConfiguratorGroupStruct($group); $options = array(); foreach ($group->getOptions() as $option) { $optionData = $this->convertConfiguratorOptionStruct($group, $option); if ($option->isSelected()) { $groupData['selected_value'] = $option->getId(); } $options[$option->getId()] = $optionData; } $groupData['values'] = $options; $groups[] = $groupData; } $settings = $this->getConfiguratorSettings($set, $product); $data = array('sConfigurator' => $groups, 'sConfiguratorSettings' => $settings, 'isSelectionSpecified' => $set->isSelectionSpecified()); return $data; }
private function assertInactiveOptions(Set $configurator, $expectedOptions) { foreach ($configurator->getGroups() as $group) { foreach ($group->getOptions() as $option) { if (in_array($option->getName(), $expectedOptions)) { $this->assertFalse($option->getActive()); } else { $this->assertTrue($option->getActive()); } } } }