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 form b #12 or b #12, 34, .... If so, it sets breakpoints to break as soon as the code leading up to the given test is encountered. For example, given b #12, it breaks as soon as test 11 has been finished. If it has handled the command, it returns the DB::Pluggable::Constants HANDLED. If not, it returns DECLINED.

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.