especificações individuais passam quando executadas sozinhas, mas falham quando todas as especificações são executadas
Tenho 30 especificações no meu foo_controller_spec.rb e quando executo o arquivo inteiro usando a especificação, recebo 4 falhas e 2 pendentes. Quando executo as 4 especificações com falha individualmente, 3 delas ainda falham, mas uma delas passa. No começo, pensei que era um problema de banco de dados, que os dados não estavam sendo limpos corretamente entre as execuções. Então eu instalei o database_cleaner (http://github.com/bmabey/database_cleaner) e adicionou este código ao meu 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
Agora, quando executo minhas especificações, posso ver que as tabelas estão truncadas entre cada especificação, então sei que está funcionando, mas as especificações ainda falham quando executadas com todas as outras especificações, mas passam quando executadas sozinhas. O que estou perdendo aqui?