HTML-StripScripts-Regex

 view release on metacpan or  search on metacpan

t/10basic.t  view on Meta::CPAN

      'filter text' );

test( 'x<?xml version="1.0" encoding="utf-8"?>y',
      'x<!--filtered-->y',
      'filter process' );

test( 'x<!-- foo -->y',
      'x<!--filtered-->y',
      'filter comment' );

test( 'x<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"' . "\n" .
          '   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">y',
      'x<!--filtered-->y',
      'filter declaration' );

{
  package MyFilter;
  use base qw(HTML::StripScripts::Regex);

  sub output_end { 
    my ($self, $text) = @_;

t/50flow.t  view on Meta::CPAN

  [ 'strip comment',     q{x<i>y<!-- hello -->foo}, q{x<i>y<!--filtered-->foo</i>} ],
  [ 'strip comment 2',   q{x<i>y<<!-- hello -->foo}, q{x<i>y&lt;<!--filtered-->foo</i>} ],
  [ 'strip meta ?',      q{foo<?foo jibber>bar}, q{foo<!--filtered-->bar} ],
  [ 'strip meta !',      q{foo<!foo jibber>bar}, q{foo<!--filtered-->bar} ],
  [ 'bare comment',      q{x<!-- hello -->y}, q{x<!--filtered-->y} ],
  [ 'SSI',               q{foo<!--# exec "/tmp/grunion" -->pah}, q{foo<!--filtered-->pah} ],
  [ 'SSI unclosed',      q{foo<!--# exec "/tmp/grunion"}, q{foo&lt;!--# exec &quot;/tmp/grunion&quot;} ],
  [ 'SSI misclosed',     q{foo<!--# exec "/tmp/grunion" >}, q{foo<!--filtered-->} ],
  [ 'xml metatag',       q{x<?xml version="1.0" encoding="utf-8"?>y}, q{x<!--filtered-->y} ],
  [ 'doctype',           <<'END', "<!--filtered-->\n" ],
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
END
  [ 'trailing garbage',  q{<i /(&(&(&(*%&^^*%&*&%)>hello}, q{<i>hello</i>} ],
  [ 'newline confusion', qq{<foo>\n<foo>}, qq{<!--filtered-->\n<!--filtered-->} ],

  [ 'dual attr',         q{<font color=red size=2>foo}, q{<font color="red" size="2">foo</font>} ],
  [ 'dual attr bad',     q{<font color=red size=2 foo=4>foo}, q{<font color="red" size="2">foo</font>} ],
  [ 'dual attr empty',   q{<font color=red foo="" size=2>foo}, q{<font color="red" size="2">foo</font>} ],
  [ 'dual attr noval',   q{<font color=red foo size=2>foo}, q{<font color="red" size="2">foo</font>} ],
  [ 'dual attr mixed',   q{<font color="red" size='2'>foo}, q{<font color="red" size="2">foo</font>} ],



( run in 2.056 seconds using v1.01-cache-2.11-cpan-49f99fa48dc )