/** * @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()); }