tijmen-wierenga/laravel-mail-tester

Laravel 的 TestCase 扩展,允许您对电子邮件运行单元测试

v0.1.2 2016-07-28 10:57 UTC

This package is auto-updated.

Last update: 2024-09-16 19:32:59 UTC


README

Laravel 的 TestCase 扩展,允许您对电子邮件运行单元测试。

安装

composer require tijmen-wierenga/laravel-mail-tester

接下来,将 traits 添加到位于 tests/TestCaseTestCase 类中

use TijmenWierenga\LaravelMailTester\TestsEmail;

class TestCase extends Laravel\Lumen\Testing\TestCase
{

    use TestsEmail;
    
    ...
    
}

工作原理

LaravelMailTester 在测试环境中作为插件添加事件监听器。它跟踪何时发送电子邮件,并将所有数据存储在测试用例中。然后您可以对此进行断言。

用法

class AuthenticationTest extends TestCase
{
  /**
  * @test
  */
  public function it_sends_an_email() {
    // Send an email
    Mail::raw('Wow, awesome email testing!', function($mail) {
      $mail->to('tijmen@floown.com');
      $mail->from('no-reply@floown.com');
      $mail->subject('Read this awesome email');
    }
    
    $this->assertEmailWasSent()
      ->assertEmailWasSentTo('tijmen@floown.com')
      ->assertEmailWasSentFrom('no-reply@floown.com')
      ->assertEmailBodyContains('awesome email testing')
  }
}

更多断言即将到来。

许可证

MIT 许可证 (MIT)。