心はいつも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
RailsTutorial4.0を高速で復習する。9.2.2章。

9.2.2正しいユーザーを要求する、です。 テストを書く 自分以外の人がプロフィ …

no image
Ruby on Railsのインストール

Rubyのアップデートが終わったので、いよいよRailsをインストールします。 …

吉瀬美智子さんが美しすぎて、新サイト作りました

以前からやりたいと思っていたのですが、吉瀬美智子さんが美しすぎてやる気がでました …

rails gでのファイル名、クラス名、アクション名

rails gすると、コントローラーとアクションができますが、 その書き方とファ …

no image
RailsTutorial4.0を高速で復習する。4.6章。

4.6演習、です。4章がRubyの説明章だったので演習はRuby問題になっていま …

ジョジョ専用kindle fire HDの電源が入らない!

電源が入らない!MacBookAirが真っ黒になりました。とか、 iPhoneの …

no image
gamilアカウントが乗っ取られました

朝起きてすぐ行うメール確認。iphoneでgmail接続できないってエラーが出る …

RailsTutorial4.0を高速で復習する。9章。

8章で随分おなかいっぱいになりました。 第9章 ユーザーの更新・表示・削除、です …

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

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

no image
RailsTutorial4.0を高速で復習する。6.5章。

演習1問目。 リスト6.20の、メールアドレスを小文字に変換するコードに対するテ …