Changeset 42343 for trunk/tests/phpunit/tests/mail.php
- Timestamp:
- 11/30/2017 11:09:33 PM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/tests/phpunit/tests/mail.php
r39086 r42343 22 22 * all variables, which means that following tests would fail. To solve this issue we set `$this->Encoding` 23 23 * back to 8bit in `MockPHPMailer::preSend`. 24 *25 24 */ 26 25 function test_wp_mail_break_it() { … … 30 29 31 30 function test_wp_mail_custom_boundaries() { 32 $to = 'user@example.com';33 $subject = 'Test email with custom boundaries';31 $to = 'user@example.com'; 32 $subject = 'Test email with custom boundaries'; 34 33 $headers = '' . "\n"; 35 34 $headers .= 'MIME-Version: 1.0' . "\n"; 36 35 $headers .= 'Content-Type: multipart/mixed; boundary="----=_Part_4892_25692638.1192452070893"' . "\n"; 37 36 $headers .= "\n"; 38 $body = "\n";39 $body .= '------=_Part_4892_25692638.1192452070893' . "\n";40 $body .= 'Content-Type: text/plain; charset=ISO-8859-1' . "\n";41 $body .= 'Content-Transfer-Encoding: 7bit' . "\n";42 $body .= 'Content-Disposition: inline' . "\n";43 $body .= "\n";44 $body .= 'Here is a message with an attachment of a binary file.' . "\n";45 $body .= "\n";46 $body .= '------=_Part_4892_25692638.1192452070893' . "\n";47 $body .= 'Content-Type: image/x-icon; name=favicon.ico' . "\n";48 $body .= 'Content-Transfer-Encoding: base64' . "\n";49 $body .= 'Content-Disposition: attachment; filename=favicon.ico' . "\n";50 $body .= "\n";51 $body .= 'AAABAAEAEBAAAAAAAABoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAAAAAAAAAAAAAAAAAAAAA' . "\n";52 $body .= 'AAAAAAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAwMDAAICAgAAAAP8AAP8AAAD//wD/AAAA' . "\n";53 $body .= '/wD/AP//AAD///8A//3/AP39/wD6/f8A+P3/AP/8/wD9/P8A+vz/AP/7/wD/+v8A/vr/APz6/wD4' . "\n";54 $body .= '+v8A+/n/APP5/wD/+P8A+vj/AO/4/wDm+P8A2fj/AP/3/wD/9v8A9vb/AP/1/wD69f8A9PT/AO30' . "\n";55 $body .= '/wD/8/8A//L/APnx/wD28P8A///+APj//gD2//4A9P/+AOP//gD//f4A6f/9AP///AD2//wA8//8' . "\n";56 $body .= 'APf9/AD///sA/v/7AOD/+wD/+vsA9/X7APr/+gDv/voA///5AP/9+QD/+/kA+e35AP//+ADm//gA' . "\n";57 $body .= '4f/4AP/9+AD0+/gA///3APv/9wDz//cA8f/3AO3/9wD/8fcA//32AP369gDr+vYA8f/1AOv/9QD/' . "\n";58 $body .= '+/UA///0APP/9ADq//QA///zAP/18wD///IA/fzyAP//8QD///AA9//wAPjw8AD//+8A8//vAP//' . "\n";59 $body .= '7gD9/+4A9v/uAP/u7gD//+0A9v/tAP7/6wD/+eoA///pAP//6AD2/+gA//nnAP/45wD38eYA/fbl' . "\n";60 $body .= 'AP/25AD29uQA7N/hAPzm4AD/690AEhjdAAAa3AAaJdsA//LXAC8g1gANH9YA+dnTAP/n0gDh5dIA' . "\n";61 $body .= 'DyjSABkk0gAdH9EABxDRAP/l0AAAJs4AGRTOAPPczQAAKs0AIi7MAA4UywD56soA8tPKANTSygD/' . "\n";62 $body .= '18kA6NLHAAAjxwDj28QA/s7CAP/1wQDw3r8A/9e8APrSrwDCtqoAzamjANmPiQDQj4YA35mBAOme' . "\n";63 $body .= 'fgDHj3wA1qR6AO+sbwDpmm8A2IVlAKmEYgCvaFoAvHNXAEq2VgA5s1UAPbhQAFWtTwBStU0ARbNN' . "\n";64 $body .= 'AEGxTQA7tEwAObZIAEq5RwDKdEYAULhDANtuQgBEtTwA1ls3ALhgMQCxNzEA2FsvAEC3LQB0MCkA' . "\n";65 $body .= 'iyYoANZTJwDLWyYAtjMlALE6JACZNSMAuW4iANlgIgDoWCEAylwgAMUuIAD3Vh8A52gdALRCHQCx' . "\n";66 $body .= 'WhwAsEkcALU4HACMOBwA0V4bAMYyGgCPJRoA218ZAJM7FwC/PxYA0msVAM9jFQD2XBUAqioVAIAf' . "\n";67 $body .= 'FQDhYRQAujMTAMUxEwCgLBMAnxIPAMsqDgCkFgsA6GMHALE2BAC9JQAAliIAAFYTAAAAAAAAAAAA' . "\n";68 $body .= 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' . "\n";69 $body .= 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/' . "\n";70 $body .= '//8AsbGxsbGxsbGxsbGxsbGxd7IrMg8PDw8PDw8PUBQeJXjQYE9PcKPM2NfP2sWhcg+BzTE7dLjb' . "\n";71 $body .= 'mG03YWaV4JYye8MPbsLZlEouKRRCg9SXMoW/U53enGRAFzCRtNO7mTiAyliw30gRTg9VbJCKfYs0' . "\n";72 $body .= 'j9VmuscfLTFbIy8SOhA0Inq5Y77GNBMYIxQUJzM2Vxx2wEmfyCYWMRldXCg5MU0aicRUms58SUVe' . "\n";73 $body .= 'RkwjPBRSNIfBMkSgvWkyPxVHFIaMSx1/0S9nkq7WdWo1a43Jt2UqgtJERGJ5m6K8y92znpNWIYS1' . "\n";74 $body .= 'UQ89Mmg5cXNaX0EkGyyI3KSsp6mvpaqosaatq7axsQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' . "\n";75 $body .= 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=' . "\n";76 $body .= '------=_Part_4892_25692638.1192452070893--' . "\n";77 $body .= "\n";37 $body = "\n"; 38 $body .= '------=_Part_4892_25692638.1192452070893' . "\n"; 39 $body .= 'Content-Type: text/plain; charset=ISO-8859-1' . "\n"; 40 $body .= 'Content-Transfer-Encoding: 7bit' . "\n"; 41 $body .= 'Content-Disposition: inline' . "\n"; 42 $body .= "\n"; 43 $body .= 'Here is a message with an attachment of a binary file.' . "\n"; 44 $body .= "\n"; 45 $body .= '------=_Part_4892_25692638.1192452070893' . "\n"; 46 $body .= 'Content-Type: image/x-icon; name=favicon.ico' . "\n"; 47 $body .= 'Content-Transfer-Encoding: base64' . "\n"; 48 $body .= 'Content-Disposition: attachment; filename=favicon.ico' . "\n"; 49 $body .= "\n"; 50 $body .= 'AAABAAEAEBAAAAAAAABoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAAAAAAAAAAAAAAAAAAAAA' . "\n"; 51 $body .= 'AAAAAAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAwMDAAICAgAAAAP8AAP8AAAD//wD/AAAA' . "\n"; 52 $body .= '/wD/AP//AAD///8A//3/AP39/wD6/f8A+P3/AP/8/wD9/P8A+vz/AP/7/wD/+v8A/vr/APz6/wD4' . "\n"; 53 $body .= '+v8A+/n/APP5/wD/+P8A+vj/AO/4/wDm+P8A2fj/AP/3/wD/9v8A9vb/AP/1/wD69f8A9PT/AO30' . "\n"; 54 $body .= '/wD/8/8A//L/APnx/wD28P8A///+APj//gD2//4A9P/+AOP//gD//f4A6f/9AP///AD2//wA8//8' . "\n"; 55 $body .= 'APf9/AD///sA/v/7AOD/+wD/+vsA9/X7APr/+gDv/voA///5AP/9+QD/+/kA+e35AP//+ADm//gA' . "\n"; 56 $body .= '4f/4AP/9+AD0+/gA///3APv/9wDz//cA8f/3AO3/9wD/8fcA//32AP369gDr+vYA8f/1AOv/9QD/' . "\n"; 57 $body .= '+/UA///0APP/9ADq//QA///zAP/18wD///IA/fzyAP//8QD///AA9//wAPjw8AD//+8A8//vAP//' . "\n"; 58 $body .= '7gD9/+4A9v/uAP/u7gD//+0A9v/tAP7/6wD/+eoA///pAP//6AD2/+gA//nnAP/45wD38eYA/fbl' . "\n"; 59 $body .= 'AP/25AD29uQA7N/hAPzm4AD/690AEhjdAAAa3AAaJdsA//LXAC8g1gANH9YA+dnTAP/n0gDh5dIA' . "\n"; 60 $body .= 'DyjSABkk0gAdH9EABxDRAP/l0AAAJs4AGRTOAPPczQAAKs0AIi7MAA4UywD56soA8tPKANTSygD/' . "\n"; 61 $body .= '18kA6NLHAAAjxwDj28QA/s7CAP/1wQDw3r8A/9e8APrSrwDCtqoAzamjANmPiQDQj4YA35mBAOme' . "\n"; 62 $body .= 'fgDHj3wA1qR6AO+sbwDpmm8A2IVlAKmEYgCvaFoAvHNXAEq2VgA5s1UAPbhQAFWtTwBStU0ARbNN' . "\n"; 63 $body .= 'AEGxTQA7tEwAObZIAEq5RwDKdEYAULhDANtuQgBEtTwA1ls3ALhgMQCxNzEA2FsvAEC3LQB0MCkA' . "\n"; 64 $body .= 'iyYoANZTJwDLWyYAtjMlALE6JACZNSMAuW4iANlgIgDoWCEAylwgAMUuIAD3Vh8A52gdALRCHQCx' . "\n"; 65 $body .= 'WhwAsEkcALU4HACMOBwA0V4bAMYyGgCPJRoA218ZAJM7FwC/PxYA0msVAM9jFQD2XBUAqioVAIAf' . "\n"; 66 $body .= 'FQDhYRQAujMTAMUxEwCgLBMAnxIPAMsqDgCkFgsA6GMHALE2BAC9JQAAliIAAFYTAAAAAAAAAAAA' . "\n"; 67 $body .= 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' . "\n"; 68 $body .= 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/' . "\n"; 69 $body .= '//8AsbGxsbGxsbGxsbGxsbGxd7IrMg8PDw8PDw8PUBQeJXjQYE9PcKPM2NfP2sWhcg+BzTE7dLjb' . "\n"; 70 $body .= 'mG03YWaV4JYye8MPbsLZlEouKRRCg9SXMoW/U53enGRAFzCRtNO7mTiAyliw30gRTg9VbJCKfYs0' . "\n"; 71 $body .= 'j9VmuscfLTFbIy8SOhA0Inq5Y77GNBMYIxQUJzM2Vxx2wEmfyCYWMRldXCg5MU0aicRUms58SUVe' . "\n"; 72 $body .= 'RkwjPBRSNIfBMkSgvWkyPxVHFIaMSx1/0S9nkq7WdWo1a43Jt2UqgtJERGJ5m6K8y92znpNWIYS1' . "\n"; 73 $body .= 'UQ89Mmg5cXNaX0EkGyyI3KSsp6mvpaqosaatq7axsQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' . "\n"; 74 $body .= 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=' . "\n"; 75 $body .= '------=_Part_4892_25692638.1192452070893--' . "\n"; 76 $body .= "\n"; 78 77 79 78 wp_mail( $to, $subject, $body, $headers ); … … 108 107 //retrieve the mailer instance 109 108 $mailer = tests_retrieve_phpmailer_instance(); 110 $this->assertEquals( 'address@tld.com', 111 $this->assertEquals( 'Name', 112 $this->assertEquals( 'cc@cc.com', 113 $this->assertEquals( 'The Carbon Guy', 114 $this->assertEquals( 'bcc@bcc.com', 109 $this->assertEquals( 'address@tld.com', $mailer->get_recipient( 'to' )->address ); 110 $this->assertEquals( 'Name', $mailer->get_recipient( 'to' )->name ); 111 $this->assertEquals( 'cc@cc.com', $mailer->get_recipient( 'cc' )->address ); 112 $this->assertEquals( 'The Carbon Guy', $mailer->get_recipient( 'cc' )->name ); 113 $this->assertEquals( 'bcc@bcc.com', $mailer->get_recipient( 'bcc' )->address ); 115 114 $this->assertEquals( 'The Blind Carbon Guy', $mailer->get_recipient( 'bcc' )->name ); 116 $this->assertEquals( $message . "\n", 115 $this->assertEquals( $message . "\n", $mailer->get_sent()->body ); 117 116 } 118 117 … … 130 129 // Earlier versions of PHPMailer were not touchy about the formatting of these arguments. 131 130 $mailer = tests_retrieve_phpmailer_instance(); 132 $this->assertEquals( 'address@tld.com', 133 $this->assertEquals( 'Name', 131 $this->assertEquals( 'address@tld.com', $mailer->get_recipient( 'to' )->address ); 132 $this->assertEquals( 'Name', $mailer->get_recipient( 'to' )->name ); 134 133 $this->assertEquals( 'another_address@different-tld.com', $mailer->get_recipient( 'to', 0, 1 )->address ); 135 $this->assertEquals( 'Another Name', 136 $this->assertEquals( $message . "\n", 134 $this->assertEquals( 'Another Name', $mailer->get_recipient( 'to', 0, 1 )->name ); 135 $this->assertEquals( $message . "\n", $mailer->get_sent()->body ); 137 136 } 138 137 … … 145 144 146 145 $mailer = tests_retrieve_phpmailer_instance(); 147 $this->assertEquals( 'address@tld.com', 146 $this->assertEquals( 'address@tld.com', $mailer->get_recipient( 'to' )->address ); 148 147 $this->assertEquals( 'another_address@different-tld.com', $mailer->get_recipient( 'to', 0, 1 )->address ); 149 $this->assertEquals( $message . "\n", 148 $this->assertEquals( $message . "\n", $mailer->get_sent()->body ); 150 149 } 151 150 … … 162 161 $mailer = tests_retrieve_phpmailer_instance(); 163 162 $this->assertEquals( 'address@tld.com', $mailer->get_recipient( 'to' )->address ); 164 $this->assertEquals( $message . "\n", 163 $this->assertEquals( $message . "\n", $mailer->get_sent()->body ); 165 164 } 166 165 … … 366 365 */ 367 366 public function test_phpmailer_exception_thrown() { 368 $to 369 $subject 370 $message 367 $to = 'an_invalid_address'; 368 $subject = 'Testing'; 369 $message = 'Test Message'; 371 370 372 371 $ma = new MockAction(); … … 378 377 379 378 $expected_error_data = array( 380 'to' => array( 'an_invalid_address' ),381 'subject' => 'Testing',382 'message' => 'Test Message',383 'headers' => array(),384 'attachments' => array(),379 'to' => array( 'an_invalid_address' ), 380 'subject' => 'Testing', 381 'message' => 'Test Message', 382 'headers' => array(), 383 'attachments' => array(), 385 384 'phpmailer_exception_code' => 2, 386 385 ); 387 386 388 387 //Retrieve the arguments passed to the 'wp_mail_failed' hook callbacks 389 $all_args = $ma->get_args();388 $all_args = $ma->get_args(); 390 389 $call_args = array_pop( $all_args ); 391 390
Note: See TracChangeset
for help on using the changeset viewer.