public function testClearCodeGeneratedClasses()
 {
     $dir1 = $this->getDirectoryCleanMock();
     $dir2 = $this->getDirectoryCleanMock();
     $this->filesystem->expects($this->exactly(2))->method('getDirectoryWrite')->will($this->returnValueMap([[DirectoryList::GENERATION, DriverPool::FILE, $dir1], [DirectoryList::DI, DriverPool::FILE, $dir2]]));
     $this->object->clearCodeGeneratedClasses();
 }
示例#2
0
 public function testClearCodeGeneratedClasses()
 {
     $dir = $this->getDirectoryCleanMock();
     $this->filesystem->expects($this->once())->method('getDirectoryWrite')->with(DirectoryList::GENERATION)->willReturn($dir);
     $this->object->clearCodeGeneratedClasses();
 }
示例#3
0
 /**
  * Clear var/generation and reset object manager
  *
  * @return void
  */
 private function cleanupGeneratedCode()
 {
     $this->log->log('File system cleanup:');
     $messages = $this->cleanupFiles->clearCodeGeneratedClasses();
     // unload Magento autoloader because it may be using compiled definition
     foreach (spl_autoload_functions() as $autoloader) {
         if ($autoloader[0] instanceof \Magento\Framework\Code\Generator\Autoloader) {
             spl_autoload_unregister([$autoloader[0], $autoloader[1]]);
             break;
         }
     }
     // Corrected Magento autoloader will be loaded upon next get() call on $this->objectManagerProvider
     $this->objectManagerProvider->reset();
     foreach ($messages as $message) {
         $this->log->log($message);
     }
 }
示例#4
0
    /**
     * Updates modules in deployment configuration
     *
     * @return void
     */
    public function updateModulesSequence()
    {
        $this->assertDeploymentConfigExists();

        $this->clearCache();

        $this->log->log('File system cleanup:');
        $messages = $this->cleanupFiles->clearCodeGeneratedClasses();
        foreach ($messages as $message) {
            $this->log->log($message);
        }
        $this->log->log('Updating modules:');
        $this->createModulesConfig([]);
    }