diff --git a/lib/Cron/Workers/AuthorizedSendingEmailsCheck.php b/lib/Cron/Workers/AuthorizedSendingEmailsCheck.php new file mode 100644 index 0000000000..b3cc0eddf9 --- /dev/null +++ b/lib/Cron/Workers/AuthorizedSendingEmailsCheck.php @@ -0,0 +1,31 @@ +bridge = $bridge; + parent::__construct($timer); + } + + function checkProcessingRequirements() { + return Bridge::isMPSendingServiceEnabled(); + } + + function processTaskStrategy(ScheduledTask $task) { + $this->bridge->checkAuthorizedEmailAddresses(); + return true; + } +} diff --git a/tests/integration/Cron/Workers/AuthorizedSendingEmailsCheckTest.php b/tests/integration/Cron/Workers/AuthorizedSendingEmailsCheckTest.php new file mode 100644 index 0000000000..22121a330a --- /dev/null +++ b/tests/integration/Cron/Workers/AuthorizedSendingEmailsCheckTest.php @@ -0,0 +1,26 @@ +settings = new SettingsController(); + \ORM::raw_execute('TRUNCATE ' . ScheduledTask::$_table); + } + + function testItRunsCheckOnBridge() { + $bridge_mock = $this->makeEmpty(Bridge::class, ['checkAuthorizedEmailAddresses' => Stub\Expected::once()]); + $worker = new AuthorizedSendingEmailsCheck($bridge_mock); + $worker->processTaskStrategy(ScheduledTask::createOrUpdate([])); + } +}