Debian lenny version packages
[pkg-perl] / deb-src / libhtml-parser-perl / libhtml-parser-perl-3.56 / t / largetags.t
1 # Exercise the tokenpos buffer allocation routines by feeding it
2 # very large tags.
3
4 use Test::More tests => 2;
5
6 use strict;
7 use HTML::Parser ();
8
9 my $p = HTML::Parser->new(api_version => 3);
10
11 $p->handler("start" =>
12             sub {
13                 my $tp = shift;
14                 #diag int(@$tp), " - ", join(", ", @$tp);
15                 is(@$tp, 2 + 26 * 6 * 4);
16             }, "tokenpos");
17
18 $p->handler("declaration" =>
19             sub {
20                 my $t = shift;
21                 #diag int(@$t), " - @$t";
22                 is(@$t, 26 * 6 * 2 + 1);
23             }, "tokens");
24
25 $p->parse("<a ");
26 for ("aa" .. "fz") {
27     $p->parse("$_=1 ");
28 }
29 $p->parse(">");
30
31 $p->parse("<!DOCTYPE ");
32 for ("aa" .. "fz") {
33     $p->parse("$_ -- $_ -- ");
34 }
35 $p->parse(">");
36 $p->eof;
37 exit;
38