public function MailManagerTest::testGetInstance in Drupal 10
Same name and namespace in other branches
- 8 core/tests/Drupal/Tests/Core/Mail/MailManagerTest.php \Drupal\Tests\Core\Mail\MailManagerTest::testGetInstance()
 - 9 core/tests/Drupal/Tests/Core/Mail/MailManagerTest.php \Drupal\Tests\Core\Mail\MailManagerTest::testGetInstance()
 
Tests the getInstance method.
@covers ::getInstance
File
- core/
tests/ Drupal/ Tests/ Core/ Mail/ MailManagerTest.php, line 129  - Contains \Drupal\Tests\Core\Mail\MailManagerTest.
 
Class
- MailManagerTest
 - @coversDefaultClass \Drupal\Core\Mail\MailManager @group Mail
 
Namespace
Drupal\Tests\Core\MailCode
public function testGetInstance() {
  $interface = [
    'default' => 'php_mail',
    'example_testkey' => 'test_mail_collector',
  ];
  $this
    ->setUpMailManager($interface);
  // Test that an unmatched message_id returns the default plugin instance.
  $options = [
    'module' => 'foo',
    'key' => 'bar',
  ];
  $instance = $this->mailManager
    ->getInstance($options);
  $this
    ->assertInstanceOf('Drupal\\Core\\Mail\\Plugin\\Mail\\PhpMail', $instance);
  // Test that a matching message_id returns the specified plugin instance.
  $options = [
    'module' => 'example',
    'key' => 'testkey',
  ];
  $instance = $this->mailManager
    ->getInstance($options);
  $this
    ->assertInstanceOf('Drupal\\Core\\Mail\\Plugin\\Mail\\TestMailCollector', $instance);
}