From c5b8b2aef0a866deb952d7ca3c524fc9d6bffadd Mon Sep 17 00:00:00 2001 From: Vlad Date: Fri, 9 Sep 2016 11:09:45 -0400 Subject: [PATCH] - Fixes "class not found" error in Daemon - Moves ignore_user_abort() to the run() method - Updates unit tests --- lib/Cron/Daemon.php | 3 ++- tests/unit/Cron/DaemonTest.php | 4 +++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/lib/Cron/Daemon.php b/lib/Cron/Daemon.php index 65bd688aa9..bfedaa6bbe 100644 --- a/lib/Cron/Daemon.php +++ b/lib/Cron/Daemon.php @@ -2,6 +2,7 @@ namespace MailPoet\Cron; use MailPoet\Cron\Workers\Scheduler as SchedulerWorker; +use MailPoet\Cron\Workers\SendingQueue\SendingQueue as SendingQueueWorker; require_once(ABSPATH . 'wp-includes/pluggable.php'); @@ -14,7 +15,6 @@ class Daemon { const REQUEST_TIMEOUT = 5; function __construct($request_data = false) { - ignore_user_abort(true); $this->request_data = $request_data; $this->daemon = CronHelper::getDaemon(); $this->token = CronHelper::createToken(); @@ -22,6 +22,7 @@ class Daemon { } function run() { + ignore_user_abort(true); if(!$this->request_data) { $error = __('Invalid or missing request data.'); } else { diff --git a/tests/unit/Cron/DaemonTest.php b/tests/unit/Cron/DaemonTest.php index d1e6838542..62e998e309 100644 --- a/tests/unit/Cron/DaemonTest.php +++ b/tests/unit/Cron/DaemonTest.php @@ -19,7 +19,6 @@ class DaemonTest extends MailPoetTest { $daemon = new Daemon($request_data = 'request data'); expect($daemon->daemon)->equals('daemon object'); expect($daemon->request_data)->equals('request data'); - expect(ignore_user_abort())->equals(1); expect(strlen($daemon->timer))->greaterOrEquals(5); expect(strlen($daemon->token))->greaterOrEquals(5); } @@ -177,6 +176,8 @@ class DaemonTest extends MailPoetTest { } function testItCanRun() { + ignore_user_abort(0); + expect(ignore_user_abort())->equals(0); $daemon = Stub::make(new Daemon(true), array( 'pauseExecution' => function() { }, // workers should be executed @@ -191,6 +192,7 @@ class DaemonTest extends MailPoetTest { Setting::setValue(CronHelper::DAEMON_SETTING, $data); $daemon->__construct($data); $daemon->run(); + expect(ignore_user_abort())->equals(1); } function _after() {