检测到邮件是在当前范围内使用 swift 邮件程序发送的
Detecting a mail was sent using swift mailer in current scope
我正在为 Symfony2 应用构建功能测试,需要知道电子邮件何时发送,而不是来自 api 请求。 (这个link不是我要找的:http://symfony.com/doc/current/cookbook/email/testing.html)
申请流程如下:
- 用户创建个性化视频
- 扁平化请求(创建最终视频)通过队列发送到 GNASH 服务器
- GNASH 完成后,它会将消息发布到另一个队列
- 我们使用守护进程处理队列
- 在处理随时可能到达的响应时,系统会调度一个 VideoFlatteningCompleteEvent
- 这甚至被抓住并向所有者发送电子邮件,告诉他视频已准备就绪。
我的目标:
- 我自己调度 VideoFlatteningCompleteEvent,因为它需要太多的步骤来通过伪造的测试重现工作流事件(简单)
- 收集发送的邮件或找到拦截邮件的方法,以在事件派发后验证邮件是否已发送。
有人知道吗?
经过一番挖掘找到了解决方案。使用 swiftmailer 插件,我能够收集使用发送事件发送的电子邮件。这样,我可以即时查看发送了哪些电子邮件,没有发送哪些电子邮件。可能类似的东西用于 Symfony2 的分析器中的 DataCollector。
我正在为 Symfony2 应用构建功能测试,需要知道电子邮件何时发送,而不是来自 api 请求。 (这个link不是我要找的:http://symfony.com/doc/current/cookbook/email/testing.html)
申请流程如下:
- 用户创建个性化视频
- 扁平化请求(创建最终视频)通过队列发送到 GNASH 服务器
- GNASH 完成后,它会将消息发布到另一个队列
- 我们使用守护进程处理队列
- 在处理随时可能到达的响应时,系统会调度一个 VideoFlatteningCompleteEvent
- 这甚至被抓住并向所有者发送电子邮件,告诉他视频已准备就绪。
我的目标:
- 我自己调度 VideoFlatteningCompleteEvent,因为它需要太多的步骤来通过伪造的测试重现工作流事件(简单)
- 收集发送的邮件或找到拦截邮件的方法,以在事件派发后验证邮件是否已发送。
有人知道吗?
经过一番挖掘找到了解决方案。使用 swiftmailer 插件,我能够收集使用发送事件发送的电子邮件。这样,我可以即时查看发送了哪些电子邮件,没有发送哪些电子邮件。可能类似的东西用于 Symfony2 的分析器中的 DataCollector。