function ValidatorsTest::test
Same name in other branches
- 10 core/modules/ckeditor5/tests/src/Kernel/ValidatorsTest.php \Drupal\Tests\ckeditor5\Kernel\ValidatorsTest::test()
- 11.x core/modules/ckeditor5/tests/src/Kernel/ValidatorsTest.php \Drupal\Tests\ckeditor5\Kernel\ValidatorsTest::test()
@covers \Drupal\ckeditor5\Plugin\Validation\Constraint\ToolbarItemConstraintValidator @covers \Drupal\ckeditor5\Plugin\Validation\Constraint\ToolbarItemDependencyConstraintValidator @covers \Drupal\ckeditor5\Plugin\Validation\Constraint\EnabledConfigurablePluginsConstraintValidator @covers \Drupal\ckeditor5\Plugin\Validation\Constraint\CKEditor5ElementConstraintValidator @covers \Drupal\ckeditor5\Plugin\Validation\Constraint\StyleSensibleElementConstraintValidator @covers \Drupal\ckeditor5\Plugin\Validation\Constraint\UniqueLabelInListConstraintValidator @dataProvider provider
Parameters
array $ckeditor5_settings: The CKEditor 5 settings to test.
array $expected_violations: All expected violations for the given CKEditor 5 settings, with property path as keys and message as values.
File
-
core/
modules/ ckeditor5/ tests/ src/ Kernel/ ValidatorsTest.php, line 76
Class
- ValidatorsTest
- @covers \Drupal\ckeditor5\Plugin\Validation\Constraint\ToolbarItemConstraintValidator @covers \Drupal\ckeditor5\Plugin\Validation\Constraint\ToolbarItemDependencyConstraintValidator @covers…
Namespace
Drupal\Tests\ckeditor5\KernelCode
public function test(array $ckeditor5_settings, array $expected_violations) {
// The data provider is unable to access services, so the test scenario of
// testing with CKEditor 5's default settings is partially provided here.
if ($ckeditor5_settings === [
'__DEFAULT__',
]) {
$ckeditor5_settings = \Drupal::service('plugin.manager.editor')->createInstance('ckeditor5')
->getDefaultSettings();
}
FilterFormat::create([
'format' => 'dummy',
'name' => 'Dummy',
])->save();
$editor = Editor::create([
'format' => 'dummy',
'editor' => 'ckeditor5',
'settings' => $ckeditor5_settings,
'image_upload' => [],
]);
$typed_config = $this->typedConfig
->createFromNameAndData($editor->getConfigDependencyName(), $editor->toArray());
$violations = $typed_config->validate();
$actual_violations = [];
foreach ($violations as $violation) {
$actual_violations[$violation->getPropertyPath()] = (string) $violation->getMessage();
}
$this->assertSame($expected_violations, $actual_violations);
if (empty($expected_violations)) {
$this->assertConfigSchema($this->typedConfig, $editor->getConfigDependencyName(), $typed_config->getValue());
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.