Use PHPUnit mock instead of aspect mock in sending queue newsletter task test
[MAILPOET-2458]
This commit is contained in:
committed by
Jack Kitterhing
parent
31d8125b99
commit
6cbaeee868
@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
namespace MailPoet\Test\Cron\Workers\SendingQueue\Tasks;
|
namespace MailPoet\Test\Cron\Workers\SendingQueue\Tasks;
|
||||||
|
|
||||||
use AspectMock\Test as Mock;
|
|
||||||
use Codeception\Stub;
|
use Codeception\Stub;
|
||||||
use Codeception\Util\Fixtures;
|
use Codeception\Util\Fixtures;
|
||||||
use Helper\WordPressHooks as WPHooksHelper;
|
use Helper\WordPressHooks as WPHooksHelper;
|
||||||
@ -343,13 +342,16 @@ class NewsletterTest extends \MailPoetTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function testItLogsErrorWhenExistingRenderedNewsletterBodyIsInvalid() {
|
function testItLogsErrorWhenExistingRenderedNewsletterBodyIsInvalid() {
|
||||||
$queue_mock = Mock::double(
|
$queue_mock = $this->createMock(SendingTask::class);
|
||||||
$this->queue,
|
$queue_mock
|
||||||
[
|
->expects($this->any())
|
||||||
'getNewsletterRenderedBody' => 'a:2:{s:4:"html"',
|
->method('__call')
|
||||||
'validate' => false,
|
->with('getNewsletterRenderedBody')
|
||||||
]
|
->willReturn('a:2:{s:4:"html"');
|
||||||
);
|
$queue_mock
|
||||||
|
->expects($this->once())
|
||||||
|
->method('validate')
|
||||||
|
->willReturn(false);
|
||||||
try {
|
try {
|
||||||
$this->newsletter_task->preProcessNewsletter($this->newsletter, $queue_mock);
|
$this->newsletter_task->preProcessNewsletter($this->newsletter, $queue_mock);
|
||||||
self::fail('Sending error exception was not thrown.');
|
self::fail('Sending error exception was not thrown.');
|
||||||
@ -362,17 +364,25 @@ class NewsletterTest extends \MailPoetTest {
|
|||||||
|
|
||||||
function testItLogsErrorWhenNewlyRenderedNewsletterBodyIsInvalid() {
|
function testItLogsErrorWhenNewlyRenderedNewsletterBodyIsInvalid() {
|
||||||
$queue = $this->queue;
|
$queue = $this->queue;
|
||||||
$queue_mock = Mock::double(
|
$queue_mock = $this->createMock(SendingTask::class);
|
||||||
$this->queue,
|
$queue_mock
|
||||||
[
|
->expects($this->any())
|
||||||
'getNewsletterRenderedBody' => null,
|
->method('__call')
|
||||||
]
|
->with('getNewsletterRenderedBody')
|
||||||
);
|
->willReturn(null);
|
||||||
|
$queue_mock
|
||||||
|
->expects($this->once())
|
||||||
|
->method('save');
|
||||||
|
$queue_mock
|
||||||
|
->expects($this->once())
|
||||||
|
->method('getErrors')
|
||||||
|
->willReturn([]);
|
||||||
$queue_mock->id = $queue->id;
|
$queue_mock->id = $queue->id;
|
||||||
|
$queue_mock->task_id = $queue->task_id;
|
||||||
|
|
||||||
// broken serialized object
|
$sending_queue = \ORM::forTable(SendingQueue::$_table)->findOne($queue->id);
|
||||||
$queue->newsletter_rendered_body = 'a:2:{s:4:"html"';
|
$sending_queue->set('newsletter_rendered_body', 'a:2:{s:4:"html"');
|
||||||
$queue->save();
|
$sending_queue->save();
|
||||||
try {
|
try {
|
||||||
$this->newsletter_task->preProcessNewsletter($this->newsletter, $queue_mock);
|
$this->newsletter_task->preProcessNewsletter($this->newsletter, $queue_mock);
|
||||||
self::fail('Sending error exception was not thrown.');
|
self::fail('Sending error exception was not thrown.');
|
||||||
@ -385,18 +395,26 @@ class NewsletterTest extends \MailPoetTest {
|
|||||||
|
|
||||||
function testItPreProcessesNewsletterWhenNewlyRenderedNewsletterBodyIsValid() {
|
function testItPreProcessesNewsletterWhenNewlyRenderedNewsletterBodyIsValid() {
|
||||||
$queue = $this->queue;
|
$queue = $this->queue;
|
||||||
$queue_mock = Mock::double(
|
$queue_mock = $this->createMock(SendingTask::class);
|
||||||
new \stdClass(),
|
$queue_mock
|
||||||
[
|
->expects($this->any())
|
||||||
'getNewsletterRenderedBody' => null,
|
->method('__call')
|
||||||
]
|
->with('getNewsletterRenderedBody')
|
||||||
);
|
->willReturn(null);
|
||||||
|
$queue_mock
|
||||||
|
->expects($this->once())
|
||||||
|
->method('save');
|
||||||
|
$queue_mock
|
||||||
|
->expects($this->once())
|
||||||
|
->method('getErrors')
|
||||||
|
->willReturn([]);
|
||||||
$queue_mock->id = $queue->id;
|
$queue_mock->id = $queue->id;
|
||||||
$queue_mock->task_id = $queue->task_id;
|
$queue_mock->task_id = $queue->task_id;
|
||||||
|
|
||||||
// properly serialized object
|
// properly serialized object
|
||||||
$queue->newsletter_rendered_body = 'a:2:{s:4:"html";s:4:"test";s:4:"text";s:4:"test";}';
|
$sending_queue = \ORM::forTable(SendingQueue::$_table)->findOne($queue->id);
|
||||||
$queue->save();
|
$sending_queue->set('newsletter_rendered_body', 'a:2:{s:4:"html";s:4:"test";s:4:"text";s:4:"test";}');
|
||||||
|
$sending_queue->save();
|
||||||
expect($this->newsletter_task->preProcessNewsletter($this->newsletter, $queue_mock))->equals($this->newsletter);
|
expect($this->newsletter_task->preProcessNewsletter($this->newsletter, $queue_mock))->equals($this->newsletter);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user