Refactor MailPoet\Cron to use new settings
[MAILPOET-1757]
This commit is contained in:
@ -5,26 +5,31 @@ use MailPoet\API\JSON\Endpoints\Cron;
|
||||
use MailPoet\Cron\CronHelper;
|
||||
use MailPoet\Cron\Triggers\MailPoet;
|
||||
use MailPoet\Models\Setting;
|
||||
use MailPoet\Settings\SettingsController;
|
||||
|
||||
class MailPoetTest extends \MailPoetTest {
|
||||
/** @var SettingsController */
|
||||
private $settings;
|
||||
|
||||
function _before() {
|
||||
parent::_before();
|
||||
// cron trigger is by default set to 'WordPress'; when it runs and does not
|
||||
// detect any queues to process, it deletes the daemon setting, so Supervisor that's
|
||||
// called by the MailPoet cron trigger does not work. for that matter, we need to set
|
||||
// the trigger setting to anything but 'WordPress'.
|
||||
Setting::setValue('cron_trigger', array(
|
||||
$this->settings = new SettingsController();
|
||||
$this->settings->set('cron_trigger', array(
|
||||
'method' => 'none'
|
||||
));
|
||||
}
|
||||
|
||||
function testItCanRun() {
|
||||
expect(Setting::getValue(CronHelper::DAEMON_SETTING))->null();
|
||||
expect($this->settings->get(CronHelper::DAEMON_SETTING))->null();
|
||||
MailPoet::run();
|
||||
expect(Setting::getValue(CronHelper::DAEMON_SETTING))->notEmpty();
|
||||
expect($this->settings->get(CronHelper::DAEMON_SETTING))->notEmpty();
|
||||
}
|
||||
|
||||
function _after() {
|
||||
\ORM::raw_execute('TRUNCATE ' . Setting::$_table);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user