/**
  * @param DcmCreativeAsset $asset
  * @return ValidationResult
  */
 public function isValidUpdate(DcmCreativeAsset $asset)
 {
     $result = $this->validate($asset->toArray());
     $valid = $result->getResult();
     $messages = [];
     $message = $result->getMessage();
     if (!empty($message)) {
         $messages[] = $message;
     }
     $imageUrl = $asset->getImageUrl();
     $adTag = $asset->getAdTag();
     if (empty($imageUrl) && empty($adTag)) {
         $messages[] = "Ad Tag or Image Url must be provided";
         $valid = false;
     }
     return new ValidationResult($valid, implode(" ", $messages));
 }
 public function testIsValidUpdateValidAdSizeName()
 {
     $validAsset = new DcmCreativeAsset();
     $validAsset->setUuid('mock uuid');
     $validAsset->setImageUrl('mock image url');
     $validAsset->setAdTag('mock ad tag');
     $validAsset->setAdSizeName('asdf');
     $result = $this->sut->isValidUpdate($validAsset);
     $this->assertEquals('', $result->getMessage());
     $this->assertTrue($result->getResult());
 }