Właśnie spędziłem wieki, próbując dowiedzieć się, dlaczego moje specyfikacje przechodzą w izolacji, ale podczas wspólnego testowania kontrolera i lib niektóre specyfikacje w tajemniczy sposób zawiodły. Winowajcą było to:
W jednej specyfikacji:
describe SomeThing do
CONSTANT_VALUE = "a value"
# ... examples etc ...
end
A w innym:
describe AnotherThing do
CONSTANT_VALUE = "a different value"
# ... the rest is history
end
Wartości, które przypisałem do tych stałych, przeciekały między moimi specyfikacjami i powodowały nieoczekiwane zachowanie. Czy mam użyć let
blok do definiowania stałych itp.? Albo coś innego?
Odpowiedzi:
4 dla odpowiedzi № 1Tak, let
jest odpowiedź tutaj.