The Perl modules for automating tests seem to be built for testing other modules, not programs.
First of all I'm not an expert wrt these issues, and I apologize in advance if I'm about to say something utterly stupid, but a possibility that springs to mind would be to write a wrapper sub for your
program that would return the output of the latter as, say, returned by
qx// and check that.
if($opt_t){
eval 'use Test::Simple tests => 3;';
ok(double(2) == 4);
ok(double(-3) == -6);
ok(double(0) == 0);
exit;
}
So you want to run tests dependently from a cmd line switch. I don't think this is a common practice, but I don't see anything patently wrong with it. Though, incidentally, I'd try to avoid string
eval and resort to a
require, if possibly slightly more verbose...