gpt4 book ai didi

ruby-on-rails - 使用 RSpec 在 Rails 中测试 View 助手

转载 作者:太空宇宙 更新时间:2023-11-03 16:59:47 25 4
gpt4 key购买 nike

我需要测试以下助手:

def display_all_courses
@courses = Course.all

output = ""

for course in @courses do
output << content_tag(:li, :id => course.title.gsub(" ", "-").downcase.strip) do
concat content_tag(:h1, course.title)
concat link_to("Edit", edit_course_path(course))
end
end

return output
end

我想知道是否有一种方法可以测试它的输出。基本上,我只是想测试助手是否为我提供了正确数量的 li 元素,也许是在没有任何类(class)的情况下。

我的第一个想法是做这样的事情:

describe DashboardHelper do
describe display_all_courses do
it "should return an list of all the courses" do
7.times{Factory(:course)
html = helper.display_all_courses
html.should have_selector(:li)
end
end
end

这很好用。但是,如果我将 :count 选项添加到 have_selector 调用中,它会突然失败,有人能帮我弄清楚这是为什么吗?

最佳答案

我相信您正在寻找的是 have_tag 和 with_tag RSpec 助手

describe DashboardHelper do
describe display_all_courses do
it "should return an list of all the courses" do
7.times{ Factory(:course) }
helper.display_all_courses.should have_tag('ul') do
with_tag('li', 3)
end
end
end
end

关于ruby-on-rails - 使用 RSpec 在 Rails 中测试 View 助手,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3544419/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com