123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120 |
- <?php
- class HTMLPurifier_Injector_RemoveEmptyTest extends HTMLPurifier_InjectorHarness
- {
- public function setup()
- {
- parent::setup();
- $this->config->set('AutoFormat.RemoveEmpty', true);
- }
- public function testPreserve()
- {
- $this->assertResult('<b>asdf</b>');
- }
- public function testRemove()
- {
- $this->assertResult('<b></b>', '');
- }
- public function testRemoveWithSpace()
- {
- $this->assertResult('<b> </b>', '');
- }
- public function testRemoveWithAttr()
- {
- $this->assertResult('<b class="asdf"></b>', '');
- }
- public function testRemoveIdAndName()
- {
- $this->assertResult('<a id="asdf" name="asdf"></a>', '');
- }
- public function testPreserveColgroup()
- {
- $this->assertResult('<colgroup></colgroup>');
- }
- public function testPreserveId()
- {
- $this->config->set('Attr.EnableID', true);
- $this->assertResult('<a id="asdf"></a>');
- }
- public function testPreserveName()
- {
- $this->config->set('Attr.EnableID', true);
- $this->assertResult('<a name="asdf"></a>');
- }
- public function testRemoveNested()
- {
- $this->assertResult('<b><i></i></b>', '');
- }
- public function testRemoveNested2()
- {
- $this->assertResult('<b><i><u></u></i></b>', '');
- }
- public function testRemoveNested3()
- {
- $this->assertResult('<b> <i> <u> </u> </i> </b>', '');
- }
- public function testRemoveNbsp()
- {
- $this->config->set('AutoFormat.RemoveEmpty.RemoveNbsp', true);
- $this->assertResult('<b> </b>', '');
- }
- public function testRemoveNbspMix()
- {
- $this->config->set('AutoFormat.RemoveEmpty.RemoveNbsp', true);
- $this->assertResult('<b> </b>', '');
- }
- public function testRemoveLi()
- {
- $this->assertResult("<ul><li>\n\n\n</li></ul>", '');
- }
- public function testDontRemoveNbsp()
- {
- $this->config->set('AutoFormat.RemoveEmpty.RemoveNbsp', true);
- $this->assertResult('<td> </b>', "<td>\xC2\xA0</td>");
- }
- public function testRemoveNbspExceptionsSpecial()
- {
- $this->config->set('AutoFormat.RemoveEmpty.RemoveNbsp', true);
- $this->config->set('AutoFormat.RemoveEmpty.RemoveNbsp.Exceptions', 'b');
- $this->assertResult('<b> </b>', "<b>\xC2\xA0</b>");
- }
- public function testRemoveIframe()
- {
- $this->config->set('HTML.SafeIframe', true);
- $this->assertResult('<iframe></iframe>', '');
- }
- public function testNoRemoveIframe()
- {
- $this->config->set('HTML.SafeIframe', true);
- $this->assertResult('<iframe src="http://google.com"></iframe>', '');
- }
- public function testRemoveDisallowedIframe()
- {
- $this->config->set('HTML.SafeIframe', true);
- $this->config->set('URI.SafeIframeRegexp', '%^http://www.youtube.com/embed/%');
- $this->assertResult('<iframe src="http://google.com"></iframe>', '');
- }
- }
- // vim: et sw=4 sts=4
|