![]() 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/vendor/magento/module-checkout/Test/Fixture/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ declare(strict_types=1); namespace Magento\Checkout\Test\Fixture; use Magento\Framework\DataObject; use Magento\Quote\Api\Data\AddressInterface; use Magento\Quote\Model\ShippingAddressManagementInterface; use Magento\TestFramework\Fixture\Api\ServiceFactory; use Magento\TestFramework\Fixture\DataFixtureInterface; class SetShippingAddress implements DataFixtureInterface { private const DEFAULT_DATA = [ AddressInterface::KEY_TELEPHONE => 3340000000, AddressInterface::KEY_POSTCODE => 36104, AddressInterface::KEY_COUNTRY_ID => 'US', AddressInterface::KEY_CITY => 'Montgomery', AddressInterface::KEY_COMPANY => 'Magento', AddressInterface::KEY_STREET => ['Green str, 67'], AddressInterface::KEY_LASTNAME => 'Doe', AddressInterface::KEY_FIRSTNAME => 'John', AddressInterface::KEY_REGION_ID => 1, ]; /** * @var ServiceFactory */ private $serviceFactory; public function __construct( ServiceFactory $serviceFactory ) { $this->serviceFactory = $serviceFactory; } /** * {@inheritdoc} * @param array $data Parameters * <pre> * $data = [ * 'cart_id' => (int) Cart ID. Required. * 'address' => (array) Address Data. Optional. Default: SetShippingAddress::DEFAULT_DATA * ] * </pre> */ public function apply(array $data = []): ?DataObject { $service = $this->serviceFactory->create(ShippingAddressManagementInterface::class, 'assign'); $service->execute( [ 'cartId' => $data['cart_id'], 'address' => array_merge(self::DEFAULT_DATA, $data['address'] ?? []) ] ); return null; } }