rspec密码测试失败

时间:2013-05-18 08:25:16

标签: ruby-on-rails ruby rspec

我一直绞尽脑汁试图解决这个问题。我不知道为什么,但由于某种原因我的密码摘要哈希不匹配。当我运行测试时,我收到此错误:

expected: password_digest: "$2a$04$cDKhuWzsZuW8Gm4t5fJjpu6rmbwh10ZAt2Yae.BO0iuD...">
got: password_digest:      "$2a$04$jwfHjoLI0RpDIAEr9SMKGOZqeH.J5ILOkzalKCYQdDW4...">

我应该注意应用程序代码工作得很好。我可以调用创建用户并在控制台中使用user.authenticate('foobar')对其进行身份验证,它将按预期工作。我已经多次删除并重做我的数据库,结果相同。

这是我的测试:https://gist.github.com/DavidVII/f190d1f1e114234bb7d7#file-user_spec-rb-L107

失败的部分是第107行。我正在使用bcrypt和has_secure_password

我真的很擅长测试,非常感谢有关如何通过测试的一些细节。

我的密码哈希每次都在重新创建,我不知道如何让它停止。

非常感谢任何帮助。

日Thnx!

1 个答案:

答案 0 :(得分:0)

事实证明每次运行都会生成@user。我安装了database_cleaner gem,现在我的工作非常好。