public function testDenormalizeRegionWithoutCountry()
 {
     $address = $this->normalizer->denormalize(array('region' => $this->createRegion('US.CA')->setCode('CA')), self::ADDRESS_TYPE);
     $this->assertInstanceOf(self::ADDRESS_TYPE, $address);
     $this->assertNull($address->getCountry());
     $this->assertNull($address->getRegion());
     $this->assertNull($address->getRegionText());
 }
 /**
  * @param mixed $data
  * @param string $class
  * @param mixed $format
  * @param array $context
  * @return AbstractTypedAddress
  */
 public function denormalize($data, $class, $format = null, array $context = array())
 {
     /** @var AbstractTypedAddress $result */
     $result = $this->addressNormalizer->denormalize($data, $class, $format, $context);
     if (!empty($data['types']) && is_array($data['types'])) {
         $types = $this->serializer->denormalize($data['types'], static::TYPES_TYPE, $format, $context);
         if ($types) {
             foreach ($types as $type) {
                 $result->addType($type);
             }
         }
     }
     return $result;
 }