2015-11-21 18 views
0

我不太清楚什麼是確切的問題,但Avdi Grimm建議的database_cleaner用法示例現在似乎不再適用,而是database_cleaner README中顯示的示例工作。這兩個示例都已將事務夾具設置爲false。爲什麼Avdi Grimm的database_cleaner示例現在在rails 4.2.4中不起作用了?

以下是Avdi格林例如從his blog採取:

RSpec.configure do |config| 
    # added here for completeness 
    config.use_transactional_fixtures = false 

    config.before(:suite) do 
    DatabaseCleaner.clean_with(:truncation) 
    end 

    config.before(:each) do 
    DatabaseCleaner.strategy = :transaction 
    end 

    config.before(:each, :js => true) do 
    DatabaseCleaner.strategy = :truncation 
    end 

    config.before(:each) do 
    DatabaseCleaner.start 
    end 

    config.after(:each) do 
    DatabaseCleaner.clean 
    end 
end 

而且下面是database_cleaner README所示的工作示例:

RSpec.configure do |config| 
    config.use_transactional_fixtures = false 

    config.before(:suite) do 
    DatabaseCleaner.clean_with(:truncation) 
    end 

    config.before(:each) do |example| 
    DatabaseCleaner.strategy = example.metadata[:js] ? :truncation : :transaction 
    DatabaseCleaner.start 
    end 

    config.after(:each) do 
    DatabaseCleaner.clean 
    end 
end 

是唯一不同的是截斷策略設置。

回答

0

IIRC第二個對js標記的非零/假值使用截斷,如果:js標記=== true,第一個將只使用截斷。

+0

即使我在第一次將':js => true'更改爲':js',它仍然不起作用。 –

相關問題