NAME
DB::Pluggable::BreakOnTestNumber - Debugger plugin to break on Test::Builder-based tests
SYNOPSIS
$ cat ~/.perldb
use DB::Pluggable;
use YAML;
$DB::PluginHandler = DB::Pluggable->new(config => Load <<EOYAML);
global:
log:
level: error
plugins:
- module: BreakOnTestNumber
EOYAML
$DB::PluginHandler->run;
$ perl -d foo.pl
Loading DB routines from perl5db.pl version 1.28
Editor support available.
Enter h or `h h' for help, or `man perldebug' for more help.
1..9
...
DB<1> b #5
DB<2> r
DESCRIPTION
This debugger plugin extends the debugger's b
command - used to set breakpoints - with the ability to stop at a specific test number. Andy Armstrong had the idea and wrote the original code, see http://use.perl.org/~AndyArmstrong/journal/35792.
METHODS
register
-
Registers the hooks.
plugin_init
-
Hook handler for the
plugin.init
hook. Does some initializations, surprisingly. cmd_b
-
Hook handler for the
db.cmd.b
hook. Checks whether the command is of the formb #12
orb #12, 34, ...
. If so, it sets breakpoints to break as soon as the code leading up to the given test is encountered. For example, givenb #12
, it breaks as soon as test 11 has been finished. If it has handled the command, it returns the DB::Pluggable::ConstantsHANDLED
. If not, it returnsDECLINED
.If it handles the command, it enables the
watchfunction()
. watchfunction
-
Hook handler for the
db.watchfunction
hook. Checks the current test number from Test::Builder and instructs the debugger to stop if an appropriate test number has been reached.
BUGS AND LIMITATIONS
No bugs have been reported.
Please report any bugs or feature requests through the web interface at http://rt.cpan.org.
INSTALLATION
See perlmodinstall for information and options on installing Perl modules.
AVAILABILITY
The latest version of this module is available from the Comprehensive Perl Archive Network (CPAN). Visit <http://www.perl.com/CPAN/> to find a CPAN site near you. Or see http://search.cpan.org/dist/DB-Pluggable/.
The development version lives at http://github.com/hanekomu/db-pluggable/. Instead of sending patches, please fork this project using the standard git and github infrastructure.
AUTHORS
Marcel Grünauer, <marcel@cpan.org>
COPYRIGHT AND LICENSE
Copyright 2008-2009 by Marcel Grünauer.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.