/**
  * @param AbstractTypedAddress $object
  * @param mixed $format
  * @param array $context
  * @return array
  */
 public function normalize($object, $format = null, array $context = array())
 {
     $result = $this->addressNormalizer->normalize($object, $format, $context);
     $types = $object->getTypes();
     if (!$types->isEmpty()) {
         $result['types'] = $this->serializer->normalize($object->getTypes(), $format, $context);
     } else {
         $result['types'] = array();
     }
     return $result;
 }
 /**
  * @dataProvider normalizeDataProvider
  *
  * @param AbstractAddress $object
  * @param array $expectedData
  */
 public function testNormalize(AbstractAddress $object, array $expectedData)
 {
     $this->assertEquals($expectedData, $this->normalizer->normalize($object));
 }