3 use Test::More ;# skip_all => "Totally doesn't work yet";
5 # Test that contant of elements defined as containing intrinsic CDATA are not
8 # NB: This tests HTML parsing rules. XHTML is different.
10 my $template = <<HTML;
16 /* <textarea>Unmodified</textarea> */
21 <textarea>Unmodified</textarea>
24 document.write('<p>');
26 document.write('<div>');
28 document.write('hello, world');
30 document.write('</p>');
32 document.write('</div>');
37 my $expected_p = <<HTML;
43 /* <textarea>Unmodified</textarea> */
48 <textarea>Unmodified</textarea>
51 document.write('<p>');
53 document.write('<div>');
55 document.write('hello, world');
57 document.write('</p>');
59 document.write('</div>');
64 my $expected_t = <<HTML;
70 /* <textarea>Unmodified</textarea> */
75 <textarea>Replaced</textarea>
78 document.write('<p>');
80 document.write('<div>');
82 document.write('hello, world');
84 document.write('</p>');
86 document.write('</div>');
91 my $replaced_p = HTML::Zoom->from_html($template)->select('p')->replace_content('Replaced')->to_html;
92 is($replaced_p, $expected_p, "Script element parsed as CDATA");
94 my $replaced_t = HTML::Zoom->from_html($template)->select('textarea')->replace_content('Replaced')->to_html;
95 is($replaced_t, $expected_t, "Style element parsed as CDATA");