/**
  * Runs Delete Customer Address test.
  *
  * @param Customer $customer
  * @return array
  */
 public function test(Customer $customer)
 {
     // Precondition:
     $customer->persist();
     $addressToDelete = $customer->getDataFieldConfig('address')['source']->getAddresses()[1];
     // Steps:
     $this->objectManager->create('Magento\\Customer\\Test\\TestStep\\LoginCustomerOnFrontendStep', ['customer' => $customer])->run();
     $this->customerAccountIndex->getAccountMenuBlock()->openMenuItem('Address Book');
     $this->customerAccountIndex->getAdditionalAddressBlock()->deleteAdditionalAddress($addressToDelete);
     return ['deletedAddress' => $addressToDelete];
 }
 /**
  * Asserts that deleted address is not present on Frontend.
  *
  * @param CustomerAccountIndex $customerAccountIndex
  * @param CustomerAddressEdit $customerAddressEdit
  * @param Customer $customer
  * @param Address $addressToDelete
  * @return void
  */
 public function processAssert(CustomerAccountIndex $customerAccountIndex, CustomerAddressEdit $customerAddressEdit, Customer $customer, Address $addressToDelete)
 {
     $this->objectManager->create(\Magento\Customer\Test\TestStep\LoginCustomerOnFrontendStep::class, ['customer' => $customer])->run();
     $customerAccountIndex->getAccountMenuBlock()->openMenuItem('Address Book');
     $addressRenderer = $this->objectManager->create(\Magento\Customer\Test\Block\Address\Renderer::class, ['address' => $addressToDelete, 'type' => 'html']);
     $deletedAddress = $addressRenderer->render();
     $isAddressDeleted = false;
     if ($customerAddressEdit->getEditForm()->isVisible() || $customerAccountIndex->getAdditionalAddressBlock()->getBlockText() !== null && $deletedAddress != $customerAccountIndex->getAdditionalAddressBlock()->getBlockText() || $customerAccountIndex->getDefaultAddressBlock()->getBlockText() !== null && $deletedAddress != $customerAccountIndex->getAdditionalAddressBlock()->getBlockText()) {
         $isAddressDeleted = true;
     }
     \PHPUnit_Framework_Assert::assertTrue($isAddressDeleted, 'Customer address was not deleted.');
 }
 /**
  * Runs Delete Customer Address test.
  *
  * @param Customer $customer
  * @return array
  */
 public function test(Customer $customer)
 {
     $this->markTestIncomplete('Bug: MAGETWO-34634');
     // Precondition:
     $customer->persist();
     $addressToDelete = $customer->getDataFieldConfig('address')['source']->getAddresses()[1];
     // Steps:
     $this->cmsIndex->open();
     $this->cmsIndex->getLinksBlock()->openLink("Log In");
     $this->customerAccountLogin->getLoginBlock()->login($customer);
     $this->customerAccountIndex->getAccountMenuBlock()->openMenuItem('Address Book');
     $this->customerAccountIndex->getAdditionalAddressBlock()->deleteAdditionalAddress($addressToDelete);
     return ['deletedAddress' => $addressToDelete];
 }
 /**
  * Asserts that Asserts that 'Additional Address Entries' contains expected message
  *
  * @param CustomerAccountIndex $customerAccountIndex
  * @return void
  */
 public function processAssert(CustomerAccountIndex $customerAccountIndex)
 {
     $customerAccountIndex->open();
     $customerAccountIndex->getAccountMenuBlock()->openMenuItem('Address Book');
     $actualText = $customerAccountIndex->getAdditionalAddressBlock()->getBlockText();
     \PHPUnit_Framework_Assert::assertTrue(self::EXPECTED_MESSAGE == $actualText, 'Expected text is absent in Additional Address block.');
 }