daviddel / mailcatcher
访问MailCatcher的库
v0.2.0
2013-10-08 13:24 UTC
Requires
- php: >=5.3.3
Requires (Dev)
- behat/behat: ~2.4
- swiftmailer/swiftmailer: ~5.0
This package is not auto-updated.
Last update: 2024-09-18 10:33:52 UTC
README
仍在开发中
将MailCatcher集成到您的PHP应用程序中。MailCatcher是一个简单的SMTP服务器,具有HTTP API,这个库旨在将其集成到PHP中以便于使用。
Behat扩展
此库提供了一个Behat扩展,帮助您测试应用程序中的邮件。
要使用它,首先确保MailCatcher已正确安装并运行。
首先,在您的behat.yml中进行配置
default: extensions: Alex\MailCatcher\Behat\MailCatcherExtension\Extension: url: https://:1080 purge_before_scenario: true
可用步骤
此扩展在测试中为您提供邮件上下文。要使用断言,您必须首先使用标准打开一封邮件。
一旦打开,您就可以对它进行断言并点击它。
服务器操作
删除服务器上的所有消息
当我清除邮件时
打开邮件
当我打开来自"foo@example.org"的邮件时
当我打开包含"a message"的邮件时
当我打开发给"me@example.org"的邮件时
当我打开主题为"Welcome, mister Bond!"的邮件时
断言
验证发送到服务器的邮件数量
然后应该发送1封邮件
然后应该发送13封邮件
验证文本存在于消息中
然后我应该看到邮件中的"something"
然后我应该看到邮件中的"something else"
客户端API
使用集成的SDK轻松浏览API
$client = new Alex\MailCatcher\Client('https://:1080'); // Returns all messages $messages = $client->search(); // Count messages $client->getMessageCount(); // Filter messages $messages = $client->search(array( 'from' => 'bob@example.org', 'to' => 'alice@example.org', 'subject' => 'Bla', 'contains' => 'Hello', 'attachments' => true, 'format' => 'html', ), $limit = 3); // Search one message $message = $client->searchOne(array('subject' => 'Welcome'));
消息API
// Message API, get the content of a message $subject = $message->getSubject(); $plainTextBody = $message->getPart('text/plain')->getContent(); $htmlBody = $message->getPart('text/html')->getContent(); // Message API, return a Person object or an array of Person object $person = $message->getFrom(); $persons = $message->getRecipients(); // Person API $person = $message->getFrom(); $name = $person->getName(); // null means not provided $mail = $person->getMail(); // Attachments $message->hasAttachments(); $message->getAttachments();
附件API
// Attachment API $attachment->getFilename(); $attachment->getSize(); $attachment->getType(); $attachment->getContent();