Dans le test ci-dessous, les blocs Bar et Baz contiennent des spécifications identiques.DRYing répété specs dans RSpec
Laissant de côté pourquoi une telle répétition était nécessaire en premier lieu, je me demande comment on pourrait l'assécher.
J'ai essayé de transformer les blocs en objets et de les appeler sous Bar et Baz, mais peut-être parce que je n'ai pas bien compris les champs, je n'ai pas réussi à le faire fonctionner.
describe Foo do
describe Bar do
before(:each) do
prepare
end
it "should do something" do
true
end
it "should do something else" do
true
end
end
describe Baz do
before(:each) do
prepare_something_else
end
it "should do something" do
true
end
it "should do something else" do
true
end
end
end