| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154 |
- <?php
- /**
- * @file
- * Tests for Newsletter module.
- */
- /**
- * The NewsletterTemplateTestCase tests CUD actions through Web UI
- * for newsletter templates.
- */
- class NewsletterTemplateTestCase extends TaxonomyWebTestCase {
- protected $privileged_user;
- public static function getInfo() {
- return array(
- 'name' => 'Newsletter Template',
- 'description' => 'Ensure that template CUD is operating properly.',
- 'group' => 'Newsletter',
- );
- }
- public function setUp() {
- parent::setUp(array('taxonomy', 'entityreference', 'token', 'newsletter'));
- $this->privileged_user = $this->drupalCreateUser(array(
- 'access administration pages',
- 'administer newsletters',
- 'subscribe newsletters',
- 'access newsletter statistics',
- ));
- $this->drupalLogin($this->privileged_user);
- }
- public function testNewsletterTemplateCreate() {
- // Create a vocabulary with a term in it first.
- $vocabulary = $this->createVocabulary();
- $term = $this->createTerm($vocabulary);
- // Create a template.
- $create = array();
- $create['subject'] = $this->randomName(8);
- $create['field_newsletter_body[' . LANGUAGE_NONE . '][0][value]'] = $this->randomString(1000);
- $create['field_' . $vocabulary->machine_name . '[' . LANGUAGE_NONE . '][]'] = $term->tid;
- $this->drupalPost('admin/config/media/newsletter/templates/mail/add', $create, t('Save'));
- $this->assertText(t('Template updated successfully'));
- }
- public function testNewsletterTemplateEdit() {
- // Create a vocabulary with a term in it.
- $vocabulary = $this->createVocabulary();
- $term = $this->createTerm($vocabulary);
- // Edit the Default template.
- $edit = array();
- $edit['subject'] = $this->randomName(8);
- $edit['field_newsletter_body[' . LANGUAGE_NONE . '][0][value]'] = $this->randomString(1000);
- $edit['field_' . $vocabulary->machine_name . '[' . LANGUAGE_NONE . '][]'] = $term->tid;
- $edit['exposed'] = 1;
- $this->drupalPost('admin/config/media/newsletter/templates/edit/4', $edit, t('Update'));
- $this->assertText(t('Template updated successfully'));
- }
- public function testNewsletterTemplateDelete() {
- // Delete the Default template.
- $this->drupalPost('admin/config/media/newsletter/templates/delete/4', NULL, t('Confirm'));
- $this->assertText(t('Template deleted successfully'));
- }
- public function testNewsletterTemplateDeleteMass() {
- // Create some templates.
- for ($i = 5; $i < 10; $i++) {
- $this->testNewsletterTemplateCreate();
- $delete["template[$i]"] = $i;
- }
- $delete['operation'] = 'delete';
- $this->drupalPost('admin/config/media/newsletter/templates', $delete, t('Update'));
- $this->drupalPost(NULL, NULL, t('Confirm'));
- $this->assertText(t('Templates deleted successfully'));
- }
- }
- /**
- * The NewsletterListTestCase tests CUD actions through Web UI
- * for newsletter lists.
- */
- class NewsletterListTestCase extends DrupalWebTestCase {
- protected $privileged_user;
- public static function getInfo() {
- return array(
- 'name' => 'Newsletter List',
- 'description' => 'Ensure that list CUD is operating properly.',
- 'group' => 'Newsletter',
- );
- }
- public function setUp() {
- parent::setUp(array('taxonomy', 'entityreference', 'token', 'newsletter'));
- $this->privileged_user = $this->drupalCreateUser(array(
- 'access administration pages',
- 'administer newsletters',
- 'subscribe newsletters',
- 'access newsletter statistics',
- ));
- $this->drupalLogin($this->privileged_user);
- }
- public function testNewsletterListCreate() {
- $create = array();
- $create['title'] = $this->randomName(8);
- $create['field_list_description[' . LANGUAGE_NONE . '][0][value]'] = $this->randomName(15);
- $create['field_newsletter_categories[' . LANGUAGE_NONE . ']'] = $this->randomName(8);
- $create['field_newsletter_template[' . LANGUAGE_NONE . ']'] = 4;
- $create['send_rate'] = 'Daily';
- $this->drupalPost('admin/config/media/newsletter/lists/add', $create, t('Save'));
- $this->assertText(t('List updated successfully'));
- }
- public function testNewsletterListEdit() {
- $edit = array();
- $edit['title'] = $this->randomName(8);
- $edit['field_list_description[' . LANGUAGE_NONE . '][0][value]'] = $this->randomName(15);
- $edit['field_newsletter_categories[' . LANGUAGE_NONE . ']'] = $this->randomName(8);
- $edit['field_newsletter_template[' . LANGUAGE_NONE . ']'] = 4;
- $edit['send_rate'] = 'Custom';
- $edit['send_rate_custom'] = rand(0 , 10);
- $this->drupalPost('admin/config/media/newsletter/lists/edit/1', $edit, t('Update'));
- $this->assertText(t('List updated successfully'));
- }
- public function testNewsletterListDelete() {
- // Delete the Default list.
- $this->drupalPost('admin/config/media/newsletter/lists/delete/1', NULL, t('Confirm'));
- $this->assertText(t('List deleted successfully'));
- }
- public function testNewsletterListDeleteMass() {
- // Create some lists.
- for ($i = 2; $i < 7; $i++) {
- $this->testNewsletterListCreate();
- $delete["list[$i]"] = $i;
- }
- $delete['operation'] = 'delete';
- $this->drupalPost('admin/config/media/newsletter/lists', $delete, t('Update'));
- $this->drupalPost(NULL, NULL, t('Confirm'));
- $this->assertText(t('Lists deleted successfully'));
- }
- }
|