Được rồi, cảm ơn Kyle đã chỉ cho tôi đúng hướng, tôi đã tìm ra cách để làm cho nó hoạt động.
Vì vậy, về cơ bản, mẹo là thả tất cả các bộ sưu tập của bạn trong mongodb cho mỗi trường hợp thử nghiệm mà bạn sẽ chạy. Điều này là một chút triệt để, nhưng nó hoạt động. Nhưng hãy nhớ rằng bạn sẽ không giữ lại bất kỳ dữ liệu nào trong quá trình kiểm tra db.
Cuối cùng tôi đã tìm thấy liên kết đó: http://adventuresincoding.com/2010/07/how-to-configure-cucumber-and-rspec-to-work-with-mongoid
Và về cơ bản những gì bạn cần làm rất đơn giản:
thêm một khối trong bạn 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
Đối với Mongoid 3:
Mongoid.default_session.collections.select {|c| c.name !~ /system/ }.each(&:drop
Điều này sẽ giết tất cả bộ sưu tập trong db một cách hiệu quả, cho phép bạn chạy thử nghiệm mới mọi lúc.
Alex