0

新しい Rails (3.2.12) アプリを作成するとします。test-unitgem を開発、テスト グループ、そして scaffolded リソースに追加します。Mac console.app からテストを実行すると、カラー出力が得られます。

bundle exec rake test

アプリの tmux セッションを (console.app で) 作成し、まったく同じコマンドを実行すると。カラー出力が得られません。ただし、「--use-color」スイッチを渡すと、tmux のテストでカラー出力が得られます。

bundle exec rake test TESTOPTS="--use-color"

tmux.configwith で256 色を設定していset -g default-terminal "screen-256color"ます。TESTOPTS なしで rake タスクを実行すると、tmux で色が表示されない理由がわかりませんか?

4

1 に答える 1

1

test-unitは、(主に) TERM 環境変数を見て、端末が色をサポートしているかどうかを推測しているようです。残念ながら、はそれが行うチェックをscreen-256color満たしていません。

screenの認識を拡張して、 も含めるように求めることは合理的かもしれませんscreen-256color

構成ファイルにいくつかのエントリをドロップして、デフォルトの引数を提供できると思います。test-unit.yml(現在のディレクトリ内の) または~/.test-unit.yml(ホーム ディレクトリ内の「隠し」ファイル)の最初のファイルが読み込まれます。

runner: console
console_options:
  arguments: --use-color=yes
于 2013-02-23T05:10:20.783 に答える