Magento Extensions Rating 2024
EXTENSIONS BY CATEGORY
B2B (Business-To-Business)
Blog
Customer
ERP (Enterprise Resource Planning)
Mega Menu
One Step Checkout
Order
POS (Point Of Sale)
Search
Shopping Cart
Sitemap
SEO
Social
Stock & Inventory Management
EXTENSIONS BY DEVELOPER
aheadWorks
Amasty
Boost My Shop
BSS Commerce
Magestore
MageWorx
Mirasvit
Templates Master
Wyomind
XTENTO
Magento 2 Documentation
Magento 2 Documentation
2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
vendor
magento
magento2-base
dev
tests
integration
testsuite
Magento
Checkout
_files
cart_with_simple_product_and_custom_options.php
Go to the documentation of this file.
1
<?php
6
declare(strict_types=1);
7
8
use
Magento\Catalog\Api\Data\ProductCustomOptionInterface
;
9
use
Magento\Catalog\Api\ProductRepositoryInterface
;
10
use
Magento\Catalog\Model\Product\Option
;
11
use
Magento\Checkout\Model\Session
;
12
use
Magento\Framework\DataObject
;
13
use
Magento\Quote\Model\Quote
;
14
use
Magento\TestFramework\Helper\Bootstrap
;
15
16
require
__DIR__
.
'/../../../Magento/Catalog/_files/product_simple_with_custom_options.php'
;
17
19
$productRepository
= Bootstrap::getObjectManager()
20
->create(ProductRepositoryInterface::class);
21
$product
=
$productRepository
->get(
'simple_with_custom_options'
);
22
23
$options
= [];
25
foreach
(
$product
->getOptions() as
$option
) {
26
switch
(
$option
->getGroupByType()) {
27
case
ProductCustomOptionInterface::OPTION_GROUP_SELECT:
28
$value
= key(
$option
->getValues());
29
break
;
30
default
:
31
$value
=
'test'
;
32
break
;
33
}
34
$options
[
$option
->getId()] =
$value
;
35
}
36
37
$requestInfo
=
new
DataObject
([
'qty'
=> 1,
'options'
=>
$options
]);
38
40
$quote
= Bootstrap::getObjectManager()->create(Quote::class);
41
$quote
->setReservedOrderId(
'test_order_item_with_custom_options'
);
42
$quote
->addProduct(
$product
,
$requestInfo
);
43
$quote
->save();
44
46
$objectManager
= Bootstrap::getObjectManager();
47
$objectManager
->removeSharedInstance(Session::class);
$quote
$quote
Definition:
cart_with_simple_product_and_custom_options.php:40
$objectManager
$objectManager
Definition:
cart_with_simple_product_and_custom_options.php:46
Magento\TestFramework\Helper\Bootstrap
Definition:
Bootstrap.php:12
$options
$options
Definition:
cart_with_simple_product_and_custom_options.php:23
$product
$product
Definition:
cart_with_simple_product_and_custom_options.php:21
__DIR__
defined('TESTS_BP')||define('TESTS_BP' __DIR__
Definition:
_bootstrap.php:60
Magento\Catalog\Model\Product\Option
Magento\Checkout\Model\Session
Definition:
SuccessValidator.php:6
Magento\Framework\DataObject
Definition:
DataObject.php:15
Magento\Catalog\Api\ProductRepositoryInterface
Definition:
ProductRepositoryInterface.php:14
$productRepository
$productRepository
Definition:
cart_with_simple_product_and_custom_options.php:19
$value
$value
Definition:
gender.phtml:16
$requestInfo
foreach($product->getOptions() as $option) $requestInfo
Definition:
cart_with_simple_product_and_custom_options.php:37
Magento\Quote\Model\Quote
Definition:
AddressTest.php:6
$option
$option
Definition:
product_configurable_with_single_child.php:38
Magento\Catalog\Api\Data\ProductCustomOptionInterface
Definition:
ProductCustomOptionInterface.php:13
Magento\Framework\DataObject
Definition:
Cache.php:6