Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked
 
PerlMonks  

Re^2: Shorten one liners with Class::Autouse

by bsb (Priest)
on Mar 24, 2007 at 04:47 UTC ( #606384=note: print w/replies, xml ) Need Help??


in reply to Re: Shorten one liners with Class::Autouse
in thread Shorten one liners with Class::Autouse

It depends on the module, if Foo::Bar exports a procedural interface by default then it won't shorten anything. If it optionally exports functions then you have to type them in the export list (-MFoo::Bar=blah,asdf) in addition to the code.

Dev::Bollocks doesn't export anything so you'd need to repeat the module name:

perl -MDev::Bollocks -le 'print Dev::Bollocks->rand()' perll -le 'print Dev::Bollocks->rand()'
I often use one liners like this to test drive a module, sometimes to filter things (eg. with Email::Valid). I expect that the -MSome::Long::Name -e '$s=Some::Long::Name->new()' type scripts will shrink nicely.

BTW, I've only just started using this alias so I don't have a much of feel for it yet...

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://606384]
help
Chatterbox?
[marinersk]: sub newtest{my $expected_result = &target('foo'); my $actual_result = &target('foo'); if ($actual_result eq $expected_result) { &tdd_success(); } else { &tdd_fail(); } } # Test works after three years!
[choroba]: or nobody bothered...
[choroba]: The problem was bigger, as the test tried to call a method that didn't exist anymore
[marinersk]: :: ducking ::
[choroba]: because, someone renamed the method, but didn't notice it was used in the test, as the test was skipped
[marinersk]: Well, if the method doesn't exist, it would be hard to pass the test.
[choroba]: later, someone removed the new method, as all its usage places were safe, but didn't notice the test still used the old name
[choroba]: fortunately, it wasn't that hard to replace the method and fix a few remaining failures due to the changes we did to the codebase over the years
[marinersk]: choroba Sounds like a process improvement opportunity; tests may not all need to be run, but they should all be compiled with perl -c before check-in/promotion happens.
[choroba]: so, now I have the test, so I can start making changes in the code. Back to the original ticket, yay!

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (15)
As of 2017-05-25 15:12 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?