2

私はレールのテストにかなり慣れていないので、shoulda を使用してみましたが、どのモデルを入れても壊れるので、手動でテストする必要があると考えました。

SOの偉大な専門家であるあなたへの私の質問はこれです:

test::unit を使用して、モデルが別のモデルに関連付けられていることをテストするにはどうすればよいですか?

4

1 に答える 1

6

まあ、最も明白な解決策は次のようなものです:

user = User.create(name: 'User')
2.times { user.friends.create(name: 'Other User') }

assert_equal(2, user.friends.count, "Unexpected associated records count")

しかし、これは基本的にレール自体のテストに似ているため、気にする必要はありません。

かどうかを確認しますuser.respond_to?(:friends)。しかし、もちろん、誰かがその名前のメソッドを定義すると失敗します

于 2013-10-10T16:37:50.787 に答える