drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']); /** @var \Drupal\filter\Entity\FilterFormat $filtered_html_format */ $filtered_html_format = FilterFormat::load('filtered_html'); $filtered_html_permission = $filtered_html_format->getPermissionName(); user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, [$filtered_html_permission]); $this->adminUser = $this->drupalCreateUser(['administer modules', 'administer filters', 'administer site configuration']); $this->drupalLogin($this->adminUser); } /** * Tests removal of filtered content when an active filter is disabled. * * Tests that filtered content is emptied when an actively used filter module * is disabled. */ public function testDisableFilterModule() { // Create a new node. $node = $this->drupalCreateNode(['promote' => 1]); $body_raw = $node->body->value; $format_id = $node->body->format; $this->drupalGet('node/' . $node->id()); $this->assertText($body_raw, 'Node body found.'); // Enable the filter_test_replace filter. $edit = [ 'filters[filter_test_replace][status]' => 1, ]; $this->drupalPostForm('admin/config/content/formats/manage/' . $format_id, $edit, t('Save configuration')); // Verify that filter_test_replace filter replaced the content. $this->drupalGet('node/' . $node->id()); $this->assertNoText($body_raw, 'Node body not found.'); $this->assertText('Filter: Testing filter', 'Testing filter output found.'); // Disable the text format entirely. $this->drupalPostForm('admin/config/content/formats/manage/' . $format_id . '/disable', [], t('Disable')); // Verify that the content is empty, because the text format does not exist. $this->drupalGet('node/' . $node->id()); $this->assertNoText($body_raw, 'Node body not found.'); } /** * Tests that security filters are enforced even when marked to be skipped. */ public function testSkipSecurityFilters() { $text = "Text with some disallowed tags: