P
Peter J. Holzer
I'm currently writing a plugin for qpsmtpd, which means that both the
plugin and the tests are read from a file, massaged a bit, compiled via
eval() and finally the test framework calls the test methods.
This seems to confuse the debugger a bit, because it looks like this:
| Qpsmtpd:lugin::run_tests(/home/hjp/wrk/qpsmtpd/t/Test/Qpsmtpd/Plugin.pm:36):
| 36: $plugin->$method();
| DB<2> s
| Qpsmtpd:lugin::no_bcc:ass1(t/plugin_tests/no_bcc:9):
| 9:
| DB<2> n
| Qpsmtpd:lugin::no_bcc:ass1(t/plugin_tests/no_bcc:11):
| 11:
| DB<2> n
| Qpsmtpd:lugin::no_bcc:ass1(t/plugin_tests/no_bcc:12):
| 12:
| DB<2>
The interesting thing is that it shows the correct source file
("t/plugin_tests/no_bcc") and the correct line numbers (9, 11, 12), but
not the contents of the lines, which look like this:
9 my ($self) = @_;
10
11 my $qp = $self->qp;
12 $qp->command("rset");
So, if the debugger knows the file and the line, why can't it display
the content?
hp
plugin and the tests are read from a file, massaged a bit, compiled via
eval() and finally the test framework calls the test methods.
This seems to confuse the debugger a bit, because it looks like this:
| Qpsmtpd:lugin::run_tests(/home/hjp/wrk/qpsmtpd/t/Test/Qpsmtpd/Plugin.pm:36):
| 36: $plugin->$method();
| DB<2> s
| Qpsmtpd:lugin::no_bcc:ass1(t/plugin_tests/no_bcc:9):
| 9:
| DB<2> n
| Qpsmtpd:lugin::no_bcc:ass1(t/plugin_tests/no_bcc:11):
| 11:
| DB<2> n
| Qpsmtpd:lugin::no_bcc:ass1(t/plugin_tests/no_bcc:12):
| 12:
| DB<2>
The interesting thing is that it shows the correct source file
("t/plugin_tests/no_bcc") and the correct line numbers (9, 11, 12), but
not the contents of the lines, which look like this:
9 my ($self) = @_;
10
11 my $qp = $self->qp;
12 $qp->command("rset");
So, if the debugger knows the file and the line, why can't it display
the content?
hp