/**
  * @depends testDetailsActionForMarketing
  * @depends testDetailsActionForWorkflow
  */
 public function testDeleteAction()
 {
     $initialCount = EmailTemplate::getCount();
     $emailTemplateId = self::getModelIdByModelNameAndName('EmailTemplate', 'marketing 01');
     // Delete an emailTemplate.
     $this->setGetArray(array('id' => $emailTemplateId));
     $this->resetPostArray();
     $redirectUrl = $this->runControllerWithRedirectExceptionAndGetUrl('emailTemplates/default/delete');
     $compareRedirectUrl = Yii::app()->createUrl('emailTemplates/default/listForMarketing');
     $this->assertEquals($compareRedirectUrl, $redirectUrl);
     $this->assertEquals($initialCount - 1, EmailTemplate::getCount());
     $emailTemplateId = self::getModelIdByModelNameAndName('EmailTemplate', 'workflow 01');
     $this->setGetArray(array('id' => $emailTemplateId));
     $this->resetPostArray();
     $redirectUrl = $this->runControllerWithRedirectExceptionAndGetUrl('emailTemplates/default/delete');
     $compareRedirectUrl = Yii::app()->createUrl('emailTemplates/default/listForWorkflow');
     $this->assertEquals($compareRedirectUrl, $redirectUrl);
     $this->assertEquals($initialCount - 2, EmailTemplate::getCount());
 }
Exemplo n.º 2
0
 /**
  * @depends testCreateAndGetEmailTemplateById
  */
 public function testDummyHtmlContentThrowsValidationErrorWhenTextContentIsEmpty()
 {
     $emailTemplate = new EmailTemplate();
     $emailTemplate->type = EmailTemplate::TYPE_CONTACT;
     $emailTemplate->builtType = EmailTemplate::BUILT_TYPE_PASTED_HTML;
     $emailTemplate->subject = 'Another Test subject';
     $emailTemplate->name = 'Another Test Email Template';
     $emailTemplate->textContent = '';
     $emailTemplate->htmlContent = "<html>\n<head>\n</head>\n<body>\n</body>\n</html>";
     $emailTemplate->modelClassName = 'Contact';
     $validated = $emailTemplate->validate(null, false, true);
     $this->assertFalse($validated);
     $errorMessages = $emailTemplate->getErrors();
     $this->assertEquals(1, count($errorMessages));
     $this->assertTrue(array_key_exists('textContent', $errorMessages));
     $this->assertEquals(1, count($errorMessages['textContent']));
     $this->assertEquals('Please provide at least one of the contents field.', $errorMessages['textContent'][0]);
     $emailTemplate->textContent = 'Text Content';
     $validated = $emailTemplate->validate(null, false, true);
     $this->assertTrue($validated);
     $this->assertTrue($emailTemplate->save());
     $this->assertEquals(6, EmailTemplate::getCount());
     $id = $emailTemplate->id;
     unset($emailTemplate);
     $emailTemplate = EmailTemplate::getById($id);
     $this->assertEquals(EmailTemplate::TYPE_CONTACT, $emailTemplate->type);
     $this->assertEquals('Another Test subject', $emailTemplate->subject);
     $this->assertEquals('Another Test Email Template', $emailTemplate->name);
     $this->assertEquals(null, $emailTemplate->htmlContent);
     $this->assertEquals('Text Content', $emailTemplate->textContent);
 }