Для rspec метода действительно ли возможно добраться, значение параметра передало ему () в локальном методе? Например, если я хочу:
describe Me do
it "should figure this out"
puts "I " + SPEC_NAME
end
end
распечатать это:
I should figure this out
... что я поместил бы для SPEC_NAME в пример кода?
Еще лучше, как относительно новый rubologist хотел бы меня, понимают это самостоятельно?
Метод description
должен делать то, что вы хотите. например
describe Me do
it "should figure this out" do
puts "I " + description # or "I #{description}" using string interpolation
end
end
Что касается того, как это понять, я нашел его, просмотрев RDocs для RSpec , начиная с просмотра источника метода it , чтобы увидеть, как он работает. . Затем вы обнаружите, что RSpec ссылается на строку «it» как на «описание», поэтому вы можете искать доступные методы, которые включают описание в свое имя.
Я знаю, что сейчас от этого мало пользы, но по мере того, как вы будете больше изучать Ruby, вам станет легче читать код в библиотеках, таких как RSpec, и у вас разовьется чутье на то, как они, вероятно, будут реализованы, что будет поможет вам искать вещи в нужных местах.
Это не совсем ответ на ваш вопрос, но если вы пытаетесь распечатать каждый тест по мере его выполнения, укажите это в своей спецификации .opts
файл:
- format specdoc
Вот пример того, как выглядят мои тесты, когда я их запускаю:
A new release when parsing the artist containing a full join word
- should remove it
- should not remove it when it is inter-word
A new release when parsing the artist containing an abbreviated joining word
- should remove it when there is a period after it
- should remove it when when there is not a period after it
- should not remove it when it is inter-word with a period after it
- should not remove it when it is inter-word without a period after it
A new release when parsing the artist
- should be invalid if the year is not current
- should be valid if it is the current year