當我對它們進行更改時,如何讓spork重新加載我的共享示例?我嘗試以下,但它不是重裝他們:重新加載RSpec與Guard和Spork共享示例
Spork.each_run do
Dir[Rails.root.join("spec/shared_examples/*.rb")].each {|f| require f}
end
我知道我可以一個觀察者添加到我的Guardfile把它重新加載ENV當共享的例子改變,但我的應用程序是大,需時約10 -15秒重新加載整個環境:
watch(/^spec\/shared_examples\/.*\.rb$/)
我希望只把它重新加載,改變了共享的例子,雖然這樣我就可以有更快的反饋迴路。
你如何不在** prefork塊中加載共享示例?我們有'Dir [Rails.root.join(「spec/support/**/*。rb」)]。each {| f |在我們的'prefork'塊中需要f}'',它肯定會加載所有東西(包括共享示例)。 **你如何防止共享示例被加載到'prefork'塊中? –
啊,我看到:我們在'spec/support/shared_examples'下有共享的例子,並且你在'spec/shared_examples'下有它。將它們移動到'spec/shared_examples'工作,但這是共享示例所屬?如果我不想將它們移出'support'文件夾,我該如何防止它們被加載到'prefork'塊中? –
因此,在'prefork'中使用這行代碼,不會加載共享示例:'Dir [Rails.root.join(「spec/support/**/*。rb」)]。reject {| f | f [%r {/ shared_examples /}]} .each {| f |需要f}'。 –