Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses
 
PerlMonks  

Re^2: How to export subs in a bin/script for testing in t/00.t

by leocharre (Priest)
on Feb 26, 2010 at 19:18 UTC ( #825573=note: print w/ replies, xml ) Need Help??


in reply to Re: How to export subs in a bin/script for testing in t/00.t
in thread How to export subs in a bin/script for testing in t/00.t

Oooh! Very cool!..

I wrapped the part of the main body that runs stuff into a sub run() and then I have a line such as (in bin/script).. (pseudocode follows..)

#!/usr/bin/perl caller() or run(); sub run { print do_stuff_1(); print do_stuff_2(); } sub do_stuff_1 { 1 } sub do_stuff_2 { 2 } 1;
Then in t/00.t
use Test::Simple 'no_plan'; require 'bin/script'; ok( do_stuff_1(), 'do_stuff_1()' );
Thank you! This is a wonderful solution. (Maybe someone has another (more elegant, less intrusive?) way to do this?)


Comment on Re^2: How to export subs in a bin/script for testing in t/00.t
Select or Download Code
Re^3: How to export subs in a bin/script for testing in t/00.t
by Anonymous Monk on Feb 26, 2010 at 22:07 UTC
Re^3: How to export subs in a bin/script for testing in t/00.t
by bduggan (Pilgrim) on Feb 27, 2010 at 13:57 UTC
    Maybe not more elegant but the name "main" instead of "run" would be a more common convention. Actually google found this exact example here, putting a package name at the top, and calling
    __PACKAGE__->main() unless caller();

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others scrutinizing the Monastery: (5)
As of 2015-07-05 14:28 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (67 votes), past polls