Files
piratepoet/tests/unit/Config/PopulatorTest.php
Vlad 394118f113 Adds sent_at column to the newsletters table
Modifies populator to update existing newsletters' sent_at field
2017-07-07 11:05:33 -04:00

33 lines
1.0 KiB
PHP

<?php
use MailPoet\Config\Populator;
use MailPoet\Models\Newsletter;
use MailPoet\Models\SendingQueue;
class PopulatorTest extends MailPoetTest {
function testItPopulatesNewslettersTableSentAtColumn() {
// TODO: remove in final release
$newsletters = array();
for($i = 1; $i <= 3; $i++) {
$newsletters[$i] = Newsletter::create();
$newsletters[$i]->type = Newsletter::TYPE_STANDARD;
$newsletters[$i]->save();
}
expect(Newsletter::whereNull('sent_at')->findMany())->count(3);
$sending_queue = SendingQueue::create();
$sending_queue->newsletter_id = $newsletters[1]->id;
$sending_queue->processed_at = date( 'Y-m-d H:i:s');
$sending_queue->save();
$populator = new Populator();
$populator->populateNewsletterSentAtField();
expect(Newsletter::whereNull('sent_at')->findMany())->count(2);
expect(Newsletter::whereNotNull('sent_at')->findMany())->count(1);
}
function _after() {
ORM::raw_execute('TRUNCATE ' . Newsletter::$_table);
ORM::raw_execute('TRUNCATE ' . SendingQueue::$_table);
}
}