diff --git a/lib/Cron/Workers/Scheduler.php b/lib/Cron/Workers/Scheduler.php index 30cdbb0cd0..2a3f52b8b3 100644 --- a/lib/Cron/Workers/Scheduler.php +++ b/lib/Cron/Workers/Scheduler.php @@ -104,7 +104,7 @@ class Scheduler { return true; } - public function processPostNotificationNewsletter($newsletter, $queue) { + public function processPostNotificationNewsletter($newsletter, SendingTask $queue) { $this->loggerFactory->getLogger(LoggerFactory::TOPIC_POST_NOTIFICATIONS)->addInfo( 'process post notification in scheduler', ['newsletter_id' => $newsletter->id, 'task_id' => $queue->taskId] @@ -137,6 +137,7 @@ class Scheduler { // queue newsletter for delivery $queue->newsletterId = $notificationHistory->id; + $queue->updateCount(); $queue->status = null; $queue->save(); // update notification status diff --git a/tests/integration/Cron/Workers/SchedulerTest.php b/tests/integration/Cron/Workers/SchedulerTest.php index 0866602a19..1db6d7d06b 100644 --- a/tests/integration/Cron/Workers/SchedulerTest.php +++ b/tests/integration/Cron/Workers/SchedulerTest.php @@ -522,6 +522,8 @@ class SchedulerTest extends \MailPoetTest { $updatedQueueSubscribers = $updatedQueue->getSubscribers(ScheduledTaskSubscriber::STATUS_UNPROCESSED); expect($updatedQueueSubscribers)->equals([$subscriber->id]); expect($updatedQueue->newsletterId)->equals($notificationHistory->id); + expect($updatedQueue->countProcessed)->equals(0); + expect($updatedQueue->countToProcess)->equals(1); // set notification history's status to sending $updatedNotificationHistory = Newsletter::where('parent_id', $newsletter->id) ->findOne();