![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/dev/tests/integration/testsuite/Magento/Wishlist/Controller/Index/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ declare(strict_types=1); namespace Magento\Wishlist\Controller\Index; use Magento\Checkout\Model\CartFactory; use Magento\Checkout\Model\Cart as CartModel; use Magento\Customer\Model\Session; use Magento\Framework\App\Request\Http as HttpRequest; use Magento\Framework\Escaper; use Magento\Framework\Message\MessageInterface; use Magento\TestFramework\TestCase\AbstractController; use Magento\TestFramework\Wishlist\Model\GetWishlistByCustomerId; /** * Test for add all products to cart from wish list. * * @magentoDbIsolation disabled * @magentoAppArea frontend */ class AllcartTest extends AbstractController { /** @var Session */ private $customerSession; /** @var CartModel */ private $cart; /** @var Escaper */ private $escaper; /** @var GetWishlistByCustomerId */ private $getWishlistByCustomerId; /** * @inheritdoc */ protected function setUp(): void { parent::setUp(); $this->customerSession = $this->_objectManager->get(Session::class); $this->cart = $this->_objectManager->get(CartFactory::class)->create(); $this->escaper = $this->_objectManager->get(Escaper::class); $this->getWishlistByCustomerId = $this->_objectManager->get(GetWishlistByCustomerId::class); } /** * @inheritdoc */ protected function tearDown(): void { $this->customerSession->setCustomerId(null); parent::tearDown(); } /** * @magentoDataFixture Magento/Wishlist/_files/wishlist_with_product_qty_increments.php * * @return void */ public function testAddProductQtyIncrementToCartFromWishList(): void { $this->customerSession->setCustomerId(1); $this->performAddAllToCartRequest(); $wishlistCollection = $this->getWishlistByCustomerId->execute(1)->getItemCollection(); $this->assertCount(1, $wishlistCollection); $this->assertCount(0, $this->cart->getQuote()->getItemsCollection()); $item = $this->getWishlistByCustomerId->getItemBySku(1, 'simple'); $this->assertNotNull($item); $expectedMessage = $this->escaper->escapeHtml( sprintf('You can buy this product only in quantities of 5 at a time for "%s".', $item->getName()) ); $this->assertSessionMessages($this->equalTo([(string)__($expectedMessage)]), MessageInterface::TYPE_ERROR); } /** * @magentoDataFixture Magento/Wishlist/_files/wishlist_with_simple_product.php * * @return void */ public function testAddAllProductToCartFromWishList(): void { $this->customerSession->setCustomerId(1); $this->performAddAllToCartRequest(); $quoteCollection = $this->cart->getQuote()->getItemsCollection(); $this->assertCount(1, $quoteCollection); $item = $quoteCollection->getFirstItem(); $expectedMessage = $this->escaper->escapeHtml( sprintf('1 product(s) have been added to shopping cart: "%s".', $item->getName()) ); $this->assertSessionMessages($this->equalTo([(string)__($expectedMessage)]), MessageInterface::TYPE_SUCCESS); } /** * Perform add all products to cart from wish list request. * * @return void */ private function performAddAllToCartRequest(): void { $this->getRequest()->setMethod(HttpRequest::METHOD_POST); $this->dispatch('wishlist/index/allcart'); } }