コード例 #1
0
 public static function setUpBeforeClass()
 {
     parent::setUpBeforeClass();
     SecurityTestHelper::createSuperAdmin();
     $super = User::getByUsername('super');
     Yii::app()->user->userModel = $super;
     // Setup test data owned by the super user.
     EmailTemplateTestHelper::createEmailTemplateByName(EmailTemplate::TYPE_WORKFLOW, 'Test Subject', 'Contact', 'Test Name', 'Test HtmlContent', 'Test TextContent');
     EmailTemplateTestHelper::createEmailTemplateByName(EmailTemplate::TYPE_CONTACT, 'Test Subject1', 'Contact', 'Test Name1', 'Test HtmlContent1', 'Test TextContent1');
     ReadPermissionsOptimizationUtil::rebuild();
 }
 public static function setUpBeforeClass()
 {
     parent::setUpBeforeClass();
     SecurityTestHelper::createSuperAdmin();
     $super = User::getByUsername('super');
     Yii::app()->user->userModel = $super;
     EmailTemplateTestHelper::create('EmailTemplate 01', 'Subject 01', 'Contact', 'html', 'text');
     EmailTemplateTestHelper::create('EmailTemplate 02', 'Subject 02', 'Contact', 'html', 'text');
     EmailTemplateTestHelper::create('EmailTemplate 03', 'Subject 03', 'Contact', 'html', 'text');
     MarketingListTestHelper::createMarketingListByName('MarketingListName', 'MarketingList Description', 'first', '*****@*****.**');
 }
 public static function setUpBeforeClass()
 {
     parent::setUpBeforeClass();
     SecurityTestHelper::createSuperAdmin();
     $super = User::getByUsername('super');
     Yii::app()->user->userModel = $super;
     EmailTemplateTestHelper::createEmailTemplateByName(EmailTemplate::TYPE_CONTACT, 'Subject 01', 'Contact', 'EmailTemplate 01', 'html', 'text');
     EmailTemplateTestHelper::createEmailTemplateByName(EmailTemplate::TYPE_CONTACT, 'Subject 02', 'Contact', 'EmailTemplate 02', 'html', 'text');
     EmailTemplateTestHelper::createEmailTemplateByName(EmailTemplate::TYPE_CONTACT, 'Subject 03', 'Contact', 'EmailTemplate 03', 'html', 'text');
     MarketingListTestHelper::createMarketingListByName('MarketingListName', 'MarketingList Description', 'first', '*****@*****.**');
     CampaignTestHelper::createCampaign('campaign01', 'campaign subject 01', 'text content for campaign 01', 'html content for campaign 01', 'fromCampaign', '*****@*****.**');
     CampaignTestHelper::createCampaign('campaign02', 'campaign subject 02', 'text content for campaign 02', 'html content for campaign 02', 'fromCampaign2', '*****@*****.**');
 }
 public static function setUpBeforeClass()
 {
     parent::setUpBeforeClass();
     SecurityTestHelper::createSuperAdmin();
     $super = User::getByUsername('super');
     Yii::app()->user->userModel = $super;
     EmailTemplateTestHelper::create('EmailTemplate 01', 'Subject 01', 'Contact', 'Html Content 01', 'Text Content 01');
     EmailTemplateTestHelper::create('EmailTemplate 02', 'Subject 02', 'Contact', 'Html Content 02', 'Text Content 02');
     EmailTemplateTestHelper::create('EmailTemplate 03', 'Subject 03', 'Contact', 'Html Content 03', 'Text Content 03');
     EmailTemplateTestHelper::create('EmailTemplate 04', 'Subject 04', 'Contact', 'Html Content 04', 'Text Content 04');
     EmailTemplateTestHelper::create('EmailTemplate 05', 'Subject 05', 'Contact', 'Html Content 05', 'Text Content 05');
     $marketingList = MarketingListTestHelper::createMarketingListByName('MarketingListName', 'MarketingList Description');
     static::$marketingListId = $marketingList->id;
     AutoresponderTestHelper::createAutoresponder('Subject 01', 'This is text Content 01', 'This is html Content 01', 10, Autoresponder::OPERATION_SUBSCRIBE, true, $marketingList);
     AutoresponderTestHelper::createAutoresponder('Subject 02', 'This is text Content 02', 'This is html Content 02', 5, Autoresponder::OPERATION_UNSUBSCRIBE, false, $marketingList);
     AllPermissionsOptimizationUtil::rebuild();
 }
コード例 #5
0
 public function testSuperUserAllDefaultControllerActions()
 {
     // Test all default controller actions that do not require any POST/GET variables to be passed.
     // This does not include portlet controller actions.
     $this->runControllerWithNoExceptionsAndGetContent('emailTemplates/default');
     $this->runControllerWithNoExceptionsAndGetContent('emailTemplates/default/index');
     $this->runControllerWithNoExceptionsAndGetContent('emailTemplates/default/listForWorkflow');
     $this->runControllerWithNoExceptionsAndGetContent('emailTemplates/default/listForMarketing');
     // Setup test data owned by the super user.
     EmailTemplateTestHelper::createEmailTemplateByName(EmailTemplate::TYPE_WORKFLOW, 'Test Subject', 'Contact', 'Test Name', 'Test HtmlContent', 'Test TextContent');
     EmailTemplateTestHelper::createEmailTemplateByName(EmailTemplate::TYPE_CONTACT, 'Test Subject1', 'Contact', 'Test Name1', 'Test HtmlContent1', 'Test TextContent1');
     $this->runControllerWithNoExceptionsAndGetContent('emailTemplates/default');
     $this->runControllerWithNoExceptionsAndGetContent('emailTemplates/default/index');
     $this->runControllerWithNoExceptionsAndGetContent('emailTemplates/default/listForWorkflow');
     $this->runControllerWithNoExceptionsAndGetContent('emailTemplates/default/listForMarketing');
     $this->setGetArray(array('type' => EmailTemplate::TYPE_CONTACT));
     $this->runControllerWithNoExceptionsAndGetContent('emailTemplates/default/create');
 }
コード例 #6
0
 public function testRegularUserAllDefaultControllerActions()
 {
     $emailTemplate = EmailTemplateTestHelper::createEmailTemplateByName(EmailTemplate::TYPE_CONTACT, 'Test Subject Regular 01', 'Contact', 'Test Name Regular 01', 'Test HtmlContent Regular 01', 'Test TextContent Regular 01');
     $this->runControllerShouldResultInAccessFailureAndGetContent('emailTemplates/default');
     $this->runControllerShouldResultInAccessFailureAndGetContent('emailTemplates/default/index');
     $this->runControllerShouldResultInAccessFailureAndGetContent('emailTemplates/default/listForMarketing');
     $this->runControllerShouldResultInAccessFailureAndGetContent('emailTemplates/default/listForWorkflow');
     $this->setGetArray(array('type' => EmailTemplate::TYPE_CONTACT));
     $this->runControllerShouldResultInAccessFailureAndGetContent('emailTemplates/default/create');
     $this->setGetArray(array('id' => $emailTemplate->id));
     $this->runControllerShouldResultInAccessFailureAndGetContent('emailTemplates/default/edit');
     $this->runControllerShouldResultInAccessFailureAndGetContent('emailTemplates/default/details');
     $this->runControllerShouldResultInAccessFailureAndGetContent('emailTemplates/default/delete');
     $this->resetGetArray();
     $this->user->setRight('EmailTemplatesModule', EmailTemplatesModule::getAccessRight());
     $this->assertTrue($this->user->save());
     $this->runControllerWithNoExceptionsAndGetContent('emailTemplates/default');
     $this->runControllerWithNoExceptionsAndGetContent('emailTemplates/default/index');
     $this->runControllerWithNoExceptionsAndGetContent('emailTemplates/default/listForMarketing');
     $this->runControllerWithNoExceptionsAndGetContent('emailTemplates/default/listForWorkflow');
     $this->setGetArray(array('id' => $emailTemplate->id));
     $this->runControllerWithNoExceptionsAndGetContent('emailTemplates/default/details');
     $this->resetGetArray();
     $this->user->setRight('EmailTemplatesModule', EmailTemplatesModule::getCreateRight());
     $this->assertTrue($this->user->save());
     $this->setGetArray(array('type' => EmailTemplate::TYPE_CONTACT));
     $this->runControllerWithNoExceptionsAndGetContent('emailTemplates/default/create');
     $this->setGetArray(array('type' => EmailTemplate::TYPE_WORKFLOW));
     $this->runControllerWithNoExceptionsAndGetContent('emailTemplates/default/create');
     $this->setGetArray(array('id' => $emailTemplate->id));
     $this->runControllerWithNoExceptionsAndGetContent('emailTemplates/default/edit');
     $this->user->setRight('EmailTemplatesModule', EmailTemplatesModule::getDeleteRight());
     $this->assertTrue($this->user->save());
     $this->runControllerWithRedirectExceptionAndGetUrl('emailTemplates/default/delete');
     $this->setGetArray(array('id' => static::$templateOwnedBySuper->id));
     $this->runControllerShouldResultInAccessFailureAndGetContent('emailTemplates/default/edit');
     $this->runControllerShouldResultInAccessFailureAndGetContent('emailTemplates/default/details');
     $this->runControllerShouldResultInAccessFailureAndGetContent('emailTemplates/default/delete');
 }
 /**
  * @depends testDetailsJsonActionForPlainText
  */
 public function testDetailsJsonActionForWorkflow()
 {
     $emailTemplate = EmailTemplateTestHelper::create('workflow 01', 'workflow 01', 'Note', 'html', 'text', EmailTemplate::TYPE_WORKFLOW);
     $emailTemplateDataUtil = new ModelToArrayAdapter($emailTemplate);
     $emailTemplateDetailsArray = $emailTemplateDataUtil->getData();
     $this->assertNotEmpty($emailTemplateDetailsArray);
     $this->setGetArray(array('id' => $emailTemplate->id, 'renderJson' => true));
     // @ to avoid headers already sent error.
     $content = @$this->runControllerWithExitExceptionAndGetContent('emailTemplates/default/detailsJson');
     $emailTemplateDetailsResolvedArray = CJSON::decode($content);
     $this->assertNotEmpty($emailTemplateDetailsResolvedArray);
     $this->assertEquals($emailTemplateDetailsArray, $emailTemplateDetailsResolvedArray);
 }
 public function testListForWorkflowAction()
 {
     EmailTemplateTestHelper::create('Test Name', 'Test Subject', 'Contact', 'Text HtmlContent', 'Test TextContent', EmailTemplate::TYPE_WORKFLOW);
     parent::testListForWorkflowAction();
 }
 public function testUserWithNotReadPermissionForEmailTemplatesModuleStillCanSeePredefinedTemplates()
 {
     $this->logoutCurrentUserLoginNewUserAndGetByUsername('super');
     $everyone = Group::getByName(Group::EVERYONE_GROUP_NAME);
     $item = NamedSecurableItem::getByName('EmailTemplatesModule');
     $item->addPermissions($everyone, Permission::READ, Permission::DENY);
     $this->assertTrue($item->save());
     ReadPermissionsOptimizationUtil::rebuild();
     $this->logoutCurrentUserLoginNewUserAndGetByUsername('nobody');
     $emailTemplate2 = EmailTemplateTestHelper::create('Test Name Regular 02', 'Test Subject Regular 02', 'Contact', 'Test HtmlContent Regular 01', 'Test TextContent Regular 01', EmailTemplate::TYPE_CONTACT, 0, EmailTemplate::BUILT_TYPE_BUILDER_TEMPLATE);
     $this->setGetArray(array('id' => $emailTemplate2->id, 'filterBy' => SelectBaseTemplateElement::FILTER_BY_PREDEFINED_TEMPLATES, 'ajax' => 'BuilderEmailTemplateWizardForm_baseTemplateId_list_view'));
     $content = @$this->runControllerWithNoExceptionsAndGetContent('emailTemplates/default/edit');
     $this->assertContains('<div class="summary">Displaying 1-6 of 6 results.</div><ul class="template-list clearfix">', $content);
     $emailTemplate2->delete();
 }
コード例 #10
0
 /**
  * @depends testCreateAndGetEmailTemplateById
  */
 public function testIsPredefinedBuilderTemplate()
 {
     $emailTemplate = EmailTemplateTestHelper::populate('task 05', 'subject 01', null, null, 'text', EmailTemplate::TYPE_WORKFLOW, 0, EmailTemplate::BUILT_TYPE_BUILDER_TEMPLATE);
     $this->assertTrue($emailTemplate->isWorkflowTemplate());
     $this->assertTrue($emailTemplate->isBuilderTemplate());
     $this->assertTrue($emailTemplate->isPredefinedBuilderTemplate());
     $this->assertFalse($emailTemplate->isPlainTextTemplate());
     $this->assertFalse($emailTemplate->isPastedHtmlTemplate());
     $this->assertFalse($emailTemplate->isContactTemplate());
 }