Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight
 
PerlMonks  

Re^13: Do Pure Perl CPAN packages really need to use ExtUtils::Command::MM?

by Anonymous Monk
on Feb 19, 2011 at 08:07 UTC ( [id://889050]=note: print w/replies, xml ) Need Help??


in reply to Re^12: Do Pure Perl CPAN packages really need to use ExtUtils::Command::MM?
in thread Do Pure Perl CPAN packages really need to use ExtUtils::Command::MM?

I asked for a patch before; here is how I work it
module-starter --eumm --module=TestPL --author=name --email=emai +l cd TestPL wget http://cpansearch.perl.org/src/EVO/Class-MakeMethods-1.01/test.pl perl Makefile.PL && nmake test
This does the unwanted
C:\perl\bin\perl.exe "-MExtUtils::Command::MM" "-e" "test_harness(0, ' +blib\lib', 'blib\arch')" t/*.t C:\perl\bin\perl.exe "-Iblib\lib" "-Iblib\arch" test.pl
which is why you rename t to tests, so that only test.pl gets run.

If you add test  => { TESTS => 'test.pl' }, you get No plan found in TAP output, which is not surprising, since test.pl runs its own harness, so there is nothing for the other harness to consume.

You don't want to run test.pl through a harness, test.pl is the harness.

Do you see what I see?

Replies are listed 'Best First'.
Re^14: Do Pure Perl CPAN packages really need to use ExtUtils::Command::MM?
by ELISHEVA (Prior) on Feb 25, 2011 at 01:06 UTC

    Well, that patch appears to have been made to the EVO module's test.pl - there is now a warning not to set test => {TESTS => ...}. Thank-you.

    Sadly, it turns out that this solution isn't going to pass muster. The combination of test.pl + tests in "test" rather than "t" + no TESTS => 'test.pl' works under "make test", but it borks "./Build test". "./Build test" doesn't appear to be smart enough to give the test.pl file special treatment and it runs it through run_tests, resulting in the same problems with TAP that I was seeing earlier under MM: it goes to the console but not to Build.

    I haven't given up experimenting with ways to get M:B to run test.pl as a harness rather than a test, but so far I haven't found a solution. Any ideas?

    Re: what do I see.

    With regard to t/*.t files, I see the same thing you do. I suspect that the t/ wasn't causing me a problem in my actual project directory because make/ExtUtils appears to only consider the immediate children of "t/". I name my tests after the class they are testing so all my tests are 2 or more levels deep.

    If I set TESTS => 'test.pl', make/MM can't seem to find the TAP output though it is clearly displayed on the console (tested by inserting a fail() and diag()). However, the message I get is different from you. If only successful tests are run, I get "one test script could be run - FAILED before any test output arrived. FAILED alas no output ever seen." If I insert a fail(), the message is just the first and last sentence: "one test script could be run - FAILED alas no output ever seen."

      Any ideas?

      Try the respective mailing lists

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://889050]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others chanting in the Monastery: (6)
As of 2024-04-25 15:49 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found