/** * @dataProvider personsDataProvider * @test */ public function personsAndAccountPersistingAndRetrievingWorksCorrectly($firstName, $middleName, $lastName, $emailAddress) { $person = new Person(); $person->setName(new PersonName('', $firstName, $middleName, $lastName)); $electronicAddress = new ElectronicAddress(); $electronicAddress->setType(ElectronicAddress::TYPE_EMAIL); $electronicAddress->setIdentifier($emailAddress); $person->setPrimaryElectronicAddress($electronicAddress); $account = $this->accountFactory->createAccountWithPassword($emailAddress, $this->persistenceManager->getIdentifierByObject($person)); $this->accountRepository->add($account); $person->addAccount($account); $this->partyRepository->add($person); $this->persistenceManager->persistAll(); $this->assertEquals(1, $this->partyRepository->countAll()); $this->persistenceManager->clearState(); $foundPerson = $this->partyRepository->findByIdentifier($this->persistenceManager->getIdentifierByObject($person)); $this->assertEquals($foundPerson->getName()->getFullName(), $person->getName()->getFullName()); $this->assertEquals($foundPerson->getName()->getFullName(), $firstName . ' ' . $middleName . ' ' . $lastName); $this->assertEquals($foundPerson->getPrimaryElectronicAddress()->getIdentifier(), $emailAddress); }
/** * @return void */ protected function assignElectronicAddressOptions() { $electronicAddress = new ElectronicAddress(); $electronicAddressTypes = array(); foreach ($electronicAddress->getAvailableElectronicAddressTypes() as $type) { $electronicAddressTypes[$type] = $type; } $electronicAddressUsageTypes = array(); foreach ($electronicAddress->getAvailableUsageTypes() as $type) { $electronicAddressUsageTypes[$type] = $type; } array_unshift($electronicAddressUsageTypes, ''); $this->view->assignMultiple(array('electronicAddressTypes' => $electronicAddressTypes, 'electronicAddressUsageTypes' => $electronicAddressUsageTypes)); }
/** * @return void */ protected function assignElectronicAddressOptions() { $electronicAddress = new ElectronicAddress(); $electronicAddressTypes = array(); foreach ($electronicAddress->getAvailableElectronicAddressTypes() as $type) { $electronicAddressTypes[$type] = $type; } $electronicAddressUsageTypes = array(); $translationHelper = new TranslationHelper(); foreach ($electronicAddress->getAvailableUsageTypes() as $type) { $electronicAddressUsageTypes[$type] = $translationHelper->translate('users.electronicAddress.usage.type.' . $type, $type, [], 'Modules', 'Neos.Neos'); } array_unshift($electronicAddressUsageTypes, ''); $this->view->assignMultiple(array('electronicAddressTypes' => $electronicAddressTypes, 'electronicAddressUsageTypes' => $electronicAddressUsageTypes)); }