He estado revisando los documentos, pero las descripciones de cómo funcionan varios filtros parecen ser un poco deficientes. ¿Alguien tiene una buena explicación o fuente de una buena explicación para el comportamiento de múltiples filtros? ¿El orden en que se enumeran es importante? Aquí está un ejemplo de código que podría tener un comportamiento distinto de lo que se podría esperar ...¿Combinación de filtros 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
Experimentando con esto, también parece que varios argumentos sobre la "filter_run_excluding" línea simple acto es si escribió la línea múltiple veces. ¿Hay alguna forma de conseguir que combine realmente las comprobaciones de filtro para que excluya (o ejecute, supongo) solo los ejemplos que tienen ambas etiquetas en la lista?
Si E/solamente/¿Desea ejecutar elementos enfocados? ¿Sería mejor utilizar "filter_run_exclusion: focus => false"? Supongo que filter_runs adicionales agregarán elementos independientemente del "filter_run: focus => true", ¿correcto? – GlyphGryph
Tengo la misma pregunta. ¿Encontraste alguna solución? – Mike
Esto se parece a la respuesta: http://stackoverflow.com/questions/5628880/can-i-use-multiple-exclusion-filters-in-rspec –