Devel::TestEmbed demonstrates a way of adding new commands to the debugger
without actually modifying the debugger at all.

It automatically loads Test::More for you, then simulates a new command,
tdump, via the debugger's afterinit() and watchfunction() hooks (along with
some magic involving __PACKAGE__ and eval'ed glob assignments).

If you use Test::More's tests (is(), ok(), etc.) during a debugger session,
tdump can then dump the tests out to a test file (you pick a name) with the
proper test plan already in place.

Like this:

  DB<5> use_ok("MyModule");
ok 1 - use MyModule;

  DB<6> $arg1 = "something";

  DB<7> # set first argument

  DB<8> $arg2 = "yadda yadda";

  DB<9> # Set second argument

  DB<10> $try_it = MyModule->new($arg1, $arg2)

  DB<11> # Create an object

  DB<12> isa_ok($try_it, "MyModule")

  DB<13> tdump "001basic.t"
Recording tests for this session in 001basic.t ... done (2 tests).

  DB<14>

tdump will follow you from file to file and will always be available, no
matter what namespace you are in.

To install:

  perl Makefile.PL
  make
  make test
  make install
  cp scripts/perldb.sample ${HOME}/.perldb

Windows users should copy the perldb.sample file to perldb.ini.

If you're interested in seeing a presentation on how this works, go to 
http://ibiblio.org/mcmahon/lazy_testing.html - Firefox is recommended for
viewing this presentation; Safari will stop showing slides after a while.
