麻雀スクリプトを書く際にrspec書きながらやろうと思ったんだけど
試行錯誤重ねる段階でテストがうまく書けなかった。
いつも考えて試しながら書くとテストがちゃんと書けない。
rubyで麻雀の待ちを出力 - うんたらかんたら日記
これでは進歩が無いので、privateメソッドのテストを書くところから、
まずはやってみた(というかまだ途中だけど)。
書き方
#spec/majang_spec.rb require File.expand_path(File.dirname(__FILE__) + '/../majang.rb') describe Majang do # private methods describe ":format_tenpai" do context '["123", "456"],["78"]' do it { @m.send(:format_tenapi, ["123","456"], ["78"]).should == "(123)(456)[78]" } end end end
結果
Majang :format_tenpai ["123", "456"],["78"] should == "(123)(456)[78]"
参考
UKSTUDIO - RSpecでprivateメソッドをテストする
sendを使えばいいんですね。