0

私の質問は簡単に言えば、次の一意性テストをどのように実行するかです。


「test_helper」が必要

クラス UserTest < ActiveSupport::TestCase

フィクスチャ:ユーザー

デフォルト設定

@error_messages = ActiveRecord::Errors.default_error_messages
@valid_user = users(:valid_user)
@invalid_user = users(:invalid_user)  end

test "test_uniqueness_of_screen_name_and_email" do

user_repeat = User.new(:screen_name => @valid_user.screen_name,
                       :email       => @valid_user.email,
                       :password    => @valid_user.password)
assert !user_repeat.valid?
assert_equal @error_messages[:taken], user_repeat.errors.on[:screen_name]
assert_equal @error_messages[:taken], user_repeat.errors.on[:email]  end

終わり


これは、本 RailsS​​pace - Section 5.6 Detailed User model testing の例を参照しています。私の問題を解決するのに役立たなかったが、すべての部分的な手がかりをすべてリストすることができましたが、この本が印刷された2008年と比較して、Rails 3で次のテストを実行する方法について誰かが単に知識を落としてくれることを望みます.

注: 私は i18n について多くの話を見てきましたが、ロケールや異なる言語 (まだ) を気にせず、テストについての学習に集中したいので、それは私が行きたい方向であってはならないと信じています.

4

1 に答える 1

0

Ed Jones が Ruby on Rails Tutorial book について言ったことは正しいです。これにより、RailsS​​pace で発生している問題を解決できます。

https://stackoverflow.com/a/16223598/2320716

于 2013-07-21T16:57:46.527 に答える