Ejemplo n.º 1
0
 public function testGetTypeNames()
 {
     $this->assertEquals(array(), $this->address->getTypeNames());
     $this->address->addType(new AddressType('billing'));
     $this->address->addType(new AddressType('shipping'));
     $this->assertEquals(array('billing', 'shipping'), $this->address->getTypeNames());
 }
Ejemplo n.º 2
0
 /**
  * @param AbstractTypedAddress $localAddress
  * @param AbstractTypedAddress $remoteAddress
  */
 public function mergeAddressTypes(AbstractTypedAddress $localAddress, AbstractTypedAddress $remoteAddress)
 {
     $newAddressTypes = array_diff($remoteAddress->getTypeNames(), $localAddress->getTypeNames());
     $deletedAddressTypes = array_diff($localAddress->getTypeNames(), $remoteAddress->getTypeNames());
     foreach ($deletedAddressTypes as $addressType) {
         $localAddress->removeType($localAddress->getTypeByName($addressType));
     }
     foreach ($newAddressTypes as $addressType) {
         $localAddress->addType($remoteAddress->getTypeByName($addressType));
     }
 }