Tôi đã xem qua các tài liệu, nhưng mô tả về cách hoạt động của nhiều bộ lọc có vẻ hơi thiếu. Có ai có một lời giải thích hay nguồn giải thích tốt cho hành vi của nhiều bộ lọc? Thứ tự mà chúng được liệt kê có quan trọng không? Dưới đây là một ví dụ về mã mà có thể có hành vi khác so với những gì người ta có thể mong đợi ...Kết hợp các bộ lọc RSpec?
Rspec.configure do |c|
this_version = get_version_number.to_sym
c.filter_run :focus=> true
c.filter_run_excluding :limit_to=>true, this_version => false
c.filter_run :new_stuff=>true
c.run_all_when_everything_filtered
end
it "is focused, but not new", :focus
it "is is new", :new_stuff
it "is new and focused", :new_stuff, :focus
it "is focused and new, but limited to a different version", :focus, :limit_to, :correct_version
Thử nghiệm với điều này, nó cũng có vẻ như nhiều lập luận về "filter_run_excluding" dòng hành động đơn giản là nếu bạn đã viết các dòng nhiều lần. Có cách nào để làm cho nó thực sự kết hợp các kiểm tra bộ lọc để nó không bao gồm (hoặc chạy, tôi giả sử) chỉ các ví dụ có cả hai thẻ được liệt kê?
Nếu I/chỉ/muốn chạy các mục có tiêu điểm, tốt hơn là nên sử dụng "filter_run_excluding: focus => false"? Tôi giả định filter_runs bổ sung sẽ thêm các mục bất kể "filter_run: focus => true", đúng không? – GlyphGryph
Tôi có cùng một câu hỏi này. Bạn đã bao giờ tìm thấy một giải pháp? – Mike
Điều này giống như câu trả lời: http://stackoverflow.com/questions/5628880/can-i-use-multiple-exclusion-filters-in-rspec –