#!perl use utf8; use Test::More tests => 8; BEGIN { use_ok( 'HTML::ExtractMain', 'extract_main_html' ); } empty_content_tests(); simple_content(); simple_treebuilder_content(); output_types(); sub empty_content_tests { local $SIG{__WARN__} = sub { }; is( extract_main_html(), undef, 'need defined content' ); is( extract_main_html(''), undef, 'need non-empty content' ); } sub simple_content { is( extract_main_html('

Hi!

'), '

Hi!

', 'simple content works' ); } sub simple_treebuilder_content { require HTML::TreeBuilder; my $simple = '

Hi!

'; my $tree = HTML::TreeBuilder->new_from_content($simple); my $got = extract_main_html($tree); is ($got, $simple, 'simple content as TreeBuilder'); } sub output_types { my $html = <<'END'; Perl

Perl

Perl ist eine freie, plattformunabhängige und interpretierte Programmiersprache (Skriptsprache), die mehrere Programmierparadigmen unterstützt.

END my $r = extract_main_html($html); chomp $r if $r; is( $r, '

Perl

Perl ist eine freie, plattformunabhängige und interpretierte Programmiersprache (Skriptsprache), die mehrere Programmierparadigmen unterstützt.

', 'body extracted as XHTML' ); $r = extract_main_html($html, output_type => 'HTML'); chomp $r if $r; is( $r, '

Perl

Perl ist eine freie, plattformunabhängige und interpretierte Programmiersprache (Skriptsprache), die mehrere Programmierparadigmen unterstützt.

', 'body extracted as HTML' ); my $rtree = extract_main_html($html, output_type => 'tree'); is( $rtree->starttag, '
', 'body extracted as tree' ); } # Local Variables: # mode: perltidy # End: