mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-14 00:39:57 +09:00
Add formatting libraries to composer.json
This commit is contained in:
parent
59ee4a7387
commit
2b008f7be6
202 changed files with 28022 additions and 133 deletions
89
vendor/leafo/lessphp/tests/InputTest.php
vendored
Normal file
89
vendor/leafo/lessphp/tests/InputTest.php
vendored
Normal file
|
|
@ -0,0 +1,89 @@
|
|||
<?php
|
||||
|
||||
require_once __DIR__ . "/../lessc.inc.php";
|
||||
|
||||
// Runs all the tests in inputs/ and compares their output to ouputs/
|
||||
|
||||
function _dump($value) {
|
||||
fwrite(STDOUT, print_r($value, true));
|
||||
}
|
||||
|
||||
function _quote($str) {
|
||||
return preg_quote($str, "/");
|
||||
}
|
||||
|
||||
class InputTest extends PHPUnit_Framework_TestCase {
|
||||
protected static $importDirs = array("inputs/test-imports");
|
||||
|
||||
protected static $testDirs = array(
|
||||
"inputs" => "outputs",
|
||||
"inputs_lessjs" => "outputs_lessjs",
|
||||
);
|
||||
|
||||
public function setUp() {
|
||||
$this->less = new lessc();
|
||||
$this->less->importDir = array_map(function($path) {
|
||||
return __DIR__ . "/" . $path;
|
||||
}, self::$importDirs);
|
||||
}
|
||||
|
||||
/**
|
||||
* @dataProvider fileNameProvider
|
||||
*/
|
||||
public function testInputFile($inFname) {
|
||||
if ($pattern = getenv("BUILD")) {
|
||||
return $this->buildInput($inFname);
|
||||
}
|
||||
|
||||
$outFname = self::outputNameFor($inFname);
|
||||
|
||||
if (!is_readable($outFname)) {
|
||||
$this->fail("$outFname is missing, ".
|
||||
"consider building tests with BUILD=true");
|
||||
}
|
||||
|
||||
$input = file_get_contents($inFname);
|
||||
$output = file_get_contents($outFname);
|
||||
|
||||
$this->assertEquals($output, $this->less->parse($input));
|
||||
}
|
||||
|
||||
public function fileNameProvider() {
|
||||
return array_map(function($a) { return array($a); },
|
||||
self::findInputNames());
|
||||
}
|
||||
|
||||
// only run when env is set
|
||||
public function buildInput($inFname) {
|
||||
$css = $this->less->parse(file_get_contents($inFname));
|
||||
file_put_contents(self::outputNameFor($inFname), $css);
|
||||
}
|
||||
|
||||
static public function findInputNames($pattern="*.less") {
|
||||
$files = array();
|
||||
foreach (self::$testDirs as $inputDir => $outputDir) {
|
||||
$files = array_merge($files, glob(__DIR__ . "/" . $inputDir . "/" . $pattern));
|
||||
}
|
||||
|
||||
return array_filter($files, "is_file");
|
||||
}
|
||||
|
||||
static public function outputNameFor($input) {
|
||||
$front = _quote(__DIR__ . "/");
|
||||
$out = preg_replace("/^$front/", "", $input);
|
||||
|
||||
foreach (self::$testDirs as $inputDir => $outputDir) {
|
||||
$in = _quote($inputDir . "/");
|
||||
$rewritten = preg_replace("/$in/", $outputDir . "/", $out);
|
||||
if ($rewritten != $out) {
|
||||
$out = $rewritten;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
$out = preg_replace("/.less$/", ".css", $out);
|
||||
|
||||
return __DIR__ . "/" . $out;
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue