У меня есть 30 спецификаций в моем файле foo_controller_spec.rb, и когда я запускаю весь файл с использованием спецификаций, я получаю 4 ошибки и 2 ожидающих.Когда я запускаю 4 ошибочных спецификации по отдельности, 3 из них все равно выходят из строя, но одна из них проходит.Сначала я подумал, что это проблема с базой данных, что данные не очищались должным образом между запусками.Поэтому я установил database_cleaner (http://github.com/bmabey/database_cleaner) и добавил этот код в мой spec_helper:
config.before(:suite) do
DatabaseCleaner.strategy = :truncation
DatabaseCleaner.clean_with(:truncation)
end
config.before(:each) do
DatabaseCleaner.start
Sham.reset
login
end
config.after(:each) do
DatabaseCleaner.clean
end
Теперь, когда я запускаю свои спецификации, я вижу, что таблицы усекаются между каждой спецификацией, поэтому я знаю, что она работает, но спецификация по-прежнему дает сбой при запуске со всеми остальными спецификациями, но проходит при запуске в одиночку. Что мне здесь не хватает?