它们失败了:统一常量 ActiveModel::SecurePassword::InstanceMethodsOnActivation
我正在尝试将 Rails 5.2 应用程序更新到 Rails 6 Beta,除了我的 validate_presence_of 规范外,一切似乎都工作正常。
例如
RSpec.describe Post, type: :model do
context 'validations' do
subject { Post.new(body: Faker::Movie.quote)}
it { should validate_presence_of :body }
it { should validate_length_of(:body).is_at_most(5000).on(:create) }
end
end
validate_length_of 顺利通过,而 validate_presence 则不然。帖子确实属于从 Clearance::User 继承的用户,但我不确定为什么该常量在同一模型的不同测试中会有所不同?
最佳答案
我已经完成了这项工作。
这里有一个针对shoulda_matchers的拉取请求:
https://github.com/thoughtbot/shoulda-matchers/pull/1169
在 shoulda_matchers 团队合并之前,请在此处使用我的版本:
https://github.com/morsedigital/shoulda-matchers
在您的 Gemfile 中:
gem 'shoulda-matchers', groups: [:test], git: 'https://github.com/morsedigital/shoulda-matchers'
关于ruby-on-rails - Rails 6 所有 validate_presence_of 测试均失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54272646/