Resúmenes del escenario de RSpec: múltiples casos de prueba
¿Cuál es la mejor manera de probar varios casos de prueba diferentes con RSpec?
Por ejemplo, dado string-adds.s.bb:
require 'rspec'
class String
if method_defined? :reverse_words
raise "String#reverse_words is already defined"
end
def reverse_words
split(' ').reverse!.join(' ')
end
end
describe String do
describe "#reverse_words" do
specify { "hello".reverse_words.should eq("hello") }
specify { "hello world".reverse_words.should eq("world hello") }
specify { "bob & pop run".reverse_words.should eq("run pop & bob") }
end
end
cuando corrorspec string-additions.rb --color --format doc
, Yo obtengo
String
#reverse_words
should == hello
should == world hello
should == run pop & bob
Sin embargo, me gustaría obtener una salida sensata, como esta:
String
#reverse_words
"hello" => "hello"
"hello world" => "world hello"
"bob & pop run" => "run pop & bob"
Y me gustaríaSEC hasta mis especificaciones un poco. ¿RSpec proporciona una plantilla para SECAR este tipo de pruebas de casos múltiples? Algo similar aEscenarios del escenario Pepino?
Nota: Esta pregunta es similar a ¿Hay un equivalente en RSpec a los "Escenarios" de Cucumber o estoy usando RSpec de manera incorrecta? pero proporciona un ejemplo que debe probarse con RSpec en lugar de con Pepino.