public function testCollate() { $file = $this->createLayoutFile('test/fixture.less', 'Fixture_TestModule'); $expected = array($this->baseFile->getFileIdentifier() => $this->baseFile, $file->getFileIdentifier() => $file); $result = $this->model->collate(array($file), $this->originFiles); $this->assertSame($expected, $result); }
/** * Compare view files according to the priority of modules they belong to. To be used as a callback for sorting. * * @param File $fileOne * @param File $fileTwo * @return int */ public function compareFiles(File $fileOne, File $fileTwo) { if ($fileOne->getModule() == $fileTwo->getModule()) { return strcmp($fileOne->getName(), $fileTwo->getName()); } $moduleOnePriority = $this->getModulePriority($fileOne->getModule()); $moduleTwoPriority = $this->getModulePriority($fileTwo->getModule()); if ($moduleOnePriority == $moduleTwoPriority) { return strcmp($fileOne->getModule(), $fileTwo->getModule()); } return $moduleOnePriority < $moduleTwoPriority ? -1 : 1; }
public function testReplace() { $files = ['1']; $result = ['3']; $this->collator->expects($this->once())->method('collate')->with($this->equalTo($files), $this->equalTo([$this->_baseFile->getFileIdentifier() => $this->_baseFile, $this->_themeFile->getFileIdentifier() => $this->_themeFile]))->will($this->returnValue($result)); $this->assertNull($this->_model->replace($files)); $this->assertSame($result, $this->_model->getAll()); }
public function testGetFileIdentifier() { $this->_theme->expects($this->once())->method('getFullPath')->will($this->returnValue('theme_name')); $this->assertSame('base|theme:theme_name|module:Fixture_TestModule|file:FileTest.php', $this->_model->getFileIdentifier()); }
public function testReplaceThemeFile() { $file = $this->_createViewFile('test/fixture.xml', 'Fixture_TestModule', 'area/theme/path'); $this->assertSame([$this->_baseFile->getFileIdentifier() => $this->_baseFile, $file->getFileIdentifier() => $file], $this->_model->collate([$file], $this->_originFiles)); }