Ejemplo n.º 1
0
 public function testDbBackup()
 {
     $this->setupDbBackupRollback();
     $this->database->expects($this->once())->method('create');
     $this->file->expects($this->once())->method('isExists')->willReturn(false);
     $this->file->expects($this->once())->method('createDirectory');
     $this->model->dbBackup(time());
 }
 /**
  * Takes backup for code, media or DB
  *
  * @return JsonModel
  */
 public function createAction()
 {
     $params = Json::decode($this->getRequest()->getContent(), Json::TYPE_ARRAY);
     try {
         $time = time();
         $backupFiles = [];
         if (isset($params['options']['code']) && $params['options']['code']) {
             $backupFiles[] = $this->backupHandler->codeBackup($time);
         }
         if (isset($params['options']['media']) && $params['options']['media']) {
             $backupFiles[] = $this->backupHandler->codeBackup($time, Factory::TYPE_MEDIA);
         }
         if (isset($params['options']['db']) && $params['options']['db']) {
             $backupFiles[] = $this->backupHandler->dbBackup($time);
         }
         return new JsonModel(['responseType' => ResponseTypeInterface::RESPONSE_TYPE_SUCCESS, 'files' => $backupFiles]);
     } catch (\Exception $e) {
         return new JsonModel(['responseType' => ResponseTypeInterface::RESPONSE_TYPE_ERROR, 'error' => $e->getMessage()]);
     }
 }