*/
var $color;
- /**
- * boolean $lightcolor whereas output should use light colors
- * @private
- */
- var $lightcolor;
-
/**
* boolean $showOutput Show test output
*/
global $options;
# Only colorize output if stdout is a terminal.
- $this->lightcolor = false;
$this->color = !wfIsWindows() && posix_isatty(1);
if( isset( $options['color'] ) ) {
case 'no':
$this->color = false;
break;
- case 'light':
- $this->lightcolor = true;
- # Fall through
case 'yes':
default:
$this->color = true;
}
}
$this->term = $this->color
- ? new AnsiTermColorer( $this->lightcolor )
+ ? new AnsiTermColorer()
: new DummyTermColorer();
$this->showDiffs = !isset( $options['quick'] );
# test, in case it succeeded. Show it now:
$this->showTesting( $desc );
}
- print $this->term->color( '1;31' ) . 'FAILED!' . $this->term->reset() . "\n";
+ print $this->term->color( '31' ) . 'FAILED!' . $this->term->reset() . "\n";
if ( $this->showOutput ) {
print "--- Expected ---\n$result\n--- Actual ---\n$html\n";
}
}
class AnsiTermColorer {
- function __construct( $light ) {
- $this->light = $light;
+ function __construct() {
}
/**
* @private
*/
function color( $color ) {
- $light = $this->light ? "1;" : "";
+ global $wgCommandLineDarkBg;
+ $light = $wgCommandLineDarkBg ? "1;" : "0;";
return "\x1b[{$light}{$color}m";
}
* @private
*/
function reset() {
- return "\x1b[0m";
+ return $this->color( 0 );
}
}