Clean settings cache when reinstalling the plugin
This commit is contained in:
@@ -5,6 +5,7 @@ namespace MailPoet\API\JSON\v1;
|
|||||||
use MailPoet\API\JSON\Endpoint as APIEndpoint;
|
use MailPoet\API\JSON\Endpoint as APIEndpoint;
|
||||||
use MailPoet\Config\AccessControl;
|
use MailPoet\Config\AccessControl;
|
||||||
use MailPoet\Config\Activator;
|
use MailPoet\Config\Activator;
|
||||||
|
use MailPoet\Settings\SettingsController;
|
||||||
use MailPoet\WP\Functions as WPFunctions;
|
use MailPoet\WP\Functions as WPFunctions;
|
||||||
|
|
||||||
class Setup extends APIEndpoint {
|
class Setup extends APIEndpoint {
|
||||||
@@ -18,17 +19,23 @@ class Setup extends APIEndpoint {
|
|||||||
/** @var Activator */
|
/** @var Activator */
|
||||||
private $activator;
|
private $activator;
|
||||||
|
|
||||||
|
/** @var SettingsController */
|
||||||
|
private $settings;
|
||||||
|
|
||||||
public function __construct(
|
public function __construct(
|
||||||
WPFunctions $wp,
|
WPFunctions $wp,
|
||||||
Activator $activator
|
Activator $activator,
|
||||||
|
SettingsController $settings
|
||||||
) {
|
) {
|
||||||
$this->wp = $wp;
|
$this->wp = $wp;
|
||||||
$this->activator = $activator;
|
$this->activator = $activator;
|
||||||
|
$this->settings = $settings;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function reset() {
|
public function reset() {
|
||||||
try {
|
try {
|
||||||
$this->activator->deactivate();
|
$this->activator->deactivate();
|
||||||
|
$this->settings->resetCache();
|
||||||
$this->activator->activate();
|
$this->activator->activate();
|
||||||
$this->wp->doAction('mailpoet_setup_reset');
|
$this->wp->doAction('mailpoet_setup_reset');
|
||||||
return $this->successResponse();
|
return $this->successResponse();
|
||||||
|
@@ -34,7 +34,7 @@ class SetupTest extends \MailPoetTest {
|
|||||||
$captchaRenderer = $this->diContainer->get(CaptchaRenderer::class);
|
$captchaRenderer = $this->diContainer->get(CaptchaRenderer::class);
|
||||||
$migrator = $this->diContainer->get(Migrator::class);
|
$migrator = $this->diContainer->get(Migrator::class);
|
||||||
$cronActionScheduler = $this->diContainer->get(ActionScheduler::class);
|
$cronActionScheduler = $this->diContainer->get(ActionScheduler::class);
|
||||||
$router = new Setup($wpStub, new Activator($this->connection, $settings, $populator, $wpStub, $migrator, $cronActionScheduler));
|
$router = new Setup($wpStub, new Activator($this->connection, $settings, $populator, $wpStub, $migrator, $cronActionScheduler), $settings);
|
||||||
$response = $router->reset();
|
$response = $router->reset();
|
||||||
verify($response->status)->equals(APIResponse::STATUS_OK);
|
verify($response->status)->equals(APIResponse::STATUS_OK);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user