Add test for sending resume on key check

[MAILPOET-3006]
This commit is contained in:
Jan Jakeš
2020-07-01 17:04:53 +02:00
committed by Veljko V
parent 9049b3c399
commit 9d12e12d79

View File

@ -7,6 +7,7 @@ use Codeception\Stub\Expected;
use MailPoet\Config\ServicesChecker;
use MailPoet\Cron\Workers\KeyCheck\SendingServiceKeyCheck;
use MailPoet\Mailer\Mailer;
use MailPoet\Mailer\MailerLog;
use MailPoet\Services\Bridge;
use MailPoet\Settings\SettingsController;
use MailPoet\Settings\SettingsRepository;
@ -51,6 +52,31 @@ class SendingServiceKeyCheckTest extends \MailPoetTest {
expect($nextRunDate)->lessThan(Carbon::now()->addMinutes(65));
}
public function testItResumesSendingWhenKeyApproved() {
MailerLog::pauseSending(MailerLog::getMailerLog());
expect(MailerLog::isSendingPaused())->true();
$servicesChecker = $this->make(ServicesChecker::class, [
'isMailPoetAPIKeyPendingApproval' => Stub::consecutive(true, false),
]);
$worker = new SendingServiceKeyCheck(
$this->diContainer->get(SettingsController::class),
$servicesChecker
);
$bridge = $this->make(new Bridge, [
'checkMSSKey' => ['code' => Bridge::KEY_VALID],
'storeMSSKeyAndState' => null,
'updateSubscriberCount' => Expected::once(),
]);
$worker->bridge = $bridge;
$this->setMailPoetSendingMethod();
$worker->checkKey();
expect(MailerLog::isSendingPaused())->false();
}
public function testItChecksMSSKey() {
$response = ['code' => Bridge::KEY_VALID];
/** @var MockObject $bridge */