Skip to content

Commit

Permalink
[TEST] Update Email Common Test to incorporate testing for the fix fo…
Browse files Browse the repository at this point in the history
…r dev/core#357 for signatures
  • Loading branch information
seamuslee001 committed Jun 24, 2019
1 parent 08fa8c6 commit 72b7a39
Showing 1 changed file with 22 additions and 9 deletions.
31 changes: 22 additions & 9 deletions tests/phpunit/CRM/Contact/Form/Task/EmailCommonTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -55,28 +55,41 @@ public function testDomainEmailGeneration() {
$this->assertEquals('"Seamus Lee" <seamus@example.com>', $optionValue['values'][$this->_optionValue['id']]['label']);
}

public function testPostProcess() {
$this->createLoggedInUser();
public function testPostProcessWithSignature() {
$mut = new CiviMailUtils($this, TRUE);
Civi::settings()->set('allow_mail_from_logged_in_contact', 1);
$loggedInContactID = $this->createLoggedInUser();
$form = new CRM_Contact_Form_Task_Email();
$_SERVER['REQUEST_METHOD'] = 'GET';
$form->controller = new CRM_Core_Controller();

for ($i = 0; $i < 27; $i++) {
$email = 'spy' . $i . '@secretsquirrels.com';
$contactID = $this->individualCreate(array('email' => $email));
$form->_contactIds[$contactID] = $contactID;
$form->_toContactEmails[$this->callAPISuccessGetValue('Email', array('return' => 'id', 'email' => $email))] = $email;
}
$loggedInEmail = $this->callAPISuccess('Email', 'create', [
'email' => 'mickey@mouse.com',
'location_type_id' => 1,
'is_primary' => 1,
'contact_id' => $loggedInContactID,
'signature_text' => 'This is a test Signature',
'signature_html' => '<p>This is a test Signature</p>',
]);
$form->_allContactIds = $form->_toContactIds = $form->_contactIds;
$form->_emails = array(1 => 'mickey@mouse.com');
$form->_fromEmails = array(1 => 'mickey@mouse.com');

$form->_emails = array($loggedInEmail['id'] => 'mickey@mouse.com');
$form->_fromEmails = array($loggedInEmail['id'] => 'mickey@mouse.com');
CRM_Contact_Form_Task_EmailCommon::preProcessFromAddress($form);
CRM_Contact_Form_Task_EmailCommon::buildQuickForm($form);

CRM_Contact_Form_Task_EmailCommon::submit($form, array(
'fromEmailAddress' => 1,
CRM_Contact_Form_Task_EmailCommon::submit($form, array_merge($form->_defaultValues, [
'from_email_address' => $loggedInEmail['id'],
'subject' => 'Really interesting stuff',
]));
$mut->checkMailLog(array(
'This is a test Signature',
));
$mut->stop();
Civi::settings()->set('allow_mail_from_logged_in_contact', 0);
}

}

0 comments on commit 72b7a39

Please sign in to comment.