本文整理汇总了PHP中Sylius\Behat\Service\SharedStorageInterface::has方法的典型用法代码示例。如果您正苦于以下问题:PHP SharedStorageInterface::has方法的具体用法?PHP SharedStorageInterface::has怎么用?PHP SharedStorageInterface::has使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Sylius\Behat\Service\SharedStorageInterface
的用法示例。
在下文中一共展示了SharedStorageInterface::has方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: createShippingMethod
/**
* @param string $name
* @param string|null $code
* @param int|null $position
* @param ZoneInterface|null $zone
* @param string $locale
* @param array $configuration
* @param string $calculator
* @param bool $enabled
* @param bool $addForCurrentChannel
*/
private function createShippingMethod($name, $code = null, $position = null, ZoneInterface $zone = null, $locale = 'en', $configuration = ['amount' => 0], $calculator = DefaultCalculators::FLAT_RATE, $enabled = true, $addForCurrentChannel = true)
{
if (null === $zone) {
$zone = $this->sharedStorage->get('zone');
}
if (null === $code) {
$code = $this->generateCodeFromNameAndZone($name, $zone->getCode());
}
/** @var ShippingMethodInterface $shippingMethod */
$shippingMethod = $this->shippingMethodFactory->createNew();
$shippingMethod->setCode($code);
$shippingMethod->setName($name);
$shippingMethod->setPosition($position);
$shippingMethod->setCurrentLocale($locale);
$shippingMethod->setConfiguration($configuration);
$shippingMethod->setCalculator($calculator);
$shippingMethod->setZone($zone);
$shippingMethod->setEnabled($enabled);
if ($addForCurrentChannel && $this->sharedStorage->has('channel')) {
$channel = $this->sharedStorage->get('channel');
$channel->addShippingMethod($shippingMethod);
}
$this->shippingMethodRepository->add($shippingMethod);
$this->sharedStorage->set('shipping_method', $shippingMethod);
}
示例2: assertValidationMessage
/**
* @param string $element
* @param string $message
*/
private function assertValidationMessage($element, $message)
{
$product = $this->sharedStorage->has('product') ? $this->sharedStorage->get('product') : null;
/** @var CreatePageInterface|UpdatePageInterface $currentPage */
$currentPage = $this->currentPageResolver->getCurrentPageWithForm([$this->createSimpleProductPage, $this->createConfigurableProductPage, $this->updateSimpleProductPage, $this->updateConfigurableProductPage], $product);
Assert::same($currentPage->getValidationMessage($element), $message);
}
示例3: storeHasAProductPricedAt
/**
* @Given the store has a product :productName
* @Given the store has a :productName product
* @Given /^the store(?:| also) has a product "([^"]+)" priced at ("[^"]+")$/
*/
public function storeHasAProductPricedAt($productName, $price = 0)
{
$product = $this->createProduct($productName, $price);
$product->setDescription('Awesome ' . $productName);
if ($this->sharedStorage->has('channel')) {
$channel = $this->sharedStorage->get('channel');
$product->addChannel($channel);
}
$this->saveProduct($product);
}
示例4: storeHasAConfigurableProduct
/**
* @Given the store has a :productName configurable product
*/
public function storeHasAConfigurableProduct($productName)
{
/** @var ProductInterface $product */
$product = $this->productFactory->createNew();
$product->setName($productName);
$product->setCode($this->convertToCode($productName));
$product->setDescription('Awesome ' . $productName);
if ($this->sharedStorage->has('channel')) {
$channel = $this->sharedStorage->get('channel');
$product->addChannel($channel);
}
$this->saveProduct($product);
}
示例5: storeHasAConfigurableProduct
/**
* @Given the store has a :productName configurable product
*/
public function storeHasAConfigurableProduct($productName)
{
/** @var ProductInterface $product */
$product = $this->productFactory->createNew();
$product->setName($productName);
$product->setCode(StringInflector::nameToUppercaseCode($productName));
$product->setSlug($this->slugGenerator->generate($productName));
$product->setDescription('Awesome ' . $productName);
if ($this->sharedStorage->has('channel')) {
$channel = $this->sharedStorage->get('channel');
$product->addChannel($channel);
}
$this->saveProduct($product);
}
示例6: createPaymentMethodFromNameAndCode
/**
* @param string $name
* @param string $code
* @param bool $addForCurrentChannel
* @param string $description
*/
private function createPaymentMethodFromNameAndCode($name, $code, $description = '', $addForCurrentChannel = true)
{
/** @var PaymentMethodInterface $paymentMethod */
$paymentMethod = $this->paymentMethodFactory->createNew();
$paymentMethod->setName(ucfirst($name));
$paymentMethod->setCode($code);
$paymentMethod->setGateway($this->paymentMethodNameToGatewayConverter->convert($name));
$paymentMethod->setDescription($description);
if ($addForCurrentChannel && $this->sharedStorage->has('channel')) {
$channel = $this->sharedStorage->get('channel');
$channel->addPaymentMethod($paymentMethod);
}
$this->sharedStorage->set('payment_method', $paymentMethod);
$this->paymentMethodRepository->add($paymentMethod);
}
示例7: createProduct
/**
* @param string $productName
* @param int $price
* @param string|null $date
* @param ChannelInterface|null $channel
*
* @return ProductInterface
*/
private function createProduct($productName, $price = 100, $date = null, ChannelInterface $channel = null)
{
/** @var ProductInterface $product */
$product = $this->productFactory->createWithVariant();
$product->setName($productName);
$product->setCode(StringInflector::nameToUppercaseCode($productName));
$product->setSlug($this->slugGenerator->generate($productName));
$product->setCreatedAt(new \DateTime($date));
/** @var ProductVariantInterface $productVariant */
$productVariant = $this->defaultVariantResolver->getVariant($product);
if (null === $channel && $this->sharedStorage->has('channel')) {
$channel = $this->sharedStorage->get('channel');
}
if (null !== $channel) {
$productVariant->addChannelPricing($this->createChannelPricingForChannel($price, $channel));
}
$productVariant->setCode($product->getCode());
return $product;
}