Rspecその2(3.0+1.0日目)
昨日の続きで今回は実際にfizzbuzzを判定する部分のユニットテストを書いていきます。
まず、テスト対象が別のメソッドなのでdescribe
を分ける。
「メソッドの説明をする」
にしたがってdescribe
に説明を書くようにする
describe "#puts_fizzbuzz?" do end
次はContextsを使うを参考に
context
を明確にする。
describe "#puts_fizzbuzz?" do context "引数が3の場合" do end context "引数が5の場合" do end context "引数が15の場合" do end context "引数が3,5,15で割れる数以外の時" do end end
こんなふうになりました。
で、ここから検証用のコードを書いていきます。
インスタンス生成時の引数は今回不要なため、before
にインスタンス生成の処理
を書いてしまいます。
describe "#puts_fizzbuzz?" do before do @fizzbuzz = FizzBuzz.new end end
@
がつくとインスタンス変数として扱われます。
あとはそれぞれの状態の時のテストを書いていきます。
context "引数が3の場合" do it { expect(@fizzbuzz.puts_fizzbuzz 3).to eq :fizz} end
puts_fizzbuzzではシンボルを返しているので、 シンボルのfizzが帰ってきているか懸賞する
あとは同じように書いていけばおけ。。。
今日は疲れてるので、これで終わり。
そろそろsinatraとかを使ってみたい。