Fix SendingTask creation from queue [MAILPOET-2488]
This commit is contained in:
@ -391,8 +391,12 @@ class NewslettersTest extends \MailPoetTest {
|
||||
],
|
||||
];
|
||||
$newsletter = $this->endpoint->save($newsletter_data);
|
||||
$sending_queue_1 = SendingTask::createFromQueue(SendingQueue::findOne($sending_queue_1->id));
|
||||
$sending_queue_2 = SendingTask::createFromQueue(SendingQueue::findOne($sending_queue_2->id));
|
||||
/** @var SendingQueue $sending_queue_1 */
|
||||
$sending_queue_1 = SendingQueue::findOne($sending_queue_1->id);
|
||||
$sending_queue_1 = SendingTask::createFromQueue($sending_queue_1);
|
||||
/** @var SendingQueue $sending_queue_2 */
|
||||
$sending_queue_2 = SendingQueue::findOne($sending_queue_2->id);
|
||||
$sending_queue_2 = SendingTask::createFromQueue($sending_queue_2);
|
||||
expect($sending_queue_1->scheduled_at)->notEquals($current_time);
|
||||
expect($sending_queue_1->scheduled_at)->equals(
|
||||
Scheduler::getNextRunDate($newsletter->data['schedule'])
|
||||
|
@ -112,7 +112,9 @@ class SchedulerTest extends \MailPoetTest {
|
||||
expect($queue->scheduled_at)->null();
|
||||
$newsletter->schedule = '0 5 * * *'; // set it to daily at 5
|
||||
$scheduler->deleteQueueOrUpdateNextRunDate($queue, $newsletter);
|
||||
$queue = SendingTask::createFromQueue(SendingQueue::findOne($queue->id));
|
||||
/** @var SendingQueue $queue */
|
||||
$queue = SendingQueue::findOne($queue->id);
|
||||
$queue = SendingTask::createFromQueue($queue);
|
||||
expect($queue->scheduled_at)->notNull();
|
||||
}
|
||||
|
||||
@ -259,7 +261,9 @@ class SchedulerTest extends \MailPoetTest {
|
||||
], $this);
|
||||
expect($queue->status)->notNull();
|
||||
expect($scheduler->processWelcomeNewsletter($newsletter, $queue))->true();
|
||||
$updated_queue = SendingTask::createFromQueue(SendingQueue::findOne($queue->id));
|
||||
/** @var SendingQueue $updated_queue */
|
||||
$updated_queue = SendingQueue::findOne($queue->id);
|
||||
$updated_queue = SendingTask::createFromQueue($updated_queue);
|
||||
expect($updated_queue->status)->null();
|
||||
}
|
||||
|
||||
@ -276,7 +280,9 @@ class SchedulerTest extends \MailPoetTest {
|
||||
expect($queue->status)->notNull();
|
||||
expect($scheduler->processWelcomeNewsletter($newsletter, $queue))->true();
|
||||
// update queue's status to null
|
||||
$updated_queue = SendingTask::createFromQueue(SendingQueue::findOne($queue->id));
|
||||
/** @var SendingQueue $updated_queue */
|
||||
$updated_queue = SendingQueue::findOne($queue->id);
|
||||
$updated_queue = SendingTask::createFromQueue($updated_queue);
|
||||
expect($updated_queue->status)->null();
|
||||
}
|
||||
|
||||
@ -332,7 +338,9 @@ class SchedulerTest extends \MailPoetTest {
|
||||
$result = $scheduler->verifyMailpoetSubscriber($subscriber->id, $newsletter, $queue);
|
||||
expect($result)->false();
|
||||
// update the time queue is scheduled to run at
|
||||
$updated_queue = SendingTask::createFromQueue(SendingQueue::findOne($queue->id));
|
||||
/** @var SendingQueue $updated_queue */
|
||||
$updated_queue = SendingQueue::findOne($queue->id);
|
||||
$updated_queue = SendingTask::createFromQueue($updated_queue);
|
||||
expect(Carbon::parse($updated_queue->scheduled_at))->equals(
|
||||
Carbon::createFromTimestamp(WPFunctions::get()->currentTime('timestamp'))
|
||||
->addMinutes(ScheduledTask::BASIC_RESCHEDULE_TIMEOUT)
|
||||
@ -405,7 +413,9 @@ class SchedulerTest extends \MailPoetTest {
|
||||
// return true
|
||||
expect($scheduler->processScheduledStandardNewsletter($newsletter, $queue))->true();
|
||||
// update queue's list of subscribers to process
|
||||
$updated_queue = SendingTask::createFromQueue(SendingQueue::findOne($queue->id));
|
||||
/** @var SendingQueue $updated_queue */
|
||||
$updated_queue = SendingQueue::findOne($queue->id);
|
||||
$updated_queue = SendingTask::createFromQueue($updated_queue);
|
||||
$updated_queue_subscribers = $updated_queue->getSubscribers(ScheduledTaskSubscriber::STATUS_UNPROCESSED);
|
||||
expect($updated_queue_subscribers)->equals([$subscriber->id]);
|
||||
// set queue's status to null
|
||||
@ -470,7 +480,9 @@ class SchedulerTest extends \MailPoetTest {
|
||||
expect($notification_history)->notEmpty();
|
||||
// update queue with a list of subscribers to process and change newsletter id
|
||||
// to that of the notification history
|
||||
$updated_queue = SendingTask::createFromQueue(SendingQueue::findOne($queue->id));
|
||||
/** @var SendingQueue $updated_queue */
|
||||
$updated_queue = SendingQueue::findOne($queue->id);
|
||||
$updated_queue = SendingTask::createFromQueue($updated_queue);
|
||||
$updated_queue_subscribers = $updated_queue->getSubscribers(ScheduledTaskSubscriber::STATUS_UNPROCESSED);
|
||||
expect($updated_queue_subscribers)->equals([$subscriber->id]);
|
||||
expect($updated_queue->newsletter_id)->equals($notification_history->id);
|
||||
|
@ -357,7 +357,9 @@ class SendingQueueTest extends \MailPoetTest {
|
||||
expect($updated_newsletter->status)->equals(Newsletter::STATUS_SENT);
|
||||
|
||||
// queue status is set to completed
|
||||
$updated_queue = SendingTask::createFromQueue(SendingQueue::findOne($this->queue->id));
|
||||
/** @var SendingQueue $updated_queue */
|
||||
$updated_queue = SendingQueue::findOne($this->queue->id);
|
||||
$updated_queue = SendingTask::createFromQueue($updated_queue);
|
||||
expect($updated_queue->status)->equals(SendingQueue::STATUS_COMPLETED);
|
||||
|
||||
// queue subscriber processed/to process count is updated
|
||||
@ -407,7 +409,9 @@ class SendingQueueTest extends \MailPoetTest {
|
||||
expect($updated_newsletter->status)->equals(Newsletter::STATUS_SENT);
|
||||
|
||||
// queue status is set to completed
|
||||
$updated_queue = SendingTask::createFromQueue(SendingQueue::findOne($this->queue->id));
|
||||
/** @var SendingQueue $updated_queue */
|
||||
$updated_queue = SendingQueue::findOne($this->queue->id);
|
||||
$updated_queue = SendingTask::createFromQueue($updated_queue);
|
||||
expect($updated_queue->status)->equals(SendingQueue::STATUS_COMPLETED);
|
||||
|
||||
// queue subscriber processed/to process count is updated
|
||||
@ -450,7 +454,9 @@ class SendingQueueTest extends \MailPoetTest {
|
||||
$sending_queue_worker->process();
|
||||
|
||||
// queue status is set to completed
|
||||
$updated_queue = SendingTask::createFromQueue(SendingQueue::findOne($this->queue->id));
|
||||
/** @var SendingQueue $updated_queue */
|
||||
$updated_queue = SendingQueue::findOne($this->queue->id);
|
||||
$updated_queue = SendingTask::createFromQueue($updated_queue);
|
||||
expect($updated_queue->status)->equals(SendingQueue::STATUS_COMPLETED);
|
||||
|
||||
// newsletter status is set to sent and sent_at date is populated
|
||||
@ -529,7 +535,9 @@ class SendingQueueTest extends \MailPoetTest {
|
||||
expect($updated_newsletter->status)->equals(Newsletter::STATUS_SENT);
|
||||
|
||||
// queue status is set to completed
|
||||
$updated_queue = SendingTask::createFromQueue(SendingQueue::findOne($this->queue->id));
|
||||
/** @var SendingQueue $updated_queue */
|
||||
$updated_queue = SendingQueue::findOne($this->queue->id);
|
||||
$updated_queue = SendingTask::createFromQueue($updated_queue);
|
||||
expect($updated_queue->status)->equals(SendingQueue::STATUS_COMPLETED);
|
||||
|
||||
// queue subscriber processed/to process count is updated
|
||||
@ -572,7 +580,9 @@ class SendingQueueTest extends \MailPoetTest {
|
||||
$sending_queue_worker->process();
|
||||
|
||||
// queue status is set to completed
|
||||
$updated_queue = SendingTask::createFromQueue(SendingQueue::findOne($this->queue->id));
|
||||
/** @var SendingQueue $updated_queue */
|
||||
$updated_queue = SendingQueue::findOne($this->queue->id);
|
||||
$updated_queue = SendingTask::createFromQueue($updated_queue);
|
||||
|
||||
expect($updated_queue->getSubscribers(ScheduledTaskSubscriber::STATUS_PROCESSED))
|
||||
->equals([]);
|
||||
@ -601,7 +611,9 @@ class SendingQueueTest extends \MailPoetTest {
|
||||
);
|
||||
$sending_queue_worker->process();
|
||||
|
||||
$updated_queue = SendingTask::createFromQueue(SendingQueue::findOne($queue->id));
|
||||
/** @var SendingQueue $updated_queue */
|
||||
$updated_queue = SendingQueue::findOne($queue->id);
|
||||
$updated_queue = SendingTask::createFromQueue($updated_queue);
|
||||
// queue subscriber processed/to process count is updated
|
||||
expect($updated_queue->getSubscribers(ScheduledTaskSubscriber::STATUS_UNPROCESSED))
|
||||
->equals([]);
|
||||
@ -631,7 +643,9 @@ class SendingQueueTest extends \MailPoetTest {
|
||||
);
|
||||
$sending_queue_worker->process();
|
||||
|
||||
$updated_queue = SendingTask::createFromQueue(SendingQueue::findOne($queue->id));
|
||||
/** @var SendingQueue $updated_queue */
|
||||
$updated_queue = SendingQueue::findOne($queue->id);
|
||||
$updated_queue = SendingTask::createFromQueue($updated_queue);
|
||||
// queue subscriber processed/to process count is updated
|
||||
expect($updated_queue->getSubscribers(ScheduledTaskSubscriber::STATUS_UNPROCESSED))
|
||||
->equals([]);
|
||||
@ -651,7 +665,9 @@ class SendingQueueTest extends \MailPoetTest {
|
||||
|
||||
// newsletter is sent to existing subscriber
|
||||
$sending_queue_worker->process();
|
||||
$updated_queue = SendingTask::createFromQueue(SendingQueue::findOne($this->queue->id));
|
||||
/** @var SendingQueue $updated_queue */
|
||||
$updated_queue = SendingQueue::findOne($this->queue->id);
|
||||
$updated_queue = SendingTask::createFromQueue($updated_queue);
|
||||
expect((int)$updated_queue->count_total)->equals(1);
|
||||
|
||||
// newsletter is not sent to trashed subscriber
|
||||
@ -661,7 +677,9 @@ class SendingQueueTest extends \MailPoetTest {
|
||||
$subscriber->deleted_at = Carbon::now();
|
||||
$subscriber->save();
|
||||
$sending_queue_worker->process();
|
||||
$updated_queue = SendingTask::createFromQueue(SendingQueue::findOne($this->queue->id));
|
||||
/** @var SendingQueue $updated_queue */
|
||||
$updated_queue = SendingQueue::findOne($this->queue->id);
|
||||
$updated_queue = SendingTask::createFromQueue($updated_queue);
|
||||
expect((int)$updated_queue->count_total)->equals(0);
|
||||
}
|
||||
|
||||
@ -677,7 +695,9 @@ class SendingQueueTest extends \MailPoetTest {
|
||||
$subscriber->status = Subscriber::STATUS_UNSUBSCRIBED;
|
||||
$subscriber->save();
|
||||
$sending_queue_worker->process();
|
||||
$updated_queue = SendingTask::createFromQueue(SendingQueue::findOne($this->queue->id));
|
||||
/** @var SendingQueue $updated_queue */
|
||||
$updated_queue = SendingQueue::findOne($this->queue->id);
|
||||
$updated_queue = SendingTask::createFromQueue($updated_queue);
|
||||
expect((int)$updated_queue->count_total)->equals(0);
|
||||
}
|
||||
|
||||
@ -693,7 +713,9 @@ class SendingQueueTest extends \MailPoetTest {
|
||||
$subscriber_segment->status = Subscriber::STATUS_UNSUBSCRIBED;
|
||||
$subscriber_segment->save();
|
||||
$sending_queue_worker->process();
|
||||
$updated_queue = SendingTask::createFromQueue(SendingQueue::findOne($this->queue->id));
|
||||
/** @var SendingQueue $updated_queue */
|
||||
$updated_queue = SendingQueue::findOne($this->queue->id);
|
||||
$updated_queue = SendingTask::createFromQueue($updated_queue);
|
||||
expect((int)$updated_queue->count_total)->equals(0);
|
||||
}
|
||||
|
||||
@ -709,7 +731,9 @@ class SendingQueueTest extends \MailPoetTest {
|
||||
$subscriber->status = Subscriber::STATUS_INACTIVE;
|
||||
$subscriber->save();
|
||||
$sending_queue_worker->process();
|
||||
$updated_queue = SendingTask::createFromQueue(SendingQueue::findOne($this->queue->id));
|
||||
/** @var SendingQueue $updated_queue */
|
||||
$updated_queue = SendingQueue::findOne($this->queue->id);
|
||||
$updated_queue = SendingTask::createFromQueue($updated_queue);
|
||||
expect((int)$updated_queue->count_total)->equals(0);
|
||||
}
|
||||
|
||||
|
@ -159,7 +159,9 @@ class NewsletterTest extends \MailPoetTest {
|
||||
$newsletter_task->preProcessNewsletter($this->newsletter, $this->queue);
|
||||
$link = NewsletterLink::where('newsletter_id', $this->newsletter->id)
|
||||
->findOne();
|
||||
$updated_queue = SendingTask::createFromQueue(SendingQueue::findOne($this->queue->id));
|
||||
/** @var SendingQueue $updated_queue */
|
||||
$updated_queue = SendingQueue::findOne($this->queue->id);
|
||||
$updated_queue = SendingTask::createFromQueue($updated_queue);
|
||||
$rendered_newsletter = $updated_queue->getNewsletterRenderedBody();
|
||||
expect($rendered_newsletter['html'])
|
||||
->contains('[mailpoet_click_data]-' . $link->hash);
|
||||
@ -182,7 +184,9 @@ class NewsletterTest extends \MailPoetTest {
|
||||
$link = NewsletterLink::where('newsletter_id', $this->newsletter->id)
|
||||
->findOne();
|
||||
expect($link)->false();
|
||||
$updated_queue = SendingTask::createFromQueue(SendingQueue::findOne($this->queue->id));
|
||||
/** @var SendingQueue $updated_queue */
|
||||
$updated_queue = SendingQueue::findOne($this->queue->id);
|
||||
$updated_queue = SendingTask::createFromQueue($updated_queue);
|
||||
$rendered_newsletter = $updated_queue->getNewsletterRenderedBody();
|
||||
expect($rendered_newsletter['html'])
|
||||
->notContains('[mailpoet_click_data]');
|
||||
|
Reference in New Issue
Block a user