Jaki byłby najlepszy sposób napisania rspec w sytuacji, gdy jeden z dwóch (lub więcej) wyników jest akceptowalny?Rspec: Powinien być (ten lub inny).
Oto przykład tego, co chcę zrobić. To jest oczywiście błędna (chyba), ale powinno dać ci istotę tego, co próbuję wykonać:
it "should be heads or tails" do
h="heads"
t="tails"
flip_coin.should be(h || t)
end
I tak, jestem świadomy Mógłbym napisać własny rspec dopasowujący „should_be_one_or_the_other (opcja1 , opcja2) ", ale wydaje się, że jest trochę za dużo - miałem nadzieję na lepsze rozwiązanie.
To nie działało dla mnie w najnowszej wersji, musiałem zmienić ją w tablicę najpierw 'be_in ([" heads "," ogony "])' – Vox
Dzięki za sprzężenie zwrotne –
Drobna korekta: ActiveSupport definiuje '#in?' na 'Object', a nie na' Array', ponieważ nazywa się tak 'flip_coin.in? % w (heads tails) 'i flip_coin mogą być dowolnymi' Object'. –