Rails' Wiki - Rails勉強会@東京第31回 行ってきました。
LT発表 RSpec on Rails の色
LT(ライトニングトークで発表しました、発表内容はこの間の日記記事ネタ。
「RSpec on Rails の色 - Rubyとか Illustratorとか SFとか折紙とか」
この、黒地に赤い字見え難いというのは結構多くの方が気になってたみたい。
require について(角谷さん方式)
トーク後、角谷さん方法では require に失敗する件、その時点で Spec::Runner がないというなら、予め空のを作っておけば良いのではないかという指摘を受けました。それで次のような感じにしてみたんだけどやっぱりうまく行きません。
定数エラーがおきて require も出来ませんという状況からは改善したんだけどうまく行かない。
module Spec module Runner class Formatter class ProgressBarFormatter end end end end class InvertedWellLitProgressBarFormatter < Spec::Runner::Formatter::ProgressBarFormatter def red(text); colour(text, "\e[1;41m") end def magenta(text); colour(text, "\e[1;45m") end end # class InvertedWellLitProgressBarFormatter < Spec::Runner::Formatter::ProgressBarFormatter
こんな感じのエラーになる。
vendor/plugins/rspec/lib/spec/runner/options.rb:169:in `initialize': wrong number of arguments (2 for 0) (ArgumentError) from vendor/plugins/rspec/lib/spec/runner/options.rb:169:in `new' from vendor/plugins/rspec/lib/spec/runner/options.rb:169:in `load_formatters'
フォーマッター作りか、なんか require、ロードの順とか、メソッドの定義順とか微妙なんだと思う。この方向性についてはここまで。
railsコマンドとの関係
出来れば、テンプレート修正などによってで、railsコマンドにて Railsアプリケーション作成時点でここまでの設定が出来てるようになってくれると嬉しい。しかし、それはちょっと難しい。何故かと言うと、そもそも、rspec、rspec_on_rails 自体が、Railsアプリケーション作成後にプラグインをインストールしてくる物だからだ。
プラグインのインストールやその他の準備も全部やってくれるようなスクリプトを書くのもなんだかなあ。プラグインのインストールなんて結構時間掛かるし、そういうのに Windows の(DOS)バッチファイルで臨むのは気が進まない。Ruby?