【发布时间】:2012-03-28 16:40:31
【问题描述】:
我想知道是否有人知道如何实现 Rspec 测试,该测试可以利用 Rails 中的表单构建器。这是我的助手中的内容:
def render_radio_buttons(answer, label)
check_these = []
field = '<div class="radio">'
label.split(',').each do |option|
if check_these.include?(option.strip)
field += answer.radio_button :body, option.strip, checked = true
else
field += answer.radio_button :body, option.strip
end
field += label_tag option.strip
end
field += '</div>'
end
此方法从数据库中提取包含多个逗号分隔标签的标签字段。在这种情况下,答案是表单构建器 f。既然它需要表单构建器,我将如何测试这样的东西?
如果您有更好的 rails 方法来实现这一点,我很想知道!感谢任何可以提供帮助的人!
【问题讨论】:
-
你有没有研究过嘲笑/期望?
answer可能是一个测试替身,它可以采用radio_button方法,并且您可以期望使用正确的参数调用它 X 次。然后你可以让它返回任何旧字符串,然后测试你的fieldString。您本身并不真正关心.radio_button返回的内容,因为 Rails 正在处理这些问题。你更关心如何使用它。
标签: ruby-on-rails views helpers formbuilder