Limit legacy segment subscriber count to subscribed subscribers
[MAILPOET-3077]
This commit is contained in:
committed by
Veljko V
parent
b37d1f8c03
commit
cdc090fc15
@ -32,6 +32,7 @@ class SubscribersCount {
|
||||
foreach ($dynamicSegment->getFilters() as $filter) {
|
||||
$orm = $filter->toSql($orm);
|
||||
}
|
||||
$orm->where(MP_SUBSCRIBERS_TABLE . '.status', Subscriber::STATUS_SUBSCRIBED);
|
||||
return $orm->findOne()->cnt;
|
||||
}
|
||||
}
|
||||
|
@ -7,6 +7,7 @@ require_once(ABSPATH . 'wp-admin/includes/user.php');
|
||||
use MailPoet\DynamicSegments\Filters\UserRole;
|
||||
use MailPoet\DynamicSegments\RequirementsChecker;
|
||||
use MailPoet\Models\DynamicSegment;
|
||||
use MailPoet\Models\Subscriber;
|
||||
use PHPUnit\Framework\MockObject\MockObject;
|
||||
|
||||
class SubscribersCountTest extends \MailPoetTest {
|
||||
@ -43,6 +44,12 @@ class SubscribersCountTest extends \MailPoetTest {
|
||||
public function testItConstructsQuery() {
|
||||
$this->requirementChecker->method('shouldSkipSegment')->willReturn(false);
|
||||
$userRole = DynamicSegment::create();
|
||||
$subscriber1 = Subscriber::findOne('user-role-test1@example.com');
|
||||
$subscriber1->status = Subscriber::STATUS_SUBSCRIBED;
|
||||
$subscriber1->save();
|
||||
$subscriber3 = Subscriber::findOne('user-role-test3@example.com');
|
||||
$subscriber3->status = Subscriber::STATUS_SUBSCRIBED;
|
||||
$subscriber3->save();
|
||||
$userRole->hydrate([
|
||||
'name' => 'segment',
|
||||
'description' => 'description',
|
||||
|
Reference in New Issue
Block a user