本文整理汇总了PHP中Magento\Checkout\Model\Session::setCheckoutState方法的典型用法代码示例。如果您正苦于以下问题:PHP Session::setCheckoutState方法的具体用法?PHP Session::setCheckoutState怎么用?PHP Session::setCheckoutState使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Magento\Checkout\Model\Session
的用法示例。
在下文中一共展示了Session::setCheckoutState方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testOverviewAction
/**
* Covers \Magento\Multishipping\Block\Checkout\Payment\Info and \Magento\Multishipping\Block\Checkout\Overview
*
* @magentoConfigFixture current_store multishipping/options/checkout_multiple 1
*/
public function testOverviewAction()
{
/** @var \Magento\Framework\Data\Form\FormKey $formKey */
$formKey = $this->_objectManager->get('Magento\\Framework\\Data\\Form\\FormKey');
$logger = $this->getMock('Psr\\Log\\LoggerInterface', [], [], '', false);
/** @var \Magento\Customer\Api\AccountManagementInterface $service */
$service = $this->_objectManager->create('Magento\\Customer\\Api\\AccountManagementInterface');
$customer = $service->authenticate('customer@example.com', 'password');
/** @var \Magento\Customer\Model\Session $customerSession */
$customerSession = $this->_objectManager->create('Magento\\Customer\\Model\\Session', [$logger]);
$customerSession->setCustomerDataAsLoggedIn($customer);
$this->checkoutSession->setCheckoutState(State::STEP_BILLING);
$this->getRequest()->setPostValue('payment', ['method' => 'checkmo']);
$this->dispatch('multishipping/checkout/overview');
$html = $this->getResponse()->getBody();
$this->assertContains('<div class="box box-billing-method">', $html);
$this->assertContains('<div class="box box-shipping-method">', $html);
$this->assertContains('<dt class="title">' . $this->quote->getPayment()->getMethodInstance()->getTitle() . '</dt>', $html);
$this->assertContains('<span class="price">$10.00</span>', $html);
$this->assertContains('<input name="form_key" type="hidden" value="' . $formKey->getFormKey(), $html);
}
示例2: beforeSave
/**
* Map STEP_SELECT_ADDRESSES to Cart::CHECKOUT_STATE_BEGIN
* @param \Magento\Checkout\Model\Cart $subject
* @return void
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
*/
public function beforeSave(\Magento\Checkout\Model\Cart $subject)
{
if ($this->checkoutSession->getCheckoutState() === State::STEP_SELECT_ADDRESSES) {
$this->checkoutSession->setCheckoutState(\Magento\Checkout\Model\Session::CHECKOUT_STATE_BEGIN);
}
}