Ruby on rails 在Rails中编写helper和helper_规范

Ruby on rails 在Rails中编写helper和helper_规范,ruby-on-rails,ruby,rspec,Ruby On Rails,Ruby,Rspec,我已经编写了以下帮助程序,用于为我的控制器发送电子邮件: module SendEmail def send_mail(subject, body) to = "abc@gmail.com.com" cc = "def@gmail.com" html_message = %{<html><body>body</body></html>} flag1 = system %{echo "#{html_message

我已经编写了以下帮助程序,用于为我的控制器发送电子邮件:

module SendEmail
  def send_mail(subject, body)
    to = "abc@gmail.com.com"
    cc = "def@gmail.com" 
    html_message = %{<html><body>body</body></html>}
    flag1 = system %{echo "#{html_message}" | mutt -e "set content_type=text/html" -s "#{subject}" #{cc} -- #{to}}
  end
end
模块发送电子邮件
def发送邮件(主题、正文)
to=”abc@gmail.com.com"
cc=”def@gmail.com" 
html_消息=%{body}
flag1=system%{echo“{html_message}”mutt-e“set content_type=text/html”-s“{subject}”{cc}--{to}”
结束
结束
我应该将该模块放置在何处,以便控制器可以使用该模块


我应该在哪里放置相同的rspec代码?如何为此编写rspec测试用例?如何测试此助手的
mutt

您将其放入
app/controllers/concerns


测试
mutt
的方法是将调用分解到创建命令并测试该命令的助手方法中。您还可以存根或模拟
系统
调用。我不会直接测试mutt,因为它是一个外部资源,应该使用一些配置工具(如chef)对其进行正确配置。

可能重复我如何存根/模拟mutt调用?请你看看这个问题: