心はいつもAirPucci (空元気でもいいから)

毎日がPucciを着ているような気分

RailsTutorial4.0を高速で復習する。3.5章。つづき。

   


3.5演習の2もんめをやります。

2.お気付きの方もいると思いますが、リスト3.19に示されている、StaticPagesコントローラのspecテストには若干の重複があります。特に、“Ruby on Rails Tutorial Sample App”というタイトルはそれぞれのタイトルのテストで繰り返し記述されています。引数として渡されたシンボルと同名の変数にブロックの評価値を格納する、RSpecのlet関数を使い、リスト 3.31のようにテストを変更し、テストにパスするようにしましょう。リスト3.31では文字列の式展開 (string interpolation) が行われていますが、これについては4.2.2で紹介します。

いまのStaticPagesコントローラのspecテストを眺める

確かに長いです。。

リスト 3.31を眺める

これ、答えそのものですね。

let(:base_title) { “Ruby on Rails Tutorial Sample App” }
とし、
タイトルのテスト文をそれぞれ
expect(page).to have_title(“#{base_title} | Home”)
expect(page).to have_title(“#{base_title} | Help”)
expect(page).to have_title(“#{base_title} | About Us”)
expect(page).to have_title(“#{base_title} | Contact”)

と変更しています。

base tititleが共通であることがわかるテストコードになりました。
まだ重複箇所はあるけど、リファクタリングは続くのでいまのところこれでいいのしょう。

テストを実施しておきます。8 examples, 0 failuresになります。
commitもしておきます。

最後の問題は次にやります。

 - テクニカル ,

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

  関連記事

no image
wordpressのサーバー移行したい

本当に自分の備忘録として。 サーバー移行したいなと考えています。 同時に、Wor …

no image
Ruby1.9と2.0、複数バージョンのRubyをインストールする。

Ruby1.9 + Rails3.2もいいけど、Ruby2.0 + Rails4 …

no image
Mavericksでruby2.0 rails4.0.0のGem

MacBookAirにMavericksインストールして初めてのrails ne …

コンビニで切れないiPhone充電ケーブル買った

iPhone充電に使うライトニングケーブルって高いのに切れ易く涙目。 こんな感じ …

iPadのiBooksで自炊とかしたPDFの電子書籍を読む

手順覚えないのでブログに書きます。 Bookscan使用して手持ちPDF電子書籍 …

Google Webfont使ってみたよ

地元に戻ってきてまず思ったのは「観光サイトを立ち上げたい」ということ。いや、観光 …

Mac miniのメモリを自力で16Gに増設しました

Mac miniとDellの27インチIPS液晶、とても快適です。もっと快適にす …

no image
Gitをインストールする

Rails開発がしたいのですが、今後必要になるでしょうからGitをインストールし …

Eclipse CDTインストールでCould not find

さいたまスーパーアリーナで全スサノオ使い果たし力尽きてはや1ヶ月と1週間。世の中 …

no image
プログラミングから離れた理由を思い出した

私は転職が多く5社で正社員で経験しています。全部IT系なのだけど全部職種が違いま …