ruby-on-rails - Rails 测试辅助方法接受 ActionView::Helpers::FormBuilder 对象

标签 ruby-on-rails testing helper formbuilder

我正在尝试为接受表单辅助对象的辅助方法编写测试,有没有办法在测试中创建表单对象?

/app/views/blahs/edit.html.erb

<% form_for :blahs do |blah| %>
 <%= my_helper_method(blah) %>
<% end %>

/app/helpers/blahs_helper.rb

def my_helper_method(blah)
  # 
  # blah is ActionView::Helpers::FormBuilder 
  # do something with the form object here 
  #
end

那么在我的测试用例中,我该如何创建表单对象呢?我还在使用 Rails 2.3.9。

提前致谢

最佳答案

首先尝试将它与部分一起使用,然后可能会喜欢上一个助手?除非你正在做一些捏造的“模型”类型的东西,否则部分是重用表单代码并且更容易测试的好方法。

助手在某种程度上是为了“查看逻辑”。 partials 用于显示表单字段,甚至是重复的字段。

它可以帮助您了解您在帮助程序中尝试执行的部分操作无法执行的操作。

关于ruby-on-rails - Rails 测试辅助方法接受 ActionView::Helpers::FormBuilder 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4876761/

相关文章:

ruby-on-rails - 在 Rails 中制作漂亮的 url。更改/用户/到数据库字段

javascript - 为什么我的助手集合查询没有反射(reflect)在 html 模板中?

css - Ruby on Rails - 在 css erb 文件中使用助手给出未定义的方法

ruby-on-rails - Capistrano 错误 : '/usr/bin/env ruby : No such file or directory'

ruby-on-rails - Rails ActiveRecord - update_all : how to update multiple fields at once with mixed type of arguments

django - 如何使用 django-nose 运行单个测试或单个 TestCase?

php - 使用 domcrawler 的 CakePHP 3 集成测试

testing - 困惑为什么第 5.3 节中的测试会失败

helper - 远程桌面与本地桌面的 Web 应用程序开发

ruby-on-rails - Rails - 使用 Font Awesome