have_tag против have_selector - PullRequest
       10

have_tag против have_selector

2 голосов
/ 15 июня 2011

Я успешно использовал have_selector с RSpec (версия 2.0.1). Недавно я нашел документацию по have_tag ... with_tag ..., связанной с RSpec 1.3.2, и хотел бы использовать его, но RSpec выдает мне ошибку:

undefined method `has_tag?' for #<ActionController::TestResponse:0x105584e80>

в следующих строках:

      response.should have_tag("div.breadcrumbs select") do
        with_tag(:option, :value => @brands.name)
        with_tag(:option, :value => @marketsize.name)
      end

Я попытался использовать тот же синтаксис, заменив "have_selector" и "with_selector" на "have_tag" и "with_tag", и в этом случае я получаю сообщение об ошибке

undefined method `with_selector' for #<RSpec::Core::ExampleGroup::Nested_1::Nested_1::Nested_1::Nested_1:0x105379de8>

Я также пытался оставить "with_tag" в покое, заменив "have_selector", но безуспешно.

Ответы [ 2 ]

10 голосов
/ 26 июня 2011

Мне потребовалось время, чтобы найти его в документации, но правильный ответ -

  response.should have_selector("div.breadcrumbs select") do |content|
    content.should have_selector(:option, :value => @brands.name)
    content.should have_selector(:option, :value => @marketsize.name)
  end
5 голосов
/ 16 июня 2011

RSpec-2 не будет включать have_tag. Вместо этого используйте webrat's have_selector matcher.

http://groups.google.com/group/rspec/browse_thread/thread/1c254524d6859ba9

...