Module Pod::PerlTricks cannot be installed (AlwaysFail), perhaps it has some failing tests.
Tickets are opened/closed in this repo automatically (though not immediately).
If you can install the module without any problems, add works for me label, leave a comment saying that it works for you and mention any details that you feel are important.
If it needs a native library, put native dependency label, describe what you did to install it and ensure that same instructions are present in the README file of the module (otherwise submit a pull request). Also try to update this wiki page.
If the module is broken, try to fix it and send a PR. Add PR sent label.
If there is a problem in one of the dependencies, add failing dependency label and write a comment explaining the situation. Feel free to work on the corresponding ticket for the failing dependency.
It is a good idea to assign yourself to this ticket if you're working on it (to make sure two or more people are not working on the same ticket at the same time).
If you can't self-assign yourself or attach a label, please let us know on #perl6 channel on freenode or just leave a comment here. We will try to give you privileges as fast as possible.
Output:
===> Searching for: Pod::PerlTricks
===> Found: Pod::PerlTricks:ver<0.01>:auth<David Farrell> [via Zef::Repository::Ecosystems<p6c>]
===> Fetching [OK]: Pod::PerlTricks:ver<0.01>:auth<David Farrell> to /home/alex/Blin/data/zef-data/tmp/1549580978.24001.5507/Pod-PerlTricks.git
===> Extraction [OK]: Pod::PerlTricks to /home/alex/Blin/data/zef-data/store/Pod-PerlTricks.git
===> Testing: Pod::PerlTricks:ver<0.01>:auth<David Farrell>
# Failed test 'match pod section'
# at t/Grammar.t line 15
# Failed test 'cover-image url'
# at t/Grammar.t line 17
# expected: 'file://onion_charcoal.png'
# got: (Any)
Use of uninitialized value of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
in block <unit> at t/Grammar.t line 19
# Failed test 'title'
# at t/Grammar.t line 19
# expected: 'Separate data and behavior with table-driven testing'
# got: ''
Use of uninitialized value of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
in block <unit> at t/Grammar.t line 23
# Failed test 'subtitle'
# at t/Grammar.t line 23
# expected: 'Applying DRY to unit testing'
# got: ''
Use of uninitialized value of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
in block <unit> at t/Grammar.t line 27
# Failed test 'publish-date'
# at t/Grammar.t line 27
# expected: '2000-12-31T00:00:00'
# got: ''
Use of uninitialized value of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
in block <unit> at t/Grammar.t line 31
# Failed test 'Match filepath of include directive'
# at t/Grammar.t line 31
# expected: 'file://test-corpus/briandfoy.pod'
# got: ''
# Failed test '6 tags found'
# at t/Grammar.t line 35
# expected: '6'
# got: '1'
# Failed test 'matched table tag'
# at t/Grammar.t line 36
# expected: 'table'
# got: (Any)
# Failed test 'matched all paragraphs'
# at t/Grammar.t line 39
# expected: '16'
# got: '1'
Use of uninitialized value of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
in block <unit> at t/Grammar.t line 40
# Failed test 'match note text'
# at t/Grammar.t line 40
# expected: 'N<This is known as W<data-driven-testing>>'
# got: ''
Use of uninitialized value of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
in block <unit> at t/Grammar.t line 43
# Failed test 'Match Wiki text'
# at t/Grammar.t line 43
# expected: 'W<data-driven-testing>'
# got: ''
Use of uninitialized value of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
in block <unit> at t/Grammar.t line 47
# Failed test 'Match Data format code text'
# at t/Grammar.t line 47
# expected: 'D<tests.t>'
# got: ''
# Failed test 'matched all verbatim paragraphs'
# at t/Grammar.t line 51
# expected: '7'
# got: '1'
# Failed test 'table'
# at t/Grammar.t line 53
# Failed test 'match 3 headings'
# at t/Grammar.t line 54
# expected: '3'
# got: '1'
Use of uninitialized value of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
in block <unit> at t/Grammar.t line 55
# Failed test 'match third heading'
# at t/Grammar.t line 55
# expected: 'ColC'
# got: ''
Use of uninitialized value of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
in block <unit> at t/Grammar.t line 56
# Failed test 'match middle cell'
# at t/Grammar.t line 56
# expected: '1234'
# got: ''
# Looks like you failed 17 tests of 19
t/Grammar.t ..
Dubious, test returned 17 (wstat 4352, 0x1100)
Failed 17/19 subtests
# Failed test 'Output HTML matches expected'
# at t/ToHTML.t line 13
# expected: '<html lang="en">
# <head>
# <meta charset="UTF-8">
# <title>Separate data and behavior with table-driven testing</title>
# <meta name="description" content="Table-driven testing reduces code and lowers the cost of testing. This article shows how to use table-driven testing with Perl.">
# <meta name="author" content="brian d foy">
# <meta name="keywords" content="unit,testing,data,table,perl,tdd">
# </head>
# <body>
#
#
# <img src="onion_charcoal.png" alt="Perl Onion" class="cover">
#
# <div class="title">Separate data and behavior with table-driven testing</div>
#
# <div class="subtitle">Applying DRY to unit testing</div>
#
# <div class="publish-date">2000-12-31T00:00:00Z</div>
#
# <p class="author-bio"><a href="http://www.pair.com/~comdog/">brian d foy</a> (<a href="https://twitter.com/briandfoy_perl">briandfoy_perl</a>) is a <a href="https://en.wikipedia.org/wiki/Perl">Perl</a> trainer and writer. He's the author of Mastering Perl and co-author of Programming Perl, Learning Perl, Intermediate Perl and Effective Perl Programming. Github: <a href="https://github.com/briandfoy/projects">projects</a>.</p>
# <img src="http://static/images/brian_d_foy.png" alt="http://static/images/brian_d_foy.png" class="author-image">
#
# <p>How can I easily run the same tests on different data without duplicating a lot of code? If I follow my usual pattern, I start off with a couple of tests where I write some code then cut-and-paste that a couple of times. I add a few more tests before I realize I have a mess. If I had the foresight to know that I would make a mess (again), I would have started with a table of data and a little bit of code that went through it.<sup><a href="#0_1">1</a></sup></p>
#
# <p>Consider a silly and small example of testing <code>sprintf</code>-like behaviour of M<String::Sprintf>. I can use this module to create my own format specifiers, such as one to commify a number. I stole this mostly from its documentation, although I threw in the <a href="http://www.effectiveperlprogramming.com/2015/04/use-v5-20-subroutine-signatures/">v5.20 signatures feature</a> and the <a href="http://www.effectiveperlprogramming.com/2010/09/use-the-r-substitution-flag-to-work-on-a-copy/">v5.14 non-destructive</a> <code>/r</code> flag on the substitution operator> because I love those features:</p>
#
# <pre>use v5.20;
# use feature qw(signatures);
# no warnings qw(experimental::signatures);
#
# use String::Sprintf;
#
# my $f = String::Sprintf->formatter(
# N => sub {
# my($width, $value, $values, $letter) = @_;
# return commify(sprintf "%${width}f", $value);
# }
# );
#
# say "Numbers are: " .
# $f->sprintf(
# '%10.2N, %10.2N',
# 12345678.901, 87654.321
# );
#
# sub commify ( $n ) {
# $n =~ s/(\.\d+)|(?<=\d)(?=(?:\d\d\d)+\b)/$1 || ','/rge;
# }
#
# Numbers are: 12,345,678.90, 87,654.32</pre>
#
# <p>The mess I might make to test this starts with a single input and output with the M<Test::More> function <code>is</code>:</p>
#
# <pre>use v5.20;
# use feature qw(signatures);
# no warnings qw(experimental::signatures);
#
# use Test::More;
#
# sub commify ( $n ) {
# $n =~ s/(\.\d+)|(?<=\d)(?=(?:\d\d\d)+\b)/$1 || ','/rge;
# }
#
# my $class = 'String::Sprintf';
# use_ok( $class );
#
# my $f = String::Sprintf->formatter(
# N => sub {
# my($width, $value, $values, $letter) = @_;
# return commify(sprintf "%${width}f", $value);
# }
# );
#
# isa_ok( $f, $class );
# can_ok( $f, 'sprintf' );
#
# is( $f->sprintf( '%.2N', '1234.56' ), '1,234.56' );
#
# done_testing();</pre>
#
# <p>I decide to test another value, and I think the easiest thing to do is to duplicate that line with <code>is</code>:</p>
#
# <pre>is( $f->sprintf( '%.2N', '1234.56' ), '1,234.56' );
# is( $f->sprintf( '%.2N', '1234' ), '1,234.00' );</pre>
#
# <p>The particular thing to test isn't the point of this article. It's all the stuff around it that I want to highlight. Or, more correctly, I want to de-emphasize all this stuff around it. I had to duplicate the test although most of the structure is the same.</p>
#
# <p>I can convert those tests to a structure to hold the data and another structure for the behaviour:</p>
#
# <pre>my @data = (
# [ qw( 1234.56 1,234.56 ) ],
# [ qw( 1234 1,234.00 ) ],
# );
#
# foreach my $row ( @data ) {
# is( $f->sprintf( '%.2N', $row->[0] ), $row->[1] );
# }</pre>
#
# <p>I can add many more rows to <code>@data</code> but the meat of the code, that <code>foreach</code> loop, doesn't change.</p>
#
# <p>I can improve this though. So far I only test that one template. I can add that to <code>@data</code> too, and use that to make a label for the test:</p>
#
# <pre>my $ndot2_f = '%.2N';
#
# my @data = (
# [ $ndot2_f, qw( 1234.56 1,234.56 ) ],
# [ $ndot2_f, qw( 1234 1,234.00 ) ],
# );
#
# foreach my $row ( @data ) {
# is( $f->sprintf( $row->[0], $row->[1] ), $row->[2],
# "$row->[1] with format $row->[0] returns $row->[2]"
# );
# }</pre>
#
# <p>I can add another test with a different format. If I had kept going the way I started, this would look like a new test because the format changed. Now the format is just part of the input:</p>
#
# <pre>my $ndot2_f = '%.2N';
#
# my @data = (
# [ $ndot2_f, qw( 1234.56 1,234.56 ) ],
# [ $ndot2_f, qw( 1234 1,234.00 ) ],
# [ '%.0N' , qw( 1234.49 1,234 ) ],
# );
#
# foreach my $row ( @data ) {
# is( $f->sprintf( $row->[0], $row->[1] ), $row->[2],
# "$row->[1] with format $row->[0] returns $row->[2]"
# );
# }</pre>
#
# <p>As I go on things get more complicated. If a test fails, I want some extra information about which one failed. I'll change up how I go through the table. In this case, I'll use the <a href="http://www.effectiveperlprogramming.com/2010/05/perl-5-12-lets-you-use-each-on-an-array/">v5.12 feature</a> that allows <code>each</code> on an array so I get back the index and the value:</p>
#
# <pre>while( my( $index, $row ) = each @data ) {
# is( $f->sprintf( $row->[0], $row->[1] ), $row->[2],
# "$index: $row->[1] with format $row->[0] returns $row->[2]"
# );
# }</pre>
#
# <p>My code for the test behavior changed but I didn't have to mess with the input data at all. The particular code in this case doesn't matter. This table-driven testing separates the inputs and the tests; that's what you should pay attention to.</p>
#
# <p>It can get even better. So far, I've put all the input data in the test file itself, but now that it's separate from the test code, I can grab the input from somewhere else, like a database table:</p>
#
# <table>
# <th>ColA</th><th>ColB</th><th>ColC</th>
# <tr><td>%.2N</td><td>1234.56</td><td>1,234.56</td></tr>
# <tr><td>%.2N</td><td>1234</td><td>1,234.00</td></tr>
# <tr><td>%.0N</td><td>1234.49</td><td>1,234</td></tr>
# </table>
#
# <p>Or a pipe separated values file:</p>
#
# <pre class="data">%.2N|1234.56|1,234.56
# %.2N|1234|1,234.00
# %.0N|1234.49|1,234</pre>
#
# <p>I create <code>@data</code> in the test file by reading and parsing the external file <span class="data">tests.t</span>:</p>
#
# <pre><code>open my $test_data_fh, '<', $test_file_name or die ...;
#
# my @data;
# while( <$test_data_fh> ) {
# chomp;
# push @data, split /\t/;
# }</code></pre>
#
# <p>I can execute the tests with <span class="terminal">perl tests.t</span> Now none of the data are in the test file. And, there's nothing special about a simple text file. I could do a little bit more work to take the data from an Excel file (perhaps that most useful wizard skill in the world of business) or even a database:</p>
#
# <pre><code>use DBI;
#
# my $dbh = DBI->connect( ... );
# my $sth = $dbh->prepare( 'SELECT * FROM tests' );
#
# $sth->execute();
#
# while( my $row = $sth->fetchrow_arrayref ) {
# state $index = 0;
#
# is( $f->sprintf( $row->[0], $row->[1] ), $row->[2],
# $index++ . ": $row->[1] with format $row->[0] returns $row->[2]"
# );
#
# }</code></pre>
#
# <p>That's the idea. I separate the data and the tests to give myself some flexibility. How I access the data and how I test depend on my particular problems.</p>
# <div class="footnotes">
# <ul>
# <li id="0_1">[1] This is known as <a href="https://en.wikipedia.org/wiki/data-driven-testing">data-driven-testing</a></li>
# </ul>
# </div>
#
# </body>
# </html>
# '
# got: '<html lang="en">
# <head>
# <title>Separate data and behavior with table-driven testing</title>
# <meta name="description" content="Table-driven testing reduces code and lowers the cost of testing. This article shows how to use table-driven testing with Perl.">
# <title>Separate data and behavior with table-driven testing</title>
# <meta name="description" content="Table-driven testing reduces code and lowers the cost of testing. This article shows how to use table-driven testing with Perl.">
# <meta name="description" content="Table-driven testing reduces code and lowers the cost of testing. This article shows how to use table-driven testing with Perl.">
# <meta name="description" content="Table-driven testing reduces code and lowers the cost of testing. This article shows how to use table-driven testing with Perl.">
# <meta name="description" content="Table-driven testing reduces code and lowers the cost of testing. This article shows how to use table-driven testing with Perl.">
# <meta name="description" content="Table-driven testing reduces code and lowers the cost of testing. This article shows how to use table-driven testing with Perl.">
# <meta name="keywords" content="unit,testing,data,table,perl,tdd">
# <meta name="keywords" content="unit,testing,data,table,perl,tdd">
# </head>
# <body>
# <div class="footnotes">
# <ul>
# <li id="0_1">[1] This is known as <a href="https://en.wikipedia.org/wiki/data-driven-testing">data-driven-testing</a></li>
# <li id="0_2">[2] This is known as <a href="https://en.wikipedia.org/wiki/data-driven-testing">data-driven-testing</a></li>
# </ul>
# </div>
#
# </body>
# </html>
# '
# Looks like you failed 1 test of 4
t/ToHTML.t ...
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/4 subtests
# Failed test 'Output JSON matches expected'
# at t/ToJSON.t line 13
# expected: '{ "body" : "\"\\n\\n<p>How can I easily run the same tests on different data without duplicating a lot of code? If I follow my usual pattern, I start off with a couple of tests where I write some code then cut-and-paste that a couple of times. I add a few more tests before I realize I have a mess. If I had the foresight to know that I would make a mess (again), I would have started with a table of data and a little bit of code that went through it.<sup><a href=\\\"#0_1\\\">1</a></sup></p>\\n\\n<p>Consider a silly and small example of testing <code>sprintf</code>-like behaviour of M<String::Sprintf>. I can use this module to create my own format specifiers, such as one to commify a number. I stole this mostly from its documentation, although I threw in the <a href=\\\"http://www.effectiveperlprogramming.com/2015/04/use-v5-20-subroutine-signatures/\\\">v5.20 signatures feature</a> and the <a href=\\\"http://www.effectiveperlprogramming.com/2010/09/use-the-r-substitution-flag-to-work-on-a-copy/\\\">v5.14 non-destructive</a> <code>/r</code> flag on the substitution operator> because I love those features:</p>\\n\\n<pre>use v5.20;\\nuse feature qw(signatures);\\nno warnings qw(experimental::signatures);\\n\\nuse String::Sprintf;\\n\\nmy $f = String::Sprintf->formatter(\\n N => sub {\\n my($width, $value, $values, $letter) = @_;\\n return commify(sprintf \\\"%${width}f\\\", $value);\\n }\\n );\\n\\nsay \\\"Numbers are: \\\" . \\n $f->sprintf(\\n '%10.2N, %10.2N', \\n 12345678.901, 87654.321\\n );\\n\\nsub commify ( $n ) {\\n $n =~ s/(\\\\.\\\\d+)|(?<=\\\\d)(?=(?:\\\\d\\\\d\\\\d)+\\\\b)/$1 || ','/rge;\\n }\\n\\nNumbers are: 12,345,678.90, 87,654.32</pre>\\n\\n<p>The mess I might make to test this starts with a single input and output with the M<Test::More> function <code>is</code>:</p>\\n\\n<pre>use v5.20;\\nuse feature qw(signatures);\\nno warnings qw(experimental::signatures);\\n\\nuse Test::More;\\n\\nsub commify ( $n ) {\\n $n =~ s/(\\\\.\\\\d+)|(?<=\\\\d)(?=(?:\\\\d\\\\d\\\\d)+\\\\b)/$1 || ','/rge;\\n }\\n\\nmy $class = 'String::Sprintf';\\nuse_ok( $class );\\n\\nmy $f = String::Sprintf->formatter(\\n N => sub {\\n my($width, $value, $values, $letter) = @_;\\n return commify(sprintf \\\"%${width}f\\\", $value);\\n }\\n );\\n\\nisa_ok( $f, $class );\\ncan_ok( $f, 'sprintf' );\\n\\nis( $f->sprintf( '%.2N', '1234.56' ), '1,234.56' );\\n\\ndone_testing();</pre>\\n\\n<p>I decide to test another value, and I think the easiest thing to do is to duplicate that line with <code>is</code>:</p>\\n\\n<pre>is( $f->sprintf( '%.2N', '1234.56' ), '1,234.56' );\\nis( $f->sprintf( '%.2N', '1234' ), '1,234.00' );</pre>\\n\\n<p>The particular thing to test isn't the point of this article. It's all the stuff around it that I want to highlight. Or, more correctly, I want to de-emphasize all this stuff around it. I had to duplicate the test although most of the structure is the same.</p>\\n\\n<p>I can convert those tests to a structure to hold the data and another structure for the behaviour:</p>\\n\\n<pre>my @data = (\\n [ qw( 1234.56 1,234.56 ) ],\\n [ qw( 1234 1,234.00 ) ],\\n );\\n\\nforeach my $row ( @data ) {\\n is( $f->sprintf( '%.2N', $row->[0] ), $row->[1] );\\n }</pre>\\n\\n<p>I can add many more rows to <code>@data</code> but the meat of the code, that <code>foreach</code> loop, doesn't change.</p>\\n\\n<p>I can improve this though. So far I only test that one template. I can add that to <code>@data</code> too, and use that to make a label for the test:</p>\\n\\n<pre>my $ndot2_f = '%.2N';\\n\\nmy @data = (\\n [ $ndot2_f, qw( 1234.56 1,234.56 ) ],\\n [ $ndot2_f, qw( 1234 1,234.00 ) ],\\n );\\n\\nforeach my $row ( @data ) {\\n is( $f->sprintf( $row->[0], $row->[1] ), $row->[2],\\n \\\"$row->[1] with format $row->[0] returns $row->[2]\\\"\\n );\\n }</pre>\\n\\n<p>I can add another test with a different format. If I had kept going the way I started, this would look like a new test because the format changed. Now the format is just part of the input:</p>\\n\\n<pre>my $ndot2_f = '%.2N';\\n\\nmy @data = (\\n [ $ndot2_f, qw( 1234.56 1,234.56 ) ],\\n [ $ndot2_f, qw( 1234 1,234.00 ) ],\\n [ '%.0N' , qw( 1234.49 1,234 ) ],\\n );\\n\\nforeach my $row ( @data ) {\\n is( $f->sprintf( $row->[0], $row->[1] ), $row->[2],\\n \\\"$row->[1] with format $row->[0] returns $row->[2]\\\"\\n );\\n }</pre>\\n\\n<p>As I go on things get more complicated. If a test fails, I want some extra information about which one failed. I'll change up how I go through the table. In this case, I'll use the <a href=\\\"http://www.effectiveperlprogramming.com/2010/05/perl-5-12-lets-you-use-each-on-an-array/\\\">v5.12 feature</a> that allows <code>each</code> on an array so I get back the index and the value:</p>\\n\\n<pre>while( my( $index, $row ) = each @data ) {\\n is( $f->sprintf( $row->[0], $row->[1] ), $row->[2],\\n \\\"$index: $row->[1] with format $row->[0] returns $row->[2]\\\"\\n );\\n }</pre>\\n\\n<p>My code for the test behavior changed but I didn't have to mess with the input data at all. The particular code in this case doesn't matter. This table-driven testing separates the inputs and the tests; that's what you should pay attention to.</p>\\n\\n<p>It can get even better. So far, I've put all the input data in the test file itself, but now that it's separate from the test code, I can grab the input from somewhere else, like a database table:</p>\\n\\n<table>\\n<th>ColA</th><th>ColB</th><th>ColC</th>\\n<tr><td>%.2N</td><td>1234.56</td><td>1,234.56</td></tr>\\n<tr><td>%.2N</td><td>1234</td><td>1,234.00</td></tr>\\n<tr><td>%.0N</td><td>1234.49</td><td>1,234</td></tr>\\n</table>\\n\\n<p>Or a pipe separated values file:</p>\\n\\n<pre class=\\\"data\\\">%.2N|1234.56|1,234.56\\n%.2N|1234|1,234.00\\n%.0N|1234.49|1,234</pre>\\n\\n<p>I create <code>@data</code> in the test file by reading and parsing the external file <span class=\\\"data\\\">tests.t</span>:</p>\\n\\n<pre><code>open my $test_data_fh, '<', $test_file_name or die ...;\\n\\nmy @data;\\nwhile( <$test_data_fh> ) {\\n chomp;\\n push @data, split /\\\\t/;\\n }</code></pre>\\n\\n<p>I can execute the tests with <span class=\\\"terminal\\\">perl tests.t</span> Now none of the data are in the test file. And, there's nothing special about a simple text file. I could do a little bit more work to take the data from an Excel file (perhaps that most useful wizard skill in the world of business) or even a database:</p>\\n\\n<pre><code>use DBI;\\n\\nmy $dbh = DBI->connect( ... );\\nmy $sth = $dbh->prepare( 'SELECT * FROM tests' );\\n\\n$sth->execute();\\n\\nwhile( my $row = $sth->fetchrow_arrayref ) {\\n state $index = 0;\\n\\n is( $f->sprintf( $row->[0], $row->[1] ), $row->[2],\\n $index++ . \\\": $row->[1] with format $row->[0] returns $row->[2]\\\"\\n );\\n\\n }</code></pre>\\n\\n<p>That's the idea. I separate the data and the tests to give myself some flexibility. How I access the data and how I test depend on my particular problems.</p>\\n<div class=\\\"footnotes\\\">\\n<ul>\\n<li id=\\\"0_1\\\">[1] This is known as <a href=\\\"https://en.wikipedia.org/wiki/data-driven-testing\\\">data-driven-testing</a></li>\\n</ul>\\n</div>\\n\"", "head" : [ { "charset" : "UTF-8" }, { "lang" : "en" }, { "cover-image" : "onion_charcoal.png" }, { "title" : "Separate data and behavior with table-driven testing" }, { "subtitle" : "Applying DRY to unit testing" }, { "description" : "Table-driven testing reduces code and lowers the cost of testing. This article shows how to use table-driven testing with Perl." }, { "publish-date" : "2000-12-31T00:00:00Z" }, { "author" : "brian d foy" }, { "author-bio" : "<a href=\"http://www.pair.com/~comdog/\">brian d foy</a> (<a href=\"https://twitter.com/briandfoy_perl\">briandfoy_perl</a>) is a <a href=\"https://en.wikipedia.org/wiki/Perl\">Perl</a> trainer and writer. He's the author of Mastering Perl and co-author of Programming Perl, Learning Perl, Intermediate Perl and Effective Perl Programming. Github: <a href=\"https://github.com/briandfoy/projects\">projects</a>." }, { "author-image" : "http://static/images/brian_d_foy.png" }, { "keywords" : [ "unit", "testing", "data", "table", "perl", "tdd" ] } ] }
===SORRY!===
Could not find Pod::PerlTricks::ToHTML at line 1 in:
inst#/home/alex/Blin/installed/Pod::PerlTricks_0.01
file#/home/alex/Blin/data/zef/lib
inst#/home/alex/Blin/installed/Pod::Perl5_0.18
inst#/home/alex/Blin/installed/JSON::Tiny_1.0
inst#/home/alex/.perl6
inst#/tmp/whateverable/rakudo-moar/1ff9b14e8903d77f066f7c2673ea59d6ad7f4aa6/share/perl6/site
inst#/tmp/whateverable/rakudo-moar/1ff9b14e8903d77f066f7c2673ea59d6ad7f4aa6/share/perl6/vendor
inst#/tmp/whateverable/rakudo-moar/1ff9b14e8903d77f066f7c2673ea59d6ad7f4aa6/share/perl6
ap#
nqp#
perl5#
# '
# got: '{ "head" : [ { "lang" : "en" }, { "lang" : "en" }, { "title" : "Separate data and behavior with table-driven testing" }, { "subtitle" : "Applying DRY to unit testing" }, { "description" : "Table-driven testing reduces code and lowers the cost of testing. This article shows how to use table-driven testing with Perl." }, { "publish-date" : "2000-12-31T00:00:00Z" }, { "title" : "Separate data and behavior with table-driven testing" }, { "subtitle" : "Applying DRY to unit testing" }, { "description" : "Table-driven testing reduces code and lowers the cost of testing. This article shows how to use table-driven testing with Perl." }, { "publish-date" : "2000-12-31T00:00:00Z" }, { "subtitle" : "Applying DRY to unit testing" }, { "description" : "Table-driven testing reduces code and lowers the cost of testing. This article shows how to use table-driven testing with Perl." }, { "publish-date" : "2000-12-31T00:00:00Z" }, { "subtitle" : "Applying DRY to unit testing" }, { "description" : "Table-driven testing reduces code and lowers the cost of testing. This article shows how to use table-driven testing with Perl." }, { "publish-date" : "2000-12-31T00:00:00Z" }, { "description" : "Table-driven testing reduces code and lowers the cost of testing. This article shows how to use table-driven testing with Perl." }, { "publish-date" : "2000-12-31T00:00:00Z" }, { "description" : "Table-driven testing reduces code and lowers the cost of testing. This article shows how to use table-driven testing with Perl." }, { "publish-date" : "2000-12-31T00:00:00Z" }, { "publish-date" : "2000-12-31T00:00:00Z" }, { "publish-date" : "2000-12-31T00:00:00Z" }, { "keywords" : [ "unit", "testing", "data", "table", "perl", "tdd" ] }, { "keywords" : [ "unit", "testing", "data", "table", "perl", "tdd" ] } ], "body" : "\"<div class=\\\"footnotes\\\">\\n<ul>\\n<li id=\\\"0_1\\\">[1] This is known as <a href=\\\"https://en.wikipedia.org/wiki/data-driven-testing\\\">data-driven-testing</a></li>\\n<li id=\\\"0_2\\\">[2] This is known as <a href=\\\"https://en.wikipedia.org/wiki/data-driven-testing\\\">data-driven-testing</a></li>\\n</ul>\\n</div>\\n\"" }
# '
# Looks like you failed 1 test of 4
t/ToJSON.t ...
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/4 subtests
Test Summary Report
-------------------
t/Grammar.t (Wstat: 4352 Tests: 19 Failed: 17)
Failed tests: 3-19
Non-zero exit status: 17
t/ToHTML.t (Wstat: 256 Tests: 4 Failed: 1)
Failed test: 4
Non-zero exit status: 1
t/ToJSON.t (Wstat: 256 Tests: 4 Failed: 1)
Failed test: 4
Non-zero exit status: 1
Files=3, Tests=27, 17 wallclock secs ( 0.04 usr 0.00 sys + 15.22 cusr 0.64 csys = 15.90 CPU)
Result: FAIL
===> Testing [FAIL]: Pod::PerlTricks:ver<0.01>:auth<David Farrell>
Failed to get passing tests, but continuing with --force-test
===> Installing: Pod::PerlTricks:ver<0.01>:auth<David Farrell>
===> Install [FAIL] for Pod::PerlTricks:ver<0.01>:auth<David Farrell>: ===SORRY!===
Could not find Pod::PerlTricks::ToHTML at line 1 in:
inst#/home/alex/Blin/installed/Pod::PerlTricks_0.01
file#/home/alex/Blin/data/zef/lib
inst#/home/alex/Blin/installed/Pod::Perl5_0.18
inst#/home/alex/Blin/installed/JSON::Tiny_1.0
inst#/home/alex/.perl6
inst#/tmp/whateverable/rakudo-moar/1ff9b14e8903d77f066f7c2673ea59d6ad7f4aa6/share/perl6/site
inst#/tmp/whateverable/rakudo-moar/1ff9b14e8903d77f066f7c2673ea59d6ad7f4aa6/share/perl6/vendor
inst#/tmp/whateverable/rakudo-moar/1ff9b14e8903d77f066f7c2673ea59d6ad7f4aa6/share/perl6
ap#
nqp#
perl5#
Module Pod::PerlTricks cannot be installed (
AlwaysFail
), perhaps it has some failing tests.works for me
label, leave a comment saying that it works for you and mention any details that you feel are important.native dependency
label, describe what you did to install it and ensure that same instructions are present in the README file of the module (otherwise submit a pull request). Also try to update this wiki page.PR sent
label.failing dependency
label and write a comment explaining the situation. Feel free to work on the corresponding ticket for the failing dependency.If you can't self-assign yourself or attach a label, please let us know on #perl6 channel on freenode or just leave a comment here. We will try to give you privileges as fast as possible.
Output:
Ping @dnmfarrell
Previous ticket: #91