ぞえの技術めも

Ruby on Rails勉強中

【165日目】【1日20分のRailsチュートリアル】【第11章】演習の2.

Ruby on Railsチュートリアル(第3版)

今日は「11.6 演習」の2.から。

11.6 演習

2.サイドバーにあるマイクロポストの合計投稿数をテストしてください。このとき、単数形 (micropost) と複数形 (microposts) が正しく表示されているかどうかもテストしてください。(リスト11.68を参考にしてみてください)

マイクロポスト投稿数が1のときは単数形 (micropost) になるんだっけ…。

@user.microposts.count'Micropost.count'の使い分けがよく分かってないことに気づいた。 'Micropost.count'ってなんだ……
使えるケースが限られてるのかな。

test/integration/microposts_interface_test.rb

  test "micropost sidebar count" do
    log_in_as(@user)
    get root_path
    assert_match "#{@user.microposts.count} microposts", response.body
    # まだマイクロポストを投稿していないユーザー
    other_user = users(:mallory)
    log_in_as(other_user)
    get root_path
    assert_match "0 microposts", response.body
    other_user.microposts.create!(content: "A micropost")
    get root_path
    assert_match "1 micropost", response.body
  end

とりあえずテストは通りました。

$ bundle exec rake test
60 tests, 312 assertions, 0 failures, 0 errors, 0 skips

今日の学習時間は【22分】

次は「11.6 演習」の3.から。