Как получить доступ к тексту описания в rspec - PullRequest
7 голосов
/ 05 января 2012

Я пишу некоторые спецификации, которые тестируют файлы шаблона в геме, который имеет генераторы для Rails.Я хотел бы получить доступ к "admin_layout.html.erb" в спецификации rspec ниже:

require 'spec_helper'

describe "admin_layout.html.erb" do

  it "has page title Admin" do
     HERES WHERE I WOULD LOVE TO HAVE ACCESS TO "admin_layout.html.erb" AS A VARIABLE
  end

end

1 Ответ

13 голосов
/ 05 января 2012

Вы можете использовать self.class.description, чтобы получить эту информацию:

it "has page title Admin" do
  layout = self.class.description 
  # => "admin_layout.html.erb"
end

Однако, имейте в виду, что это будет только описание первого родителя. Поэтому, если у вас есть контексты в вашем блоке describe, то примеры в контекстах дадут имя контекста для self.class вместо имени блока describe. В этом случае вы можете использовать метаданные:

describe "admin_layout.html.erb", :layout => "admin_layout.html.erb"
  context "foo" do
    it "has page title Admin" do
      layout = example.metadata[:layout]
    end
  end
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...