
| Current Path : /var/www/html/german-vocational.cn/core/modules/dblog/tests/src/Kernel/ |
Linux ift1.ift-informatik.de 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 |
| Current File : /var/www/html/german-vocational.cn/core/modules/dblog/tests/src/Kernel/DbLogControllerTest.php |
<?php
namespace Drupal\Tests\dblog\Kernel;
use Drupal\dblog\Controller\DbLogController;
use Drupal\KernelTests\KernelTestBase;
/**
* Tests for the DbLogController class.
*
* @group dblog
*/
class DbLogControllerTest extends KernelTestBase {
/**
* {@inheritdoc}
*/
public static $modules = ['dblog', 'user'];
public function setUp() {
parent::setUp();
$this->installEntitySchema('user');
$this->installSchema('dblog', ['watchdog']);
}
/**
* Tests links with non latin characters.
*/
public function testNonLatinCharacters() {
$link = 'hello-
科州的小九寨沟绝美高山湖泊酱凉拌素鸡照烧鸡黄玫瑰
科州的小九寨沟绝美高山湖泊酱凉拌素鸡照烧鸡黄玫瑰
科州的小九寨沟绝美高山湖泊酱凉拌素鸡照烧鸡黄玫瑰
科州的小九寨沟绝美高山湖泊酱凉拌素鸡照烧鸡黄玫瑰
科州的小九寨沟绝美高山湖泊酱凉拌素鸡照烧鸡黄玫瑰
科州的小九寨沟绝美高山湖泊酱凉拌素鸡照烧鸡黄玫瑰
科州的小九寨沟绝美高山湖泊酱凉拌素鸡照烧鸡黄玫瑰
科州的小九寨沟绝美高山湖泊酱凉拌素鸡照烧鸡黄玫瑰
科州的小九寨沟绝美高山湖泊酱凉拌素鸡照烧鸡黄玫瑰
科州的小九寨沟绝美高山湖泊酱凉拌素鸡照烧鸡黄玫瑰
科州的小九寨沟绝美高山湖泊酱凉拌素鸡照烧鸡黄玫瑰
科州的小九寨沟绝美高山湖泊酱凉拌素鸡照烧鸡黄玫瑰
科州的小九寨沟绝美高山湖泊酱凉拌素鸡照烧鸡黄玫瑰
科州的小九寨沟绝美高山湖泊酱凉拌素鸡照烧鸡黄玫瑰';
\Drupal::logger('my_module')->warning('test', ['link' => $link]);
$log = \Drupal::database()
->select('watchdog', 'w')
->fields('w', ['link'])
->condition('link', '', '<>')
->execute()
->fetchField();
$this->assertEquals($log, $link);
}
/**
* Tests corrupted log entries can still display available data.
*/
public function testDbLogCorrupted() {
$dblog_controller = DbLogController::create($this->container);
// Check message with properly serialized data.
$message = (object) [
'message' => 'Sample message with placeholder: @placeholder',
'variables' => serialize(['@placeholder' => 'test placeholder']),
];
$this->assertEquals('Sample message with placeholder: test placeholder', $dblog_controller->formatMessage($message));
// Check that controller work with corrupted data.
$message->variables = 'BAD SERIALIZED DATA';
$formatted = $dblog_controller->formatMessage($message);
$this->assertEquals('Log data is corrupted and cannot be unserialized: Sample message with placeholder: @placeholder', $formatted);
}
}