mirror of
https://github.com/silverstripe/silverstripe-cms
synced 2024-10-22 08:05:56 +02:00
Merge pull request #2808 from creative-commoners/pulls/4.12/invalid-extra-meta
MNT Update unit test to detect invalid HTML
This commit is contained in:
commit
b6737962df
@ -39,6 +39,8 @@ use SilverStripe\View\Parsers\URLSegmentFilter;
|
|||||||
use SilverStripe\View\Shortcodes\EmbedShortcodeProvider;
|
use SilverStripe\View\Shortcodes\EmbedShortcodeProvider;
|
||||||
use TractorCow\Fluent\Extension\FluentSiteTreeExtension;
|
use TractorCow\Fluent\Extension\FluentSiteTreeExtension;
|
||||||
use const RESOURCES_DIR;
|
use const RESOURCES_DIR;
|
||||||
|
use SilverStripe\View\Parsers\HTMLValue;
|
||||||
|
use SilverStripe\HTML5\HTML5Value;
|
||||||
|
|
||||||
class SiteTreeTest extends SapphireTest
|
class SiteTreeTest extends SapphireTest
|
||||||
{
|
{
|
||||||
@ -2023,10 +2025,20 @@ class SiteTreeTest extends SapphireTest
|
|||||||
*/
|
*/
|
||||||
public function testSanitiseExtraMeta(string $extraMeta, string $expected, string $message): void
|
public function testSanitiseExtraMeta(string $extraMeta, string $expected, string $message): void
|
||||||
{
|
{
|
||||||
|
// If using HTML5Value then the 'somethingdodgy' test won't be converted to valid html
|
||||||
|
// However if using the default HTMLValue, then it will be converted to valid html
|
||||||
|
$isDodgyAndUsingHTML5 = strpos($expected, 'somethingdodgy') !== false &&
|
||||||
|
(HTMLValue::create() instanceof HTML5Value);
|
||||||
|
if ($isDodgyAndUsingHTML5) {
|
||||||
|
$this->expectException(ValidationException::class);
|
||||||
|
$this->expectExceptionMessage('Custom Meta Tags does not contain valid HTML');
|
||||||
|
}
|
||||||
$siteTree = new SiteTree();
|
$siteTree = new SiteTree();
|
||||||
$siteTree->ExtraMeta = $extraMeta;
|
$siteTree->ExtraMeta = $extraMeta;
|
||||||
$siteTree->write();
|
$siteTree->write();
|
||||||
$this->assertSame($expected, $siteTree->ExtraMeta, $message);
|
if (!$isDodgyAndUsingHTML5) {
|
||||||
|
$this->assertSame($expected, $siteTree->ExtraMeta, $message);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public function provideSanitiseExtraMeta(): array
|
public function provideSanitiseExtraMeta(): array
|
||||||
|
Loading…
Reference in New Issue
Block a user