/** * Import customer address to quote address */ public function testImportCustomerAddressDataWithCustomer() { $customerIdFromFixture = 1; $customerEmailFromFixture = '*****@*****.**'; $city = 'TestCity'; $street = 'Street1'; /** @var \Magento\Customer\Api\Data\AddressInterfaceFactory $addressFactory */ $addressFactory = Bootstrap::getObjectManager()->create('Magento\\Customer\\Api\\Data\\AddressInterfaceFactory'); /** @var \Magento\Customer\Api\AddressRepositoryInterface $addressRepository */ $addressRepository = Bootstrap::getObjectManager()->create('Magento\\Customer\\Api\\AddressRepositoryInterface'); $addressData = $addressFactory->create()->setCustomerId($customerIdFromFixture)->setFirstname('John')->setLastname('Doe')->setTelephone('123456')->setPostcode('12345')->setCountryId(1)->setCity($city)->setStreet([$street]); $addressData = $addressRepository->save($addressData); $this->_address->setQuote($this->_quote); $this->_address->importCustomerAddressData($addressData); $this->assertEquals($customerEmailFromFixture, $this->_address->getEmail(), 'Email was imported incorrectly.'); $this->assertEquals($city, $this->_address->getCity(), 'City was imported incorrectly.'); $this->assertEquals($street, $this->_address->getStreetFull(), 'Imported street is invalid.'); }
/** * Map quote address to customer address * * @param QuoteAddress $address * @return CustomerAddress */ public function mapAddress(QuoteAddress $address) { $customerAddress = $this->customerAddressFactory->create(); $customerAddress->setCountryId($address->getCountryId()); $customerAddress->setRegion($this->customerAddressRegionFactory->create()->setRegionId($address->getRegionId())); $customerAddress->setPostcode($address->getPostcode()); $customerAddress->setCity($address->getCity()); $customerAddress->setStreet($address->getStreet()); return $customerAddress; }
/** * @param \Magento\Quote\Model\Quote\Address $source * @param string $type * * @return \WirecardCEE_Stdlib_ConsumerData_Address */ protected function _getAddress($source, $type = 'billing') { switch ($type) { case 'shipping': $address = new \WirecardCEE_Stdlib_ConsumerData_Address(\WirecardCEE_Stdlib_ConsumerData_Address::TYPE_SHIPPING); break; default: $address = new \WirecardCEE_Stdlib_ConsumerData_Address(\WirecardCEE_Stdlib_ConsumerData_Address::TYPE_BILLING); break; } $address->setFirstname($source->getFirstname()); $address->setLastname($source->getLastname()); $address->setAddress1($source->getStreetLine(1)); $address->setAddress2($source->getStreetLine(2)); $address->setZipCode($source->getPostcode()); $address->setCity($source->getCity()); $address->setCountry($source->getCountry()); $address->setState($source->getRegionCode()); $address->setPhone($source->getTelephone()); $address->setFax($source->getFax()); return $address; }