summaryrefslogtreecommitdiffstats
path: root/admin/survey/minify/vendor/tubalmartin/cssmin/tests/bin/runner
diff options
context:
space:
mode:
Diffstat (limited to 'admin/survey/minify/vendor/tubalmartin/cssmin/tests/bin/runner')
-rw-r--r--admin/survey/minify/vendor/tubalmartin/cssmin/tests/bin/runner77
1 files changed, 77 insertions, 0 deletions
diff --git a/admin/survey/minify/vendor/tubalmartin/cssmin/tests/bin/runner b/admin/survey/minify/vendor/tubalmartin/cssmin/tests/bin/runner
new file mode 100644
index 0000000..0f43f02
--- /dev/null
+++ b/admin/survey/minify/vendor/tubalmartin/cssmin/tests/bin/runner
@@ -0,0 +1,77 @@
+#!/usr/bin/env php
+<?php
+
+require __DIR__ . '/../../vendor/autoload.php';
+
+use tubalmartin\CssMin\Minifier;
+use tubalmartin\CssMin\Tests\FineDiff\Render\Cli as CliRenderer;
+use cogpowered\FineDiff\Diff;
+
+$opts = getopt(
+ 't:f:',
+ array('keep-sourcemap', 'keep-sourcemap-comment', 'remove-important-comments', 'linebreak-position:')
+);
+
+if (empty($opts['t'])) {
+ fwrite(
+ STDERR,
+ 'You need to provide -t argument to run the specified test i.e. "php ./tests/bin/runner -t mui"' . PHP_EOL
+ );
+ die(1);
+}
+
+$expectation = $opts['t'];
+$fixture = $expectation;
+
+if (!empty($opts['f'])) {
+ $fixture = $opts['f'];
+}
+
+$fixtureFile = __DIR__ .'/../fixtures/'. $fixture .'.css';
+$expectationFile = __DIR__ .'/../expectations/'. $expectation .'.css';
+
+if (!is_readable($fixtureFile) || !is_readable($expectationFile)) {
+ fwrite(
+ STDERR,
+ 'Either test fixture or expectation is missing or not readable' . PHP_EOL
+ );
+ die(1);
+}
+
+$minifier = new Minifier;
+
+if (isset($opts['keep-sourcemap']) || isset($opts['keep-sourcemap-comment'])) {
+ $minifier->keepSourceMapComment();
+}
+
+if (isset($opts['remove-important-comments'])) {
+ $minifier->removeImportantComments();
+}
+
+if (!empty($opts['linebreak-position'])) {
+ $minifier->setLineBreakPosition($opts['linebreak-position']);
+}
+
+$fixture = file_get_contents($fixtureFile);
+$expectation = file_get_contents($expectationFile);
+$output = $minifier->run($fixture);
+
+if (strcmp($output, $expectation) === 0) {
+ fwrite(
+ STDOUT,
+ "\x1b[30m\x1b[42m OK \x1b[0m" . PHP_EOL
+ );
+ die(0);
+} else {
+ $diff = new Diff;
+ $cliRenderer = new CliRenderer;
+ $diffString = $cliRenderer->process($expectation, $diff->getOpcodes($expectation, $output));
+ fwrite(
+ STDERR,
+ "\x1b[37m\x1b[41m FAILURE \x1b[0m" . PHP_EOL .
+ '---' . PHP_EOL .
+ $diffString . PHP_EOL .
+ '---' . PHP_EOL
+ );
+ die(1);
+}