LoginSignup
8
6

More than 1 year has passed since last update.

Ruby on Rails チュートリアル setupメソッド users(:michael) 10.11: 編集の成功に対するテスト

Last updated at Posted at 2018-10-13
def setup
  @user = users(:michael)
end

usersって何だっけ?なんで:michealを引数にして呼び出せるの?

と思い、調べました。

結論:users.yml を参照しています。

Ruby on Rails チュートリアルを参照すると、

user = users(:michael)

上のusersはfixtureのファイル名users.ymlを表し、:michaelというシンボルはリスト 8.22のユーザーを参照するためのキーを表します。

また、users.yml は下記のようになっています。

michael:
  name: Michael Example
  email: michael@example.com
  password_digest: <%= User.digest('password') %>

有効なユーザー用のfixtureを作成できたので、テストでは次のようにfixtureのデータを参照できるようになります。

user = users(:michael)

また、10章では、users.yml を使用して、

 test "successful edit" do
    get edit_user_path(@user)
    assert_template 'users/edit'
    name  = "Foo Bar"
    email = "foo@bar.com"
    patch user_path(@user), params: { user: { name:  name,
                                              email: email,
                                              password:              "",
                                              password_confirmation: "" } }
    assert_not flash.empty?
    assert_redirected_to @user
    @user.reload
    assert_equal name,  @user.name
    assert_equal email, @user.email
  end

このようにテストを行っています。

参考になった記事

Ruby on Rails チュートリアル 8章
https://railstutorial.jp/chapters/basic_login?version=5.1#cha-basic_login

また、自分の記事はゴミ記事なんだろうと思って
新しくQiitaでまとめることはあまりしないようにしようかと思っていたけれど、下記記事をよんで
・自分用の備忘録として残しておくため
また、きっとグーグルが検索の結果ゴミ記事がでてこないようにしてくださると思うので、たくさん書いて練習していきたい

また、このまとめ記事がとても読みやすいかったので、以下画像のようにするとMarkdownが見れました。

無題.png

Markdownを活用するなどして、見やすい、読みやすい記事を書いていきたいです。

追記:全画面でプレビューを確認する。

無題2.png

上記画像の赤枠の箇所をクリックすると、全画面でプレビューを見ることができるので、確認のときに便利です。

a

とか

a

とか

  • a
  • b
  • c

a

1

a

aa

Markdown練習


  1. ジャンプ 

8
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
6