我一直在绞尽脑汁想弄清楚这一点。我不知道为什么,但由于某种原因,我的密码摘要哈希不匹配。当我运行测试时,我收到此错误:
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
.
我对测试真的很陌生,并且非常感谢有关如何通过此测试的一些细节。
我的密码哈希每次都会重新创建,我不知道如何让它停止。
任何帮助将非常感激。
谢谢!