Test::Inline is nice for testing the examples, but not necessary Checking if your kit is complete... Looks good Writing Makefile for Test::HTML::Content cp lib/Test/HTML/Content.pm blib/lib/Test/HTML/Content.pm cp lib/Test/HTML/Content/XPathExtensions.pm blib/lib/Test/HTML/Content/XPathExtensions.pm cp lib/Test/HTML/Content/NoXPath.pm blib/lib/Test/HTML/Content/NoXPath.pm Manifying blib/man3/Test::HTML::Content.3 Manifying blib/man3/Test::HTML::Content::XPathExtensions.3 Manifying blib/man3/Test::HTML::Content::NoXPath.3 PERL_DL_NONLAZY=1 /home/cpanrun/pa-risc1.1/build/5.8.2/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(1, 'blib/lib', 'blib/arch')" t/*.t t/00-prerequisites..............................1..3 ok 1 - use Test::Builder; ok 2 - use HTML::TokeParser; ok 3 - use Test::HTML::Content; ok t/01-fallback-libxml............................1..4 ok 1 # skip Need Test::Without::Module to test the fallback ok 2 # skip Need Test::Without::Module to test the fallback ok 3 # skip Need Test::Without::Module to test the fallback ok 4 # skip Need Test::Without::Module to test the fallback ok 4/4 skipped: Need Test::Without::Module to test the fallback t/01-fallback-pureperl..........................1..4 ok 1 # skip Need Test::Without::Module to test the fallback ok 2 # skip Need Test::Without::Module to test the fallback ok 3 # skip Need Test::Without::Module to test the fallback ok 4 # skip Need Test::Without::Module to test the fallback ok 4/4 skipped: Need Test::Without::Module to test the fallback t/01-fallback-xpath.............................1..4 ok 1 # skip Need Test::Without::Module to test the fallback ok 2 # skip Need Test::Without::Module to test the fallback ok 3 # skip Need Test::Without::Module to test the fallback ok 4 # skip Need Test::Without::Module to test the fallback ok 4/4 skipped: Need Test::Without::Module to test the fallback t/01-internal-api...............................1..197 ok 1 - use Test::HTML::Content; ok 2 - dwim compare(foo=~bar) ok 3 - dwim compare(foo=~...) ok 4 - dwim compare(bar=~foo) ok 5 - dwim compare(bar=~barra) ok 6 - dwim compare(barra=~bar) ok 7 - dwim compare(foo=~(?-xism:bar)) ok 8 - dwim compare(foo=~(?-xism:...)) ok 9 - dwim compare(bar=~(?-xism:foo)) ok 10 - dwim compare(bar=~(?-xism:barra)) ok 11 - dwim compare(barra=~(?-xism:bar)) ok 12 - dwim compare(foo=~(?-xism:^oo)) ok 13 - dwim compare(foo=~(?-xism:oo$)) ok 14 - dwim compare(FOO=~(?-xism:foo$)) ok 15 - dwim compare(FOO=~(?i-xsm:foo$)) ok 16 - match comment(hidden message=~(?-xism:hidden\s+message)) ok 17 - match comment(FOO=~(?i-xsm:foo$)) ok 18 - match comment( FOO=~(?i-xsm:foo$)) ok 19 - match comment(FOO =~(?i-xsm:foo$)) ok 20 - match comment(FOO =~(?i-xsm:^foo$)) ok 21 - match comment( hidden message =~hidden message) ok 22 - match comment( hidden message =~hidden message) ok 23 - match declaration(hidden message=~(?-xism:hidden\s+message)) ok 24 - match declaration(FOO=~(?i-xsm:foo$)) ok 25 - match declaration( FOO=~(?i-xsm:foo$)) ok 26 - match declaration(FOO =~(?i-xsm:foo$)) ok 27 - match declaration(FOO =~(?i-xsm:^foo$)) ok 28 - match declaration( hidden message =~hidden message) ok 29 - match declaration( hidden message =~hidden message) ok 30 - match text(hidden message=~(?-xism:hidden\s+message)) ok 31 - match text(FOO=~(?i-xsm:foo$)) ok 32 - match text( FOO=~(?i-xsm:foo$)) ok 33 - match text(FOO =~(?i-xsm:foo$)) ok 34 - match text(FOO =~(?i-xsm:^foo$)) ok 35 - match text( hidden message =~hidden message) ok 36 - match text( hidden message =~hidden message) ok 37 - match(HASH(0x404572cc)=~HASH(0x4045ace4)=~href) ok 38 - match(HASH(0x4045ae1c)=~HASH(0x4045b9f8)=~alt) ok 39 - match(HASH(0x4045ba10)=~HASH(0x4045ba40)=~alt) ok 40 - match(HASH(0x4045ba64)=~HASH(0x4045ba94)=~href) ok 41 - match(HASH(0x4045bab8)=~HASH(0x4045bae8)=~href) ok 42 - match(HASH(0x4045bb0c)=~HASH(0x4045bb3c)=~href) ok 43 - match(HASH(0x4045bb6c)=~HASH(0x4045bb9c)=~href) ok 44 - match(HASH(0x4045bbd8)=~HASH(0x4045bbfc)=~href) ok 45 - match(HASH(0x4045bc44)=~HASH(0x4045bc74)=~href) ok 46 - Counting tags 1 ok 47 - Checking possible candidates ok 48 - Counting tags 2 ok 49 - Checking possible candidates ok 50 - Counting tags 3 ok 51 - Checking possible candidates ok 52 - Counting tags 4 ok 53 - Checking possible candidates ok 54 - Counting tags 6 ok 55 - Checking possible candidates ok 56 - Counting tags 7 ok 57 - Checking possible candidates ok 58 - Counting tags 8 ok 59 - Checking possible candidates ok 60 - Counting tags 9 ok 61 - Checking possible candidates ok 62 - Counting tags 10 ok 63 - Checking possible candidates ok 64 - Counting comments 0 ok 65 - Counting possible candidates 0 ok 66 - Counting comments 1 ok 67 - Counting possible candidates 1 ok 68 - Counting comments 2 ok 69 - Counting possible candidates 2 ok 70 - Counting comments 3 ok 71 - Counting possible candidates 3 ok 72 - Counting comments 4 ok 73 - Counting possible candidates 4 ok 74 - Counting comments 5 ok 75 - Counting possible candidates 5 ok 76 - Counting comments 6 ok 77 - Counting possible candidates 6 ok 78 - Counting comments 7 ok 79 - Counting possible candidates 7 ok 80 - Counting comments 8 ok 81 - Counting possible candidates 8 ok 82 - Counting comments 9 ok 83 - Counting possible candidates 9 ok 84 - Counting comments 10 ok 85 - Counting possible candidates 10 ok 86 - Counting comments 11 ok 87 - Counting possible candidates 11 ok 88 - Counting text occurrences 0 ok 89 - Counting possible candidates 0 ok 90 - counting text occurrences 1 ok 91 - Counting possible candidates 1 ok 92 - counting text occurrences 2 ok 93 - Counting possible candidates 2 ok 94 - counting text occurrences 4 ok 95 - Counting possible candidates 4 ok 96 - counting text occurrences 5 ok 97 - Counting possible candidates 5 ok 98 - Checking RE for text 6 ok 99 - Counting possible candidates 6 ok 100 - dwim compare(foo=~bar) ok 101 - dwim compare(foo=~...) ok 102 - dwim compare(bar=~foo) ok 103 - dwim compare(bar=~barra) ok 104 - dwim compare(barra=~bar) ok 105 - dwim compare(foo=~(?-xism:bar)) ok 106 - dwim compare(foo=~(?-xism:...)) ok 107 - dwim compare(bar=~(?-xism:foo)) ok 108 - dwim compare(bar=~(?-xism:barra)) ok 109 - dwim compare(barra=~(?-xism:bar)) ok 110 - dwim compare(foo=~(?-xism:^oo)) ok 111 - dwim compare(foo=~(?-xism:oo$)) ok 112 - dwim compare(FOO=~(?-xism:foo$)) ok 113 - dwim compare(FOO=~(?i-xsm:foo$)) ok 114 - match comment(hidden message=~(?-xism:hidden\s+message)) ok 115 - match comment(FOO=~(?i-xsm:foo$)) ok 116 - match comment( FOO=~(?i-xsm:foo$)) ok 117 - match comment(FOO =~(?i-xsm:foo$)) ok 118 - match comment(FOO =~(?i-xsm:^foo$)) ok 119 - match comment( hidden message =~hidden message) ok 120 - match comment( hidden message =~hidden message) ok 121 - match declaration(hidden message=~(?-xism:hidden\s+message)) ok 122 - match declaration(FOO=~(?i-xsm:foo$)) ok 123 - match declaration( FOO=~(?i-xsm:foo$)) ok 124 - match declaration(FOO =~(?i-xsm:foo$)) ok 125 - match declaration(FOO =~(?i-xsm:^foo$)) ok 126 - match declaration( hidden message =~hidden message) ok 127 - match declaration( hidden message =~hidden message) ok 128 - match text(hidden message=~(?-xism:hidden\s+message)) ok 129 - match text(FOO=~(?i-xsm:foo$)) ok 130 - match text( FOO=~(?i-xsm:foo$)) ok 131 - match text(FOO =~(?i-xsm:foo$)) ok 132 - match text(FOO =~(?i-xsm:^foo$)) ok 133 - match text( hidden message =~hidden message) ok 134 - match text( hidden message =~hidden message) ok 135 - match(HASH(0x404572cc)=~HASH(0x4045ace4)=~href) ok 136 - match(HASH(0x4045ae1c)=~HASH(0x4045b9f8)=~alt) ok 137 - match(HASH(0x4045ba10)=~HASH(0x4045ba40)=~alt) ok 138 - match(HASH(0x4045ba64)=~HASH(0x4045ba94)=~href) ok 139 - match(HASH(0x4045bab8)=~HASH(0x4045bae8)=~href) ok 140 - match(HASH(0x4045bb0c)=~HASH(0x4045bb3c)=~href) ok 141 - match(HASH(0x4045bb6c)=~HASH(0x4045bb9c)=~href) ok 142 - match(HASH(0x4045bbd8)=~HASH(0x4045bbfc)=~href) ok 143 - match(HASH(0x4045bc44)=~HASH(0x4045bc74)=~href) ok 144 - Counting tags 1 ok 145 - Checking possible candidates ok 146 - Counting tags 2 ok 147 - Checking possible candidates ok 148 - Counting tags 3 ok 149 - Checking possible candidates ok 150 - Counting tags 4 ok 151 - Checking possible candidates ok 152 - Counting tags 6 ok 153 - Checking possible candidates ok 154 - Counting tags 7 ok 155 - Checking possible candidates ok 156 - Counting tags 8 ok 157 - Checking possible candidates ok 158 - Counting tags 9 ok 159 - Checking possible candidates ok 160 - Counting tags 10 ok 161 - Checking possible candidates ok 162 - Counting comments 0 ok 163 - Counting possible candidates 0 ok 164 - Counting comments 1 ok 165 - Counting possible candidates 1 ok 166 - Counting comments 2 ok 167 - Counting possible candidates 2 ok 168 - Counting comments 3 ok 169 - Counting possible candidates 3 ok 170 - Counting comments 4 ok 171 - Counting possible candidates 4 ok 172 - Counting comments 5 ok 173 - Counting possible candidates 5 ok 174 - Counting comments 6 ok 175 - Counting possible candidates 6 ok 176 - Counting comments 7 ok 177 - Counting possible candidates 7 ok 178 - Counting comments 8 ok 179 - Counting possible candidates 8 ok 180 - Counting comments 9 ok 181 - Counting possible candidates 9 ok 182 - Counting comments 10 ok 183 - Counting possible candidates 10 ok 184 - Counting comments 11 ok 185 - Counting possible candidates 11 ok 186 - Counting text occurrences 0 ok 187 - Counting possible candidates 0 ok 188 - counting text occurrences 1 ok 189 - Counting possible candidates 1 ok 190 - counting text occurrences 2 ok 191 - Counting possible candidates 2 ok 192 - counting text occurrences 4 ok 193 - Counting possible candidates 4 ok 194 - counting text occurrences 5 ok 195 - Counting possible candidates 5 ok 196 - Checking RE for text 6 ok 197 - Counting possible candidates 6 ok t/01-xpath-query-builder........................1..9 ok 1 - use Test::HTML::Content; ok 2 - //tag[@alt = "foo" and @href = "http://www.perl.com"] ok 3 - //tag[@alt = "foo" and @href] ok 4 - //tag[not(@alt) and @href] ok 5 - //tag2[not(@alt) and @href] ok 6 - //tag[@alt = "foo" and @href = "http://www.perl.com"] ok 7 - //tag[@alt = "foo" and @href] ok 8 - //tag[not(@alt) and @href] ok 9 - //tag2[not(@alt) and @href] ok t/02-tags.......................................1..65 ok 1 - use Test::HTML::Content; ok 2 - Single attribute ok 3 - Uppercase query finds lowercase tag ok 4 - Lowercase query finds uppercase tag ok 5 - Uppercase query finds uppercase tag ok 6 - Lowercase query finds lowercase tag ok 7 - No attributes ok 8 - Undef attributes ok 9 - Forgotten attributes ok 10 - Single attribute gets counted once ok 11 - Superfluous attributes are ignored ok 12 - Superfluous attributes are ignored and still the matchcount stays ok 13 - Tags that appear twice get reported ok 14 - Tags that appear twice get reported twice ok 15 - Plain strings get matched exactly ok 16 - Regular expressions for attributes ok 17 - Mixing regular expressions with strings ok 18 - Specifying more than one RE ok 19 - Optional RE ok 20 - Ignored tags ok 21 - Absent tags ok 22 - Misspelled attribute is not found ok 23 - Misspelled attribute is reported zero times ok 24 - Tag with same attribute but different tag is not found ok 25 - Tag with same attribute but different tag is reported zero times ok 26 - Tag with different attribute value is not found ok 27 - Tag with different attribute value is reported zero times ok 28 - Tag within a comment is not found ok 29 - Tag within a comment is reported zero times ok 30 - Tag within a (different) comment is not found ok 31 - Tag within a (different) comment is reported zero times ok 32 - Nonmatching via RE ok 33 - Tag attribute counting ok 34 - Single attribute ok 35 - Uppercase query finds lowercase tag ok 36 - Lowercase query finds uppercase tag ok 37 - Uppercase query finds uppercase tag ok 38 - Lowercase query finds lowercase tag ok 39 - No attributes ok 40 - Undef attributes ok 41 - Forgotten attributes ok 42 - Single attribute gets counted once ok 43 - Superfluous attributes are ignored ok 44 - Superfluous attributes are ignored and still the matchcount stays ok 45 - Tags that appear twice get reported ok 46 - Tags that appear twice get reported twice ok 47 - Plain strings get matched exactly ok 48 - Regular expressions for attributes ok 49 - Mixing regular expressions with strings ok 50 - Specifying more than one RE ok 51 - Optional RE ok 52 - Ignored tags ok 53 - Absent tags ok 54 - Misspelled attribute is not found ok 55 - Misspelled attribute is reported zero times ok 56 - Tag with same attribute but different tag is not found ok 57 - Tag with same attribute but different tag is reported zero times ok 58 - Tag with different attribute value is not found ok 59 - Tag with different attribute value is reported zero times ok 60 - Tag within a comment is not found ok 61 - Tag within a comment is reported zero times ok 62 - Tag within a (different) comment is not found ok 63 - Tag within a (different) comment is reported zero times ok 64 - Nonmatching via RE ok 65 - Tag attribute counting ok t/03-links......................................1..11 ok 1 - use Test::HTML::Content; ok 2 - Simple non-existing link ok 3 - Plain text gets not interpreted as link ok 4 - A link is found ok 5 - A link that appears twice is reported twice ok 6 - Links are not found if commented out ok 7 - Simple non-existing link ok 8 - Plain text gets not interpreted as link ok 9 - A link is found ok 10 - A link that appears twice is reported twice ok 11 - Links are not found if commented out ok t/04-comments...................................1..33 ok 1 - use Test::HTML::Content; ok 2 - use Test::HTML::Content; ok 3 - Comments are found if there ok 4 - Whitespace at front ok 5 - Whitespace at front and end ok 6 - Whitespace at end ok 7 - Whitespace at HTML front ok 8 - Whitespace at HTML end ok 9 - RE over comments ok 10 - Comments are found if there ok 11 - Comments are found if there ok 12 - Comments are counted correctly ok 13 - RE-Comments are counted correctly ok 14 - Comments are not found if not there ok 15 - Comments are not found if not there ok 16 - RE-Comments are found correctly ok 17 - RE-Comments not stringified ok 18 - use Test::HTML::Content; ok 19 - Comments are found if there ok 20 - Whitespace at front ok 21 - Whitespace at front and end ok 22 - Whitespace at end ok 23 - Whitespace at HTML front ok 24 - Whitespace at HTML end ok 25 - RE over comments ok 26 - Comments are found if there ok 27 - Comments are found if there ok 28 - Comments are counted correctly ok 29 - RE-Comments are counted correctly ok 30 - Comments are not found if not there ok 31 - Comments are not found if not there ok 32 - RE-Comments are found correctly ok 33 - RE-Comments not stringified ok t/05-doctype....................................1..11 ok 1 - use Test::HTML::Content; ok 2 - use Test::HTML::Content; ok 3 - Doctype 3.2 ok 4 - Doctype via RE ok 5 - Doctype via other RE ok 6 - Doctype via other RE ok 7 - use Test::HTML::Content; ok 8 - Doctype 3.2 ok 9 - Doctype via RE ok 10 - Doctype via other RE ok 11 - Doctype via other RE ok t/06-text.......................................1..23 ok 1 - use Test::HTML::Content; ok 2 - REs for text work ok 3 - Counting text elements works ok 4 - Negation works as well ok 5 - Negation also works with REs ok 6 - Complete elements are matched ok 7 - Complete elements are matched with whitespace at the ends ok 8 - Counting elements works with REs ok 9 - Counting elements works with REs ok 10 - No stringification of REs in no_text() ok 11 - No stringification of REs in text_count() ok 12 - Text is not broken up ok 13 - REs for text work ok 14 - Counting text elements works ok 15 - Negation works as well ok 16 - Negation also works with REs ok 17 - Complete elements are matched ok 18 - Complete elements are matched with whitespace at the ends ok 19 - Counting elements works with REs ok 20 - Counting elements works with REs ok 21 - No stringification of REs in no_text() ok 22 - No stringification of REs in text_count() ok 23 - Text is not broken up ok t/07-errors.link................................1..0 # Skip Test::Builder::Tester required for testing error messages skipped all skipped: Test::Builder::Tester required for testing error messages t/08-errors.comment.............................1..0 # Skip Test::Builder::Tester required for testing error messages skipped all skipped: Test::Builder::Tester required for testing error messages t/09-errors.declaration.........................1..0 # Skip Test::Builder::Tester required for testing error messages skipped all skipped: Test::Builder::Tester required for testing error messages t/09-errors.xpath...............................1..0 # Skip Test::Builder::Tester required for testing error messages skipped all skipped: Test::Builder::Tester required for testing error messages t/10-errors.text................................1..0 # Skip Test::Builder::Tester required for testing error messages skipped all skipped: Test::Builder::Tester required for testing error messages t/12-title-fallback.............................1..13 ok 1 - use Test::HTML::Content; ok 2 # skip XML::LibXML or XML::XPath not loaded ok 3 - Gracefull title fallback (title_ok) ok 4 # skip XML::LibXML or XML::XPath not loaded ok 5 - Gracefull title fallback (title_ok) ok 6 # skip XML::LibXML or XML::XPath not loaded ok 7 - Gracefull title fallback (title_ok) ok 8 # skip XML::LibXML or XML::XPath not loaded ok 9 - Gracefull title fallback (title_ok) ok 10 # skip XML::LibXML or XML::XPath not loaded ok 11 - Gracefull title fallback (no_title) ok 12 # skip XML::LibXML or XML::XPath not loaded ok 13 - Gracefull title fallback (no_title) ok 6/13 skipped: XML::LibXML or XML::XPath not loaded t/12-title......................................1..7 ok 1 - use Test::HTML::Content; No such method textContent in XML::XPath::Node::ElementImpl at /home/cpanrun/depot/main/contrib-patched/perl/CPAN/src/Test-HTML-Content/blib/lib/Test/HTML/Content.pm line 277 # Looks like you planned 7 tests but only ran 1. # Looks like your test died just after 1. dubious Test returned status 255 (wstat 65280, 0xff00) DIED. FAILED tests 2-7 Failed 6/7 tests, 14.29% okay t/13-xpath-gracefull-errors.....................1..0 # Skip Test::Builder::Tester required for testing error messages skipped all skipped: Test::Builder::Tester required for testing error messages t/99-manifest...................................1..8 ok 1 - MANIFEST exists ok 2 - No empty lines in MANIFEST ok 3 - No whitespace-only lines in MANIFEST ok 4 - No trailing whitespace on lines in MANIFEST ok 5 - MANIFEST.skip exists ok 6 - No empty lines in MANIFEST.skip ok 7 - No whitespace-only lines in MANIFEST.skip ok 8 - No trailing whitespace on lines in MANIFEST.skip ok t/99-Pod........................................1..0 # Skip Test::Pod required for testing POD skipped all skipped: Test::Pod required for testing POD t/99-todo.......................................1..3 ok 1 - Looking for XXXes in blib/lib/Test/HTML/Content.pm ok 2 - Looking for XXXes in blib/lib/Test/HTML/Content/XPathExtensions.pm ok 3 - Looking for XXXes in blib/lib/Test/HTML/Content/NoXPath.pm ok t/99-unix-text..................................1..7 ok 1 - 'blib/lib/Test/HTML/Content.pm' contains no windows newlines ok 2 - 'blib/lib/Test/HTML/Content/XPathExtensions.pm' contains no windows newlines ok 3 - 'blib/lib/Test/HTML/Content/NoXPath.pm' contains no windows newlines ok 4 - 't/testlib.pm' contains no windows newlines ok 5 - 'lib/Test/HTML/Content.pm' contains no windows newlines ok 6 - 'lib/Test/HTML/Content/NoXPath.pm' contains no windows newlines ok 7 - 'lib/Test/HTML/Content/XPathExtensions.pm' contains no windows newlines ok t/embedded-Test-HTML-Content-NoXPath............ok 1 - example from line 195 1..1 ok t/embedded-Test-HTML-Content-XPathExtensions....ok 1 - example from line 58 1..1 ok t/embedded-Test-HTML-Content....................ok 1 - example from line 598 1..1 ok Failed 1/26 test scripts, 96.15% okay. 6/405 subtests failed, 98.52% okay. Failed Test Stat Wstat Total Fail Failed List of Failed --------------------------------------------------------------------------------------------------------------------------- t/12-title.t 255 65280 7 12 171.43% 2-7 7 tests and 18 subtests skipped. make: *** [test_dynamic] Error 25