/** * Get product options. * * @param InjectableFixture $product * @return array * @throws \Exception */ public function getOptions(InjectableFixture $product) { /** @var BundleProduct $product */ $bundleSelections = $product->getBundleSelections(); $listFormOptions = $this->getListOptions(); $formOptions = []; foreach ($bundleSelections as $option) { $optionData = $this->prepareOption($listFormOptions, $option); $getTypeData = 'get' . $this->optionNameConvert($option['type']) . 'Data'; $formOptions[] = array_merge($optionData, $this->{$getTypeData}($listFormOptions[$option['title']])); } return $formOptions; }