EC-CUBEのユニットテストにも利用されているMailCatcherですが、テスト中のメールの誤送信を防ぐことができ、EC-CUBEの開発中は非常に便利です。今回はMacでのMailCatcherインストールから自動起動をご紹介します。

MailCatcherインストール方法

$ brew install ruby
$ sudo gem install mailcatcher

あとは「mailcatcher &」で起動します。

mail.ymlをMailCatcherに合わせた設定に書き換えます。

mail:
    transport: smtp
    host: localhost
    port: 1025
    username:
    password:
    encryption: null
    auth_mode: null
    charset_iso_2022_jp: false
    use_spool: true

MailCatcher自動起動

$ vim ~/Library/LaunchAgents/me.mailcatcher.plist

下の内容をplistファイルに記述します。

 <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
 <key>Label</key>
 <string>me.mailcatcher</string>
 <key>ProgramArguments</key>
 <array>
 <string>sh</string>
 <string>-i</string>
 <string>-c</string>
 <string>$SHELL --login -c "mailcatcher --foreground"</string>
 </array>
 <key>KeepAlive</key>
 <true/>
 <key>RunAtLoad</key>
 <true/>
</dict>
</plist>

$ launchctl load ~/Library/LaunchAgents/me.mailcatcher.plist

出典:https://gist.github.com/sj26/1638617