本文整理匯總了PHP中Mtf\Fixture\FixtureInterface::getBundleOptions方法的典型用法代碼示例。如果您正苦於以下問題:PHP FixtureInterface::getBundleOptions方法的具體用法?PHP FixtureInterface::getBundleOptions怎麽用?PHP FixtureInterface::getBundleOptions使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Mtf\Fixture\FixtureInterface
的用法示例。
在下文中一共展示了FixtureInterface::getBundleOptions方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: getOptions
/**
* Get product options
*
* @param FixtureInterface $product
* @return array
* @throws \Exception
*/
public function getOptions(FixtureInterface $product)
{
if ($product instanceof InjectableFixture) {
/** @var CatalogProductBundle $product */
$bundleSelections = $product->getBundleSelections();
$bundleOptions = isset($bundleSelections['bundle_options']) ? $bundleSelections['bundle_options'] : [];
} else {
// TODO: Removed after refactoring(removed) old product fixture.
/** @var BundleDataFixture $product */
$bundleOptions = $product->getBundleOptions();
}
$listFormOptions = $this->getListOptions();
$formOptions = [];
foreach ($bundleOptions as $option) {
$title = $option['title'];
if (!isset($listFormOptions[$title])) {
throw new \Exception("Can't find option: \"{$title}\"");
}
/** @var Element $optionElement */
$optionElement = $listFormOptions[$title];
$getTypeData = 'get' . $this->optionNameConvert($option['type']) . 'Data';
$optionData = $this->{$getTypeData}($optionElement);
$optionData['title'] = $title;
$optionData['type'] = $option['type'];
$optionData['is_require'] = $optionElement->find($this->required, Locator::SELECTOR_XPATH)->isVisible() ? 'Yes' : 'No';
$formOptions[] = $optionData;
}
return $formOptions;
}