Díky Kyleovi, který mě ukázal správným směrem, jsem zjistil, jak to udělat.
V zásadě je tedy trikem zahodit všechny své sbírky do mongodb pro každý testovací případ, který spustíte. Je to trochu radikální, ale funguje to. Ale mějte na paměti, že ve své testovací databázi neuchováte vůbec žádná data.
Nakonec jsem našel tento odkaz:http://adventuresincoding.com/2010/07/how-to-configure-cucumber-and-rspec-to-work-with-mongoid
A v podstatě to, co musíte udělat, je jednoduché:
přidejte do sebe blok spec_helper.rb:
RSpec.configure do |config|
# blabla other confs
config.before :each do
Mongoid.master.collections.select {|c| c.name !~ /system/ }.each(&:drop)
end
# blabla other confs
end
Pro Mongoid 3:
Mongoid.default_session.collections.select {|c| c.name !~ /system/ }.each(&:drop
To efektivně zabíjí veškerou kolekci v db, což vám umožní spouštět vaše testy pokaždé znovu.
Alex