| 1 |
<?php |
| 2 |
|
| 3 |
namespace Minify\Test; |
| 4 |
|
| 5 |
use Minify_HTML_Helper; |
| 6 |
use Minify_Source; |
| 7 |
|
| 8 |
class MinifyHTMLHelperTest extends TestCase |
| 9 |
{ |
| 10 |
private $realDocRoot; |
| 11 |
|
| 12 |
public function setUp() |
| 13 |
{ |
| 14 |
$this->realDocRoot = $_SERVER['DOCUMENT_ROOT']; |
| 15 |
$_SERVER['DOCUMENT_ROOT'] = self::$document_root; |
| 16 |
} |
| 17 |
|
| 18 |
// TODO: this is probably not needed if backupGlobals is enabled? |
| 19 |
public function tearDown() |
| 20 |
{ |
| 21 |
$_SERVER['DOCUMENT_ROOT'] = $this->realDocRoot; |
| 22 |
} |
| 23 |
|
| 24 |
public function test1() |
| 25 |
{ |
| 26 |
$file1 = self::$test_files . '/css/paths_prepend.css'; |
| 27 |
$file2 = self::$test_files . '/css/styles.css'; |
| 28 |
$maxTime = max(filemtime($file1), filemtime($file2)); |
| 29 |
|
| 30 |
$uri1 = '//_test_files/css/paths_prepend.css'; |
| 31 |
$uri2 = '//_test_files/css/styles.css'; |
| 32 |
|
| 33 |
$expected = "/min/b=_test_files/css&f=paths_prepend.css,styles.css&{$maxTime}"; |
| 34 |
$actual = Minify_HTML_Helper::getUri(array($uri1, $uri2)); |
| 35 |
$this->assertEquals($expected, $actual, 'given URIs'); |
| 36 |
|
| 37 |
$expected = "/min/b=_test_files/css&f=paths_prepend.css,styles.css&{$maxTime}"; |
| 38 |
$actual = Minify_HTML_Helper::getUri(array($file1, $file2)); |
| 39 |
$this->assertEquals($expected, $actual, 'given filepaths'); |
| 40 |
|
| 41 |
$expected = "/min/g=notRealGroup&debug"; |
| 42 |
$actual = Minify_HTML_Helper::getUri('notRealGroup', array('debug' => true)); |
| 43 |
$this->assertEquals($expected, $actual, 'non-existent group & debug'); |
| 44 |
|
| 45 |
$expected = "/myApp/min/?g=css&{$maxTime}"; |
| 46 |
$actual = Minify_HTML_Helper::getUri('css', array( |
| 47 |
'rewriteWorks' => false |
| 48 |
, |
| 49 |
'minAppUri' => '/myApp/min/' |
| 50 |
, |
| 51 |
'groupsConfigFile' => self::$test_files . '/htmlHelper_groupsConfig.php' |
| 52 |
)); |
| 53 |
$this->assertEquals($expected, $actual, 'existing group'); |
| 54 |
|
| 55 |
|
| 56 |
$utilsFile = dirname(__DIR__) . '/min/utils.php'; |
| 57 |
if (is_file($utilsFile)) { |
| 58 |
require_once $utilsFile; |
| 59 |
|
| 60 |
$fiveSecondsAgo = $_SERVER['REQUEST_TIME'] - 5; |
| 61 |
$obj = new Minify_Source(array( |
| 62 |
'id' => '1', |
| 63 |
'content' => '1', |
| 64 |
'lastModified' => $fiveSecondsAgo, |
| 65 |
)); |
| 66 |
|
| 67 |
$output = Minify_mtime(array($uri1, $uri2, $obj)); |
| 68 |
$this->assertEquals($fiveSecondsAgo, $output, 'utils.php : Minify_mtime w/ files & obj'); |
| 69 |
|
| 70 |
$obj = new Minify_Source(array( |
| 71 |
'id' => '2', |
| 72 |
'content' => '2', |
| 73 |
'lastModified' => strtotime('2000-01-01'), |
| 74 |
)); |
| 75 |
$output = Minify_mtime(array( |
| 76 |
$obj |
| 77 |
, |
| 78 |
'css' |
| 79 |
), self::$test_files . '/htmlHelper_groupsConfig.php'); |
| 80 |
$this->assertEquals($maxTime, $output, 'utils.php : Minify_mtime w/ obj & group'); |
| 81 |
} |
| 82 |
} |
| 83 |
} |
| 84 |
|