Commit 9981120f authored by Fabien Potencier's avatar Fabien Potencier

made the swiftmailer provider more flexible

parent 5c29361d
...@@ -40,7 +40,11 @@ class SwiftmailerServiceProvider implements ServiceProviderInterface ...@@ -40,7 +40,11 @@ class SwiftmailerServiceProvider implements ServiceProviderInterface
}); });
$app['swiftmailer.spooltransport'] = $app->share(function () use ($app) { $app['swiftmailer.spooltransport'] = $app->share(function () use ($app) {
return new \Swift_SpoolTransport(new \Swift_MemorySpool()); return new \Swift_SpoolTransport($app['swiftmailer.spool']);
});
$app['swiftmailer.spool'] = $app->share(function () use ($app) {
return new \Swift_MemorySpool();
}); });
$app['swiftmailer.transport'] = $app->share(function () use ($app) { $app['swiftmailer.transport'] = $app->share(function () use ($app) {
......
...@@ -45,20 +45,21 @@ class SwiftmailerServiceProviderTest extends \PHPUnit_Framework_TestCase ...@@ -45,20 +45,21 @@ class SwiftmailerServiceProviderTest extends \PHPUnit_Framework_TestCase
'swiftmailer.class_path' => __DIR__.'/../../../../vendor/swiftmailer/swiftmailer/lib/classes', 'swiftmailer.class_path' => __DIR__.'/../../../../vendor/swiftmailer/swiftmailer/lib/classes',
)); ));
$spool = new SpoolStub(); $app['swiftmailer.spool'] = $app->share(function () {
$app['swiftmailer.spooltransport'] = new \Swift_SpoolTransport($spool); return new SpoolStub();
});
$app->get('/', function() use ($app) { $app->get('/', function() use ($app) {
$app['mailer']->send(\Swift_Message::newInstance()); $app['mailer']->send(\Swift_Message::newInstance());
}); });
$this->assertCount(0, $spool->getMessages()); $this->assertCount(0, $app['swiftmailer.spool']->getMessages());
$request = Request::create('/'); $request = Request::create('/');
$response = $app->handle($request); $response = $app->handle($request);
$this->assertCount(1, $spool->getMessages()); $this->assertCount(1, $app['swiftmailer.spool']->getMessages());
$app->terminate($request, $response); $app->terminate($request, $response);
$this->assertCount(0, $spool->getMessages()); $this->assertCount(0, $app['swiftmailer.spool']->getMessages());
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment