home
/
zktecojo
/
public_html
/
htmlpurifier
/
tests
/
HTMLPurifier
/
Strategy
➕ New
📤 Upload
✎ Editing:
RemoveForeignElementsTest.php
← Back
<?php class HTMLPurifier_Strategy_RemoveForeignElementsTest extends HTMLPurifier_StrategyHarness { public function setUp() { parent::setUp(); $this->obj = new HTMLPurifier_Strategy_RemoveForeignElements(); } public function testBlankInput() { $this->assertResult(''); } public function testPreserveRecognizedElements() { $this->assertResult('This is <b>bold text</b>.'); } public function testRemoveForeignElements() { $this->assertResult( '<asdf>Bling</asdf><d href="bang">Bong</d><foobar />', 'BlingBong' ); } public function testRemoveScriptAndContents() { $this->assertResult( '<script>alert();</script>', '' ); } public function testRemoveStyleAndContents() { $this->assertResult( '<style>.foo {blink;}</style>', '' ); } public function testRemoveOnlyScriptTagsLegacy() { $this->config->set('Core.RemoveScriptContents', false); $this->assertResult( '<script>alert();</script>', 'alert();' ); } public function testRemoveOnlyScriptTags() { $this->config->set('Core.HiddenElements', array()); $this->assertResult( '<script>alert();</script>', 'alert();' ); } public function testRemoveInvalidImg() { $this->assertResult('<img />', ''); } public function testPreserveValidImg() { $this->assertResult('<img src="foobar.gif" alt="foobar.gif" />'); } public function testPreserveInvalidImgWhenRemovalIsDisabled() { $this->config->set('Core.RemoveInvalidImg', false); $this->assertResult('<img />'); } public function testTextifyCommentedScriptContents() { $this->config->set('HTML.Trusted', true); $this->config->set('Output.CommentScriptContents', false); // simplify output $this->assertResult( '<script type="text/javascript"><!-- alert(<b>bold</b>); // --></script>', '<script type="text/javascript"> alert(<b>bold</b>); // </script>' ); } public function testRequiredAttributesTestNotPerformedOnEndTag() { $def = $this->config->getHTMLDefinition(true); $def->addElement('f', 'Block', 'Optional: #PCDATA', false, array('req*' => 'Text')); $this->assertResult('<f req="text">Foo</f> Bar'); } public function testPreserveCommentsWithHTMLTrusted() { $this->config->set('HTML.Trusted', true); $this->assertResult('<!-- foo -->'); } public function testRemoveTrailingHyphensInComment() { $this->config->set('HTML.Trusted', true); $this->assertResult('<!-- foo ----->', '<!-- foo -->'); } public function testCollapseDoubleHyphensInComment() { $this->config->set('HTML.Trusted', true); $this->assertResult('<!-- bo --- asdf--as -->', '<!-- bo - asdf-as -->'); } public function testPreserveCommentsWithLookup() { $this->config->set('HTML.AllowedComments', array('allowed')); $this->assertResult('<!-- allowed --><!-- not allowed -->', '<!-- allowed -->'); } public function testPreserveCommentsWithRegexp() { $this->config->set('HTML.AllowedCommentsRegexp', '/^allowed[1-9]$/'); $this->assertResult('<!-- allowed1 --><!-- not allowed -->', '<!-- allowed1 -->'); } } // vim: et sw=4 sts=4
💾 Save Changes
Cancel
📤 Upload File
×
Select File
Upload
Cancel
➕ Create New
×
Type
📄 File
📁 Folder
Name
Create
Cancel
✎ Rename Item
×
Current Name
New Name
Rename
Cancel
🔐 Change Permissions
×
Target File
Permission (e.g., 0755, 0644)
0755
0644
0777
Apply
Cancel