Here's the output:
/usr/bin/perl Build --makefile_env_macros 1 test
t/01_basic.......# Looks like your test died just after 29.
Dubious, test returned 255 (wstat 65280, 0xff00)
All 29 subtests passed
t/02_xmpp........# Looks like your test died just after 20.
Dubious, test returned 255 (wstat 65280, 0xff00)
All 20 subtests passed
(less 20 skipped subtests: 0 okay)
t/03_legacy......# Looks like your test died just after 12.
Dubious, test returned 255 (wstat 65280, 0xff00)
All 12 subtests passed
(less 12 skipped subtests: 0 okay)
t/04_j14.........# Looks like your test died just after 12.
Dubious, test returned 255 (wstat 65280, 0xff00)
All 12 subtests passed
(less 12 skipped subtests: 0 okay)
t/05_j20.........# Looks like your test died just after 16.
Dubious, test returned 255 (wstat 65280, 0xff00)
All 16 subtests passed
(less 16 skipped subtests: 0 okay)
Test Summary Report
-------------------
t/01_basic.t (Wstat: 65280 Tests: 29 Failed: 0)
Non-zero exit status: 255
t/02_xmpp.t (Wstat: 65280 Tests: 20 Failed: 0)
Non-zero exit status: 255
t/03_legacy.t (Wstat: 65280 Tests: 12 Failed: 0)
Non-zero exit status: 255
t/04_j14.t (Wstat: 65280 Tests: 12 Failed: 0)
Non-zero exit status: 255
t/05_j20.t (Wstat: 65280 Tests: 16 Failed: 0)
Non-zero exit status: 255
Files=5, Tests=89, 3 wallclock secs ( 0.07 usr 0.02 sys + 2.94 cusr
0.28 csys = 3.31 CPU)
Result: FAIL
Failed 5/5 test programs. 0/89 subtests failed.
make: *** [test] Error 255
-----------
Thanks,
George
Perhaps something is going awry during cleanup (after the tests have
been run, just prior to the script exiting).
What do you get when you run:
perl -Mblib t/01_basic.t
Cheers,
Rob
Thanks, I think you're right. It looks to me like the tests all run ok
and it dies after the last one. Here's the output :
1..29
ok 1 - use POE::Component::Jabber;
ok 2 - use POE::Component::Jabber::Error;
ok 3 - use POE::Component::Jabber::Status;
ok 4 - use POE::Component::Jabber::ProtocolFactory;
ok 5 - POE::Component::Jabber::Error->can(...)
ok 6 - POE::Component::Jabber::Status->can(...)
ok 7 - POE::Component::Jabber::ProtocolFactory->can(...)
ok 8 - The object isa POE::Component::Jabber::XMPP
ok 9 - The object isa POE::Component::Jabber::Protocol
ok 10 - The object isa POE::Component::Jabber::Legacy
ok 11 - The object isa POE::Component::Jabber::Protocol
ok 12 - The object isa POE::Component::Jabber::J14
ok 13 - The object isa POE::Component::Jabber::Protocol
ok 14 - The object isa POE::Component::Jabber::J2
ok 15 - The object isa POE::Component::Jabber::Protocol
ok 16 - No current session
ok 17 - No arguments
ok 18 - No Password
ok 19 - No Hostname
ok 20 - No Username
ok 21 - No States
ok 22 - No IP
ok 23 - No Port
ok 24 - No ConnectionType
ok 25 - Invalid ConnectionType
ok 26 - Correct construction XMPP
ok 27 - Correct construction LEGACY
ok 28 - Correct construction J14
ok 29 - Correct construction J2
# Looks like your test died just after 29.
George
However, I was expecting to see a segfault or at least an error
message (as usually happens when there's a problem with the cleanup).
Not too sure what to make of that.
Looks like one of the CPAN Testers got the same as you:
http://www.nntp.perl.org/group/perl.cpan.testers/2008/04/msg1367481.html
(but that doesn't really help either.)
Is there any POE-specific forum where you could ask about this ?
Or maybe ask the author ?
Cheers,
Rob
>
> However, I was expecting to see a segfault or at least an error
> message (as usually happens when there's a problem with the cleanup).
> Not too sure what to make of that.
>
> Looks like one of the CPAN Testers got the same as you:
> http://www.nntp.perl.org/group/perl.cpan.testers/2008/04/msg1367481.html
> (but that doesn't really help either.)
Well, it indicates that it's probably not something weird about my setup.
I think I'll try to force the install and see if I can get it to work.
I won't be using it for anything life-critical anyway.
Thanks,
George
Global cleanup (or END) may have (explicitly) set $?, or called
exit(). Either from Perl code, or from XS.
Catching a call to exit() from Perl is easy, via overwriting
CORE::GLOBAL::exit(). Catching $? - I do not know, but one could put
END {warn "Value of \$? is $?" if $?}
at the start of the test script. And/or at least
END {warn "Last call to END{} reached..."}
And if it prints this, this happens during global destruction...
Hope this helps,
Ilya