Rewrite newsletter statistics query, remove redundant queue data from the server response [MAILPOET-746]
This commit is contained in:
@ -8,6 +8,8 @@ use MailPoet\Models\NewsletterSegment;
|
||||
use MailPoet\Models\NewsletterOptionField;
|
||||
use MailPoet\Models\NewsletterOption;
|
||||
use MailPoet\Models\StatisticsOpens;
|
||||
use MailPoet\Models\StatisticsClicks;
|
||||
use MailPoet\Models\StatisticsUnsubscribes;
|
||||
|
||||
class NewsletterTest extends MailPoetTest {
|
||||
function _before() {
|
||||
@ -135,11 +137,25 @@ class NewsletterTest extends MailPoetTest {
|
||||
$opens->queue_id = $sending_queue->id;
|
||||
$opens->save();
|
||||
|
||||
$opens = StatisticsClicks::create();
|
||||
$opens->subscriber_id = $subscriber->id;
|
||||
$opens->newsletter_id = $this->newsletter->id;
|
||||
$opens->queue_id = $sending_queue->id;
|
||||
$opens->link_id = 0;
|
||||
$opens->count = 0;
|
||||
$opens->save();
|
||||
|
||||
$opens = StatisticsUnsubscribes::create();
|
||||
$opens->subscriber_id = $subscriber->id;
|
||||
$opens->newsletter_id = $this->newsletter->id;
|
||||
$opens->queue_id = $sending_queue->id;
|
||||
$opens->save();
|
||||
|
||||
$newsletter->queue = $newsletter->getQueue()->asArray();
|
||||
$statistics = $newsletter->getStatistics( $sending_queue->id);
|
||||
expect($statistics->opened)->equals(1);
|
||||
expect($statistics->clicked)->equals(0);
|
||||
expect($statistics->unsubscribed)->equals(0);
|
||||
expect($statistics['opened'])->equals(1);
|
||||
expect($statistics['clicked'])->equals(1);
|
||||
expect($statistics['unsubscribed'])->equals(1);
|
||||
}
|
||||
|
||||
function testItCanCreateOrUpdate() {
|
||||
@ -376,5 +392,7 @@ class NewsletterTest extends MailPoetTest {
|
||||
ORM::raw_execute('TRUNCATE ' . NewsletterSegment::$_table);
|
||||
ORM::raw_execute('TRUNCATE ' . SendingQueue::$_table);
|
||||
ORM::raw_execute('TRUNCATE ' . StatisticsOpens::$_table);
|
||||
ORM::raw_execute('TRUNCATE ' . StatisticsClicks::$_table);
|
||||
ORM::raw_execute('TRUNCATE ' . StatisticsUnsubscribes::$_table);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user