normalizePath($this->packagePath)); $fileData = 'data:application/zip;base64,' . base64_encode($fileData); $upgradeManager = new UpgradeManager($this->getContainer()); $upgradeId = $upgradeManager->upload($fileData); $this->assertStringMatchesFormat('%x', $upgradeId); $this->assertFileExists('data/upload/upgrades/' . $upgradeId . 'z'); $this->assertFileExists('data/upload/upgrades/' . $upgradeId); //$this->assertDirectoryExists('data/upload/upgrades/' . $upgradeId); return $upgradeId; } public function testInstall() { $upgradeId = $this->testUpload(); $upgradeManager = new UpgradeManager($this->getContainer()); $upgradeManager->install(['id' => $upgradeId]); $this->assertFileDoesNotExist('data/upload/upgrades/' . $upgradeId . 'z'); $this->assertFileDoesNotExist('data/upload/upgrades/' . $upgradeId); $this->assertFileExists('data/.backup/upgrades/' . $upgradeId); $this->assertFileExists('custom/Espo/Custom/test.php'); $this->assertFileDoesNotExist('vendor/zendframework'); $this->assertFileDoesNotExist('extension.php'); $this->assertFileDoesNotExist('upgrade.php'); return $upgradeId; } public function testUninstall() { $this->expectException('Espo\\Core\\Exceptions\\Error'); $upgradeId = $this->testInstall(); $upgradeManager = new UpgradeManager($this->getContainer()); $upgradeManager->uninstall(array('id' => $upgradeId)); } public function testDelete() { $this->expectException('Espo\\Core\\Exceptions\\Error'); $upgradeId = $this->testInstall(); $upgradeManager = new UpgradeManager($this->getContainer()); $upgradeManager->delete(['id' => $upgradeId]); } }