Updated to Drupal 8.6.4, which is PHP 7.3 friendly. Also updated HTMLaw library....
[yaffs-website] / web / core / modules / filter / tests / src / Kernel / FilterSettingsTest.php
1 <?php
2
3 namespace Drupal\Tests\filter\Kernel;
4
5 use Drupal\KernelTests\KernelTestBase;
6 use Drupal\filter\Entity\FilterFormat;
7
8 /**
9  * Tests filter settings.
10  *
11  * @group filter
12  */
13 class FilterSettingsTest extends KernelTestBase {
14
15   /**
16    * Modules to enable.
17    *
18    * @var array
19    */
20   public static $modules = ['filter'];
21
22   /**
23    * Tests explicit and implicit default settings for filters.
24    */
25   public function testFilterDefaults() {
26     $filter_info = $this->container->get('plugin.manager.filter')->getDefinitions();
27
28     // Create text format using filter default settings.
29     $filter_defaults_format = FilterFormat::create([
30       'format' => 'filter_defaults',
31       'name' => 'Filter defaults',
32     ]);
33     $filter_defaults_format->save();
34
35     // Verify that default weights defined in hook_filter_info() were applied.
36     $saved_settings = [];
37     foreach ($filter_defaults_format->filters() as $name => $filter) {
38       $expected_weight = $filter_info[$name]['weight'];
39       $this->assertEqual($filter->weight, $expected_weight, format_string('@name filter weight %saved equals %default', [
40         '@name' => $name,
41         '%saved' => $filter->weight,
42         '%default' => $expected_weight,
43       ]));
44       $saved_settings[$name]['weight'] = $expected_weight;
45     }
46
47     // Re-save the text format.
48     $filter_defaults_format->save();
49     // Reload it from scratch.
50     filter_formats_reset();
51
52     // Verify that saved filter settings have not been changed.
53     foreach ($filter_defaults_format->filters() as $name => $filter) {
54       $this->assertEqual($filter->weight, $saved_settings[$name]['weight'], format_string('@name filter weight %saved equals %previous', [
55         '@name' => $name,
56         '%saved' => $filter->weight,
57         '%previous' => $saved_settings[$name]['weight'],
58       ]));
59     }
60   }
61
62 }