我已成功使用带有RSpec(版本2.0.1)的have_selector。我最近发现有关与RSpec 1.3.2相关联的have_tag ... with_tag ...的文档并希望使用它,但是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 for”has_tag“和”with_tag“,在这种情况下我收到错误消息
undefined method `with_selector' for #<RSpec::Core::ExampleGroup::Nested_1::Nested_1::Nested_1::Nested_1:0x105379de8>
我也尝试单独留下“with_tag”而代替“have_selector”但没有成功。
答案 0 :(得分:10)
我花了一些时间在文档中找到它,但正确的答案是
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
答案 1 :(得分:5)
RSpec-2不包含have_tag。请改用webrat的has_selector匹配器。
http://groups.google.com/group/rspec/browse_thread/thread/1c254524d6859ba9