使用Guard触发模型更改的单片工厂规范

时间:2018-01-29 15:17:15

标签: ruby-on-rails rspec factory-bot guard

我想找到一种方法来测试我的工厂,并在思想机器上找到了这个伟大的article来实现这个目标:

 # spec/factories_spec.rb

FactoryBot.factories.map(&:name).each do |factory_name|
  describe "The #{factory_name} factory" do
     it 'is valid' do
      build(factory_name).should be_valid
     end
  end
end

当谈到改变我的Guardfile时,我并不太专业,只是想知道什么才是让它工作的最好方法。我注意到控制器默认设置的东西,但模型没有:

watch(rails.controllers) do |m|
  [
    rspec.spec.call("routing/#{m[1]}_routing"),
    rspec.spec.call("controllers/#{m[1]}_controller"),
    rspec.spec.call("acceptance/#{m[1]}")
  ]
end

1 个答案:

答案 0 :(得分:1)

是的,这应该有用

watch(%r{app/models/.*\.rb}) do
  [`spec/factories_spec.rb`]
end