Rename unprocessed status, refactor counting a bit more clearly [MAILPOET-987]
This commit is contained in:
@ -39,7 +39,7 @@ class Bounce extends SimpleWorker {
|
||||
function prepareTask(ScheduledTask $task) {
|
||||
BounceTask::prepareSubscribers($task);
|
||||
|
||||
if(!ScheduledTaskSubscriber::getToProcessCount($task->id)) {
|
||||
if(!ScheduledTaskSubscriber::getUnprocessedCount($task->id)) {
|
||||
$task->delete();
|
||||
return false;
|
||||
}
|
||||
|
@ -4,7 +4,7 @@ namespace MailPoet\Models;
|
||||
if(!defined('ABSPATH')) exit;
|
||||
|
||||
class ScheduledTaskSubscriber extends Model {
|
||||
const STATUS_TO_PROCESS = 0;
|
||||
const STATUS_UNPROCESSED = 0;
|
||||
const STATUS_PROCESSED = 1;
|
||||
|
||||
public static $_table = MP_SCHEDULED_TASK_SUBSCRIBERS_TABLE;
|
||||
@ -21,7 +21,7 @@ class ScheduledTaskSubscriber extends Model {
|
||||
|
||||
$task_subscriber->task_id = $data['task_id'];
|
||||
$task_subscriber->subscriber_id = $data['subscriber_id'];
|
||||
$task_subscriber->processed = !empty($data['processed']) ? self::STATUS_PROCESSED : self::STATUS_TO_PROCESS;
|
||||
$task_subscriber->processed = !empty($data['processed']) ? self::STATUS_PROCESSED : self::STATUS_UNPROCESSED;
|
||||
$task_subscriber->save();
|
||||
|
||||
return $task_subscriber;
|
||||
@ -36,12 +36,12 @@ class ScheduledTaskSubscriber extends Model {
|
||||
}
|
||||
}
|
||||
|
||||
static function getToProcessCount($task_id) {
|
||||
return self::getCount($task_id, false);
|
||||
static function getUnprocessedCount($task_id) {
|
||||
return self::getCount($task_id, self::STATUS_UNPROCESSED);
|
||||
}
|
||||
|
||||
static function getProcessedCount($task_id) {
|
||||
return self::getCount($task_id, true);
|
||||
return self::getCount($task_id, self::STATUS_PROCESSED);
|
||||
}
|
||||
|
||||
static function getTotalCount($task_id) {
|
||||
@ -51,10 +51,7 @@ class ScheduledTaskSubscriber extends Model {
|
||||
private static function getCount($task_id, $processed = null) {
|
||||
$orm = self::where('task_id', $task_id);
|
||||
if(!is_null($processed)) {
|
||||
$orm->where(
|
||||
'processed',
|
||||
($processed) ? self::STATUS_PROCESSED : self::STATUS_TO_PROCESS
|
||||
);
|
||||
$orm->where('processed', $processed);
|
||||
}
|
||||
return $orm->count();
|
||||
}
|
||||
|
@ -19,7 +19,7 @@ class Bounce {
|
||||
AND s.`status` IN (?, ?)',
|
||||
array(
|
||||
$task->id,
|
||||
ScheduledTaskSubscriber::STATUS_TO_PROCESS,
|
||||
ScheduledTaskSubscriber::STATUS_UNPROCESSED,
|
||||
Subscriber::STATUS_SUBSCRIBED,
|
||||
Subscriber::STATUS_UNCONFIRMED
|
||||
)
|
||||
|
@ -41,7 +41,7 @@ class Subscribers {
|
||||
}
|
||||
|
||||
private function checkCompleted() {
|
||||
if(!ScheduledTaskSubscriber::getToProcessCount($this->task->id)) {
|
||||
if(!ScheduledTaskSubscriber::getUnprocessedCount($this->task->id)) {
|
||||
$this->task->processed_at = current_time('mysql');
|
||||
return $this->task->complete();
|
||||
}
|
||||
|
@ -54,6 +54,6 @@ class BatchIterator implements \Iterator, \Countable {
|
||||
private function getSubscribers() {
|
||||
return ScheduledTaskSubscriber::select('subscriber_id')
|
||||
->where('task_id', $this->task_id)
|
||||
->where('processed', ScheduledTaskSubscriber::STATUS_TO_PROCESS);
|
||||
->where('processed', ScheduledTaskSubscriber::STATUS_UNPROCESSED);
|
||||
}
|
||||
}
|
||||
|
@ -59,10 +59,10 @@ class BounceTest extends MailPoetTest {
|
||||
|
||||
function testItPreparesTask() {
|
||||
$task = $this->createScheduledTask();
|
||||
expect(ScheduledTaskSubscriber::getToProcessCount($task->id))->isEmpty();
|
||||
expect(ScheduledTaskSubscriber::getUnprocessedCount($task->id))->isEmpty();
|
||||
$this->worker->prepareTask($task);
|
||||
expect($task->status)->null();
|
||||
expect(ScheduledTaskSubscriber::getToProcessCount($task->id))->notEmpty();
|
||||
expect(ScheduledTaskSubscriber::getUnprocessedCount($task->id))->notEmpty();
|
||||
}
|
||||
|
||||
function testItDeletesTaskIfThereAreNoSubscribersToProcessWhenProcessingTask() {
|
||||
@ -77,7 +77,7 @@ class BounceTest extends MailPoetTest {
|
||||
function testItProcessesTask() {
|
||||
$task = $this->createRunningTask();
|
||||
$this->worker->prepareTask($task);
|
||||
expect(ScheduledTaskSubscriber::getToProcessCount($task->id))->notEmpty();
|
||||
expect(ScheduledTaskSubscriber::getUnprocessedCount($task->id))->notEmpty();
|
||||
$this->worker->processTask($task);
|
||||
expect(ScheduledTaskSubscriber::getProcessedCount($task->id))->notEmpty();
|
||||
}
|
||||
|
@ -16,7 +16,7 @@ class ScheduledTaskSubscriberTest extends \MailPoetTest {
|
||||
function testItCanBeCreated() {
|
||||
expect($this->task_subscriber->task_id)->equals($this->task_id);
|
||||
expect($this->task_subscriber->subscriber_id)->equals($this->subscriber_id);
|
||||
expect($this->task_subscriber->processed)->equals(ScheduledTaskSubscriber::STATUS_TO_PROCESS);
|
||||
expect($this->task_subscriber->processed)->equals(ScheduledTaskSubscriber::STATUS_UNPROCESSED);
|
||||
}
|
||||
|
||||
function testItCanBeUpdated() {
|
||||
@ -41,12 +41,12 @@ class ScheduledTaskSubscriberTest extends \MailPoetTest {
|
||||
expect($task_subscribers[2]->subscriber_id)->equals($subscriber_ids[2]);
|
||||
}
|
||||
|
||||
function testItCanGetToProcessCount() {
|
||||
$count = ScheduledTaskSubscriber::getToProcessCount($this->task_id);
|
||||
function testItCangetUnprocessedCount() {
|
||||
$count = ScheduledTaskSubscriber::getUnprocessedCount($this->task_id);
|
||||
expect($count)->equals(1);
|
||||
$this->task_subscriber->processed = ScheduledTaskSubscriber::STATUS_PROCESSED;
|
||||
$this->task_subscriber->save();
|
||||
$count = ScheduledTaskSubscriber::getToProcessCount($this->task_id);
|
||||
$count = ScheduledTaskSubscriber::getUnprocessedCount($this->task_id);
|
||||
expect($count)->equals(0);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user