function SourceEditingPluginTest::providerGetDynamicPluginConfig

Same name and namespace in other branches
  1. 9 core/modules/ckeditor5/tests/src/Unit/SourceEditingPluginTest.php \Drupal\Tests\ckeditor5\Unit\SourceEditingPluginTest::providerGetDynamicPluginConfig()
  2. 11.x core/modules/ckeditor5/tests/src/Unit/SourceEditingPluginTest.php \Drupal\Tests\ckeditor5\Unit\SourceEditingPluginTest::providerGetDynamicPluginConfig()

Provides a list of configs to test.

File

core/modules/ckeditor5/tests/src/Unit/SourceEditingPluginTest.php, line 21

Class

SourceEditingPluginTest
@coversDefaultClass \Drupal\ckeditor5\Plugin\CKEditor5Plugin\SourceEditing[[api-linebreak]] @group ckeditor5 @internal

Namespace

Drupal\Tests\ckeditor5\Unit

Code

public static function providerGetDynamicPluginConfig() : array {
  return [
    'Empty array of allowed tags' => [
      [
        'allowed_tags' => [],
      ],
      [
        'htmlSupport' => [
          'allow' => [],
          'allowEmpty' => [],
        ],
      ],
    ],
    'Simple' => [
      [
        'allowed_tags' => [
          '<foo1>',
          '<foo2 bar>',
          '<foo3 bar="baz">',
          '<foo4 bar="baz qux">',
          '<foo5 bar="baz" qux="foo">',
        ],
      ],
      [
        'htmlSupport' => [
          'allow' => [
            [
              'name' => 'foo1',
            ],
            [
              'name' => 'foo2',
              'attributes' => [
                [
                  'key' => 'bar',
                  'value' => TRUE,
                ],
              ],
            ],
            [
              'name' => 'foo3',
              'attributes' => [
                [
                  'key' => 'bar',
                  'value' => [
                    'regexp' => [
                      'pattern' => '/^(baz)$/',
                    ],
                  ],
                ],
              ],
            ],
            [
              'name' => 'foo4',
              'attributes' => [
                [
                  'key' => 'bar',
                  'value' => [
                    'regexp' => [
                      'pattern' => '/^(baz|qux)$/',
                    ],
                  ],
                ],
              ],
            ],
            [
              'name' => 'foo5',
              'attributes' => [
                [
                  'key' => 'bar',
                  'value' => [
                    'regexp' => [
                      'pattern' => '/^(baz)$/',
                    ],
                  ],
                ],
                [
                  'key' => 'qux',
                  'value' => [
                    'regexp' => [
                      'pattern' => '/^(foo)$/',
                    ],
                  ],
                ],
              ],
            ],
          ],
          'allowEmpty' => [
            'foo1',
            'foo2',
            'foo3',
            'foo4',
            'foo5',
          ],
        ],
      ],
    ],
    'Prefix wildcards' => [
      [
        'allowed_tags' => [
          '<foo1 bar-*>',
          '<foo2 bar-*="baz">',
          '<foo3 bar-*="baz qux-*">',
          '<foo2 bar="baz-*">',
          '<foo3 bar="baz qux-*">',
        ],
      ],
      [
        'htmlSupport' => [
          'allow' => [
            [
              'name' => 'foo1',
              'attributes' => [
                [
                  'key' => [
                    'regexp' => [
                      'pattern' => '/^bar-.*$/',
                    ],
                  ],
                  'value' => TRUE,
                ],
              ],
            ],
            [
              'name' => 'foo2',
              'attributes' => [
                [
                  'key' => [
                    'regexp' => [
                      'pattern' => '/^bar-.*$/',
                    ],
                  ],
                  'value' => [
                    'regexp' => [
                      'pattern' => '/^(baz)$/',
                    ],
                  ],
                ],
                [
                  'key' => 'bar',
                  'value' => [
                    'regexp' => [
                      'pattern' => '/^(baz-.*)$/',
                    ],
                  ],
                ],
              ],
            ],
            [
              'name' => 'foo3',
              'attributes' => [
                [
                  'key' => [
                    'regexp' => [
                      'pattern' => '/^bar-.*$/',
                    ],
                  ],
                  'value' => [
                    'regexp' => [
                      'pattern' => '/^(baz|qux-.*)$/',
                    ],
                  ],
                ],
                [
                  'key' => 'bar',
                  'value' => [
                    'regexp' => [
                      'pattern' => '/^(baz|qux-.*)$/',
                    ],
                  ],
                ],
              ],
            ],
          ],
          'allowEmpty' => [
            'foo1',
            'foo2',
            'foo3',
          ],
        ],
      ],
    ],
  ];
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.