如何在Sinatra/Ruby中调试/测试电子邮件传输

如何在Sinatra/Ruby中调试/测试电子邮件传输,ruby,sinatra,Ruby,Sinatra,我用小马发送带有我的sinatra应用程序的电子邮件。但问题是,我不知道如何调试或测试它。比如说,在php中,您可以配置sendmail fake应用程序(在php.ini中),将所有发送的电子邮件存储为包含所有数据的纯文本文件 ruby应用程序怎么样?有可能吗?你自己肯定已经找到了解决方案 在pony.rb文件中,有以下代码部分用于发送邮件: def self.transport(tmail) .. end 您只需添加一个方法即可返回env: def debug? tru

我用小马发送带有我的sinatra应用程序的电子邮件。但问题是,我不知道如何调试或测试它。比如说,在php中,您可以配置sendmail fake应用程序(在php.ini中),将所有发送的电子邮件存储为包含所有数据的纯文本文件


ruby应用程序怎么样?有可能吗?

你自己肯定已经找到了解决方案

在pony.rb文件中,有以下代码部分用于发送邮件:

def self.transport(tmail)
    ..  
end
您只需添加一个方法即可返回env:

def debug?
    true #false
end
如果调试模式打开,则执行一些特殊操作

def self.transport(tmail)
    puts "Debug message" if debug?
    if File.executable? sendmail_binary
        transport_via_sendmail(tmail)
    else
        transport_via_smtp(tmail)
    end
end

你自己肯定已经找到了解决办法

在pony.rb文件中,有以下代码部分用于发送邮件:

def self.transport(tmail)
    ..  
end
您只需添加一个方法即可返回env:

def debug?
    true #false
end
如果调试模式打开,则执行一些特殊操作

def self.transport(tmail)
    puts "Debug message" if debug?
    if File.executable? sendmail_binary
        transport_via_sendmail(tmail)
    else
        transport_via_smtp(tmail)
    end
end