public function testMergeDataObjectsWitArray() { $firstname1 = 'Firstname1'; $lastnam1 = 'Lastname1'; $email1 = '*****@*****.**'; $firstDataObject = $this->_customerBuilder->setFirstname($firstname1)->setLastname($lastnam1)->setEmail($email1)->create(); $lastname2 = 'Lastname2'; $middlename2 = 'Middlename2'; $dataForMerge = array('lastname' => $lastname2, 'middlename' => $middlename2); $mergedDataObject = $this->_customerBuilder->mergeDataObjectWithArray($firstDataObject, $dataForMerge); $this->assertNotSame($firstDataObject, $mergedDataObject, 'A new object must be created for merged Data Object.'); $expectedDataObject = array('firstname' => $firstname1, 'lastname' => $lastname2, 'middlename' => $middlename2, 'email' => $email1); $this->assertEquals($expectedDataObject, $mergedDataObject->__toArray(), 'Data Object with array were merged incorrectly.'); }
/** * @return Customer */ private function _createCustomer() { /** @var \Magento\Customer\Service\V1\Data\Customer $customer */ $customer = $this->_customerBuilder->setFirstname('firstname')->setLastname('lastname')->setEmail('*****@*****.**')->create(); $data = array('account' => $customer->__toArray()); $this->_context->getBackendSession()->setCustomerData($data); return $customer; }
/** * @magentoDbIsolation enabled */ public function testCreateCustomerNewThenUpdateFirstName() { $email = '*****@*****.**'; $storeId = 1; $firstname = 'Tester'; $lastname = 'McTest'; $groupId = 1; $this->_customerBuilder->setStoreId($storeId)->setEmail($email)->setFirstname($firstname)->setLastname($lastname)->setGroupId($groupId); $newCustomerEntity = $this->_customerBuilder->create(); $customerDetails = $this->_customerDetailsBuilder->setCustomer($newCustomerEntity)->create(); $customer = $this->_customerAccountService->createCustomer($customerDetails, 'aPassword'); $this->_customerBuilder->populate($customer); $this->_customerBuilder->setFirstname('Tested'); $customerDetails = $this->_customerDetailsBuilder->setCustomer($this->_customerBuilder->create())->create(); $this->_customerAccountService->updateCustomer($customerDetails); $customer = $this->_customerAccountService->getCustomer($customer->getId()); $this->assertEquals('Tested', $customer->getFirstname()); $this->assertEquals($lastname, $customer->getLastname()); }