예제 #1
0
 public function providerTestJs()
 {
     $this->setUp();
     $data = array();
     $sourceDir = Miao_PHPUnit::getSourceFolder(__METHOD__);
     $filenameList = array($sourceDir . '/1.js');
     $data[] = array($filenameList, true, array(Miaox_Compress::makeFilename($this->_dstDir, $filenameList)));
     $data[] = array($filenameList, false, $filenameList, false);
     $data[] = array($filenameList, false, $filenameList, true);
     // test rel path
     $filenameList = array($sourceDir . '/1.js', '../testJs/2.js');
     $data[] = array($filenameList, true, array(Miaox_Compress::makeFilename($this->_dstDir, $filenameList)));
     $filenameList = array($sourceDir . '/ksajhdfkj.js');
     $data[] = array($filenameList, true, array(Miaox_Compress::makeFilename($this->_dstDir, $filenameList)), true, 'Miaox_Compress_Exception');
     return $data;
 }
예제 #2
0
 /**
  *
  * @dataProvider providerTestMakeFilename
  */
 public function testMakeFilename($dstFolder, $filenameList, $type, $exceptionName = '')
 {
     $actual = $dstFolder . '/' . md5(implode(':', $filenameList)) . '.js';
     $expected = Miaox_Compress::makeFilename($dstFolder, $filenameList);
     $this->assertEquals($expected, $actual);
 }
예제 #3
0
 protected function _getFilenameList(array $filenameList, $compress, $type)
 {
     $mList = $this->_map[$type];
     $pathMethod = $mList['path'];
     $minifyMethod = $mList['minify'];
     $preparedFilenameList = $this->prepareFileList($filenameList, $pathMethod);
     if (!$this->getEnabled()) {
         $result = $preparedFilenameList;
     } else {
         $dstFolder = $this->getDstFolder();
         $dstFilename = Miaox_Compress::makeFilename($dstFolder, $filenameList, $pathMethod);
         if ($compress) {
             $result = $this->{$minifyMethod}($preparedFilenameList, $dstFilename);
         } else {
             if (file_exists($dstFilename)) {
                 $result = array($dstFilename);
             } else {
                 $result = $preparedFilenameList;
             }
         }
     }
     return $result;
 }