class LanguageNegotiatorPluginTest
Same name and namespace in other branches
- 10 core/modules/language/tests/src/Kernel/LanguageNegotiatorPluginTest.php \Drupal\Tests\language\Kernel\LanguageNegotiatorPluginTest
- 11.x core/modules/language/tests/src/Kernel/LanguageNegotiatorPluginTest.php \Drupal\Tests\language\Kernel\LanguageNegotiatorPluginTest
Tests PluginNotFoundException.
@group language
Hierarchy
- class \Drupal\KernelTests\KernelTestBase implements \Drupal\Core\DependencyInjection\ServiceProviderInterface uses \Drupal\KernelTests\AssertLegacyTrait, \Drupal\KernelTests\AssertContentTrait, \Drupal\Tests\RandomGeneratorTrait, \Drupal\Tests\ConfigTestTrait, \Drupal\Tests\ExtensionListTestTrait, \Drupal\Tests\TestRequirementsTrait, \Drupal\Tests\Traits\PhpUnitWarnings, \Drupal\Tests\PhpUnitCompatibilityTrait, \Symfony\Bridge\PhpUnit\ExpectDeprecationTrait extends \PHPUnit\Framework\TestCase
- class \Drupal\Tests\language\Kernel\LanguageNegotiatorPluginTest extends \Drupal\KernelTests\KernelTestBase
Expanded class hierarchy of LanguageNegotiatorPluginTest
File
-
core/
modules/ language/ tests/ src/ Kernel/ LanguageNegotiatorPluginTest.php, line 16
Namespace
Drupal\Tests\language\KernelView source
class LanguageNegotiatorPluginTest extends KernelTestBase {
/**
* {@inheritdoc}
*/
protected static $modules = [
'language',
'user',
];
/**
* Tests for PluginNotFoundException.
*/
public function testLanguageNegotiatorNoPlugin() {
$logger = new BufferingLogger();
$logger_factory = $this->createMock(LoggerChannelFactory::class);
$logger_factory->expects($this->once())
->method('get')
->with('language')
->willReturn($logger);
$this->container
->set('logger.factory', $logger_factory);
$this->installEntitySchema('user');
// Test unavailable plugin.
$config = $this->config('language.types');
$config->set('configurable', [
LanguageInterface::TYPE_URL,
]);
$config->set('negotiation.language_url.enabled', [
self::CLASS => -3,
]);
$config->save();
$languageNegotiator = $this->container
->get('language_negotiator');
$languageNegotiator->setCurrentUser($this->prophesize('Drupal\\Core\\Session\\AccountInterface')
->reveal());
try {
$languageNegotiator->initializeType(LanguageInterface::TYPE_URL);
} catch (PluginNotFoundException $exception) {
$this->fail('Plugin not found exception unhandled.');
}
$log_message = $logger->cleanLogs()[0];
$this->assertEquals('error', $log_message[0]);
$this->assertStringContainsString('The "Drupal\\Tests\\language\\Kernel\\LanguageNegotiatorPluginTest" plugin does not exist.', $log_message[1]);
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.