public function testUpdate() { $availableDatabases = ['db_code_1', 'db_code_2', 'db_cod_3']; $countAvailableDatabases = count($availableDatabases); $this->config->expects($this->once())->method('getAvailableDatabases')->willReturn($availableDatabases); $this->updater->expects($this->exactly($countAvailableDatabases))->method('update')->withConsecutive(['db_code_1'], ['db_code_2'], ['db_cod_3']); $this->updaterSelected->update(); }
/** * @return $this */ public function execute() { if (!$this->databaseConfig->isAutoUpdate()) { return $this; } try { $this->updaterSelected->update(); } catch (\Exception $e) { $this->logger->critical($e); } return $this; }
/** * @return \Magento\Framework\Controller\Result\Json */ public function execute() { $response = ['status' => 'success']; try { $this->updaterSelected->update(); $response['message'] = __('Database(s) successfully updated.'); $response['status_info'] = $this->getStatusHtml(); } catch (LocalizedException $e) { $response['status'] = 'error'; $response['message'] = $e->getMessage(); } catch (\Exception $e) { $this->logger->critical($e); $response['status'] = 'error'; $response['message'] = __('An error occurred during DB updating.'); } /** @var Json $resultJson */ $resultJson = $this->resultFactory->create(ResultFactory::TYPE_JSON); $resultJson->setData($response); return $resultJson; }