心はいつも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

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

  関連記事

Google Webfont使ってみたよ

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

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

10.1.4マイクロポストを改良する、です。 has_many関連付けしたので、 …

no image
もう一度、Future Vision

2019年の世界。あと7年。 登場人物に日本人がいない事にも注目してほしい。 関 …

no image
RailsTutorial4.0を高速で復習する。5.6章。演習3問目。

5章最後の演習、3問目です。 リスト5.38に示すように、元のヘルパーメソッドに …

no image
RailsとRubyのインストール済みバージョン確認し、Rails3.2+Ruby1.9に戻してみる。

Rails3.2で作る必要があったので、Rails4はいったんおいといてRail …

no image
データベースのリファクタリング?

ruby on rails3プリケーションプログラミングの本の内容をruby2. …

no image
恐ろしや、WordPressのDBパスワードは平文でおいてある

先ほどサーバーのDBをいじっていてですね、、久々だったのでDBパスワード忘れてし …

40秒も待てない。

自由が丘のカフェでこれ書きました。Table Modern Service、食べ …

使ったらダメなiPhoneケーブル

iPhoneのApple純正ケーブルって、はげやすくないですか?iPhone5用 …

詳解 Objective-C 2.0 第3版

Rubyの言語仕様を勉強する傍ら、Objective-Cも言語仕様ベースで勉強し …