/** * @param int $color1 * @param int $color2 * @param float $factor * @return int */ function interpolate($color1, $color2, $factor) { $r = (red($color2) - red($color1)) * $factor + red($color1); $g = (green($color2) - green($color1)) * $factor + green($color1); $b = (blue($color2) - blue($color1)) * $factor + blue($color1); return color($r, $g, $b); }
$result = Huck::run(); $description = key($result); $test = $result[$description]; // create the quick statuses foreach ($test['results'] as $result) { if ($result->success) { green('.', false); } else { red('F', false); } } echo EOL, EOL; puts("Finished in {$test['time']}"); $message = pluralize(count($test['results']), 'example') . ', ' . pluralize($test['fails'], 'failure'); if ($test['fails'] == 0) { green($message); } else { red($message); $counter = 0; echo EOL; puts("Failures:"); foreach ($test['results'] as $result) { if ($result->success) { continue; } ++$counter; puts("\t{$counter}) {$result->description}"); // clean up the error message and display it $message = strip_tags($result->error_message); $message = str_replace(array("\n", ' '), array('', ' '), $message); red("\t {$message}");
function check($value) { return $value ? green('OK') : red('FAIL'); }
function correct($lang) { return green(array("en" => "correct", "nl" => "goed", "de" => "gut", "ro" => "bun")[$lang]); }