ここに何か不足していますが、問題を見つけることができません。このテストは本当にシンプルですが、失敗するはずですが、常に成功します。一致しないパスワードを持つユーザーが作成されています。rails:検証可能な単位テストは、失敗すると常に失敗するようになります。
これは私のユーザーモデルにあります。だから私は知っている:validatableが設定されています。
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :validatable
コンソールを使用して手動でテストするとうまく動作します。
user = User.new_normal_user(
:email => '[email protected]',
:password => 'some_password',
:password_confirmation => 'some_other_password'
)
assert user.save
しかし、それは保存し、ユニットテストを実行するとき、とき、それはいけないいくつかの奇妙な理由のために:それは私がここで
は、ユニットテストでミスマッチしたパスワードを保存できません。私は困惑している。私はこれを理解できません。
私はこの問題を解決しました。私は新しいユーザーとして私の答えをまだ投稿できません。私はpassword_requiredを上書きしましたか?関数。特定の条件の下でのみfalseを返します。それは決して真実を返すことはない。だから私はちょうどそれが真実か偽かを返すようにし、単体テストが期待通りに動いていて、問題をマッチしないパスワードをキャッチした。 – eliotRosewater