Я использую ruby-1.9.3-p0
.Мой пакет включает
Using rails (3.1.3)
Using rspec-core (2.7.1)
Using rspec-expectations (2.7.0)
Using rspec-mocks (2.7.0)
Using rspec (2.7.0)
Using rspec-rails (2.7.0)
У меня очень странная проблема, возникающая в моей спецификации.У меня есть около 5 примеров, например так:
describe "Example" do
context "when adding stuff" do
it "should do stuff" do
# ...
end
it "..." do
# ...
end
end
context "when doing other stuff" do
it "..." do
# ...
end
it "..." do
# ...
end
it "..." do
# ...
end
end
end
Однако, если я добавлю дополнительный пример, в блоке context "when doing other stuff"
, я получу эту ошибку
1) Example when adding stuff should do stuff
Failure/Error: Unable to find matching line from backtrace
stack level too deep
# /../../activesupport-3.1.3/lib/active_support/duration.rb:55
2) Example when adding stuff should do stuff
Failure/Error: Unable to find matching line from backtrace
stack level too deep
# /../../activesupport-3.1.3/lib/active_support/core_ext/time/calculations.rb:266
Что делает этостранно, если я закомментирую все в блоке, как это так
it "should do stuff" do
# everything commented out
end
это все равно происходит.И даже если я закомментирую новый пример, который я добавил
it "new example within when doing stuff context" do
# everything commented out
end
, он все равно выдаст ошибку. И затем, если я закомментирую весь код в каждом примере, это все равно произойдет! Только если я полностью удалю первый it "should do stuff"
пример, он исчезнет.Кто-нибудь испытывал это?Спасибо.
РЕДАКТИРОВАТЬ: Еще одну вещь, которую я хотел бы добавить.При запуске все спецификации, например, так:
rspec
Все мои примеры проходят и работают без переполнения стека.Однако это происходит только в том случае, если я запускаю спецификацию соло:
rspec spec/models/example_spec.rb