Skip Menu |

This queue is for tickets about the POE CPAN distribution.

Report information
The Basics
Id: 52691
Status: rejected
Priority: 0/
Queue: POE

People
Owner: Nobody in particular
Requestors: hinrik.sig [...] gmail.com
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: Extra warnings showing up under "make test"
Some warnings are showing up under "make test" that don't show up in normal operation. See attached file for details.
Subject: test_output.txt
$ tree . |-- Makefile.PL `-- t `-- foo.t 1 directory, 2 files $ cat Makefile.PL use ExtUtils::MakeMaker; WriteMakefile( NAME => 'foo', AUTHOR => 'foo', ABSTRACT => 'foo', VERSION => '1', ); $ cat t/foo.t use Test::More 'no_plan'; use POE; $poe_kernel->alias_resolve(undef); ok(1); $ perl Makefile.PL Writing Makefile for foo $ perl t/foo.t ok 1 1..1 $ prove t/foo.t t/foo.t .. ok All tests successful. Files=1, Tests=1, 0 wallclock secs ( 0.04 usr 0.00 sys + 0.08 cusr 0.00 csys = 0.12 CPU) Result: PASS $ make test PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/foo.t .. Use of uninitialized value $session in exists at /usr/local/share/perl/5.10.0/POE/Resource/Sessions.pm line 322. Use of uninitialized value $sid in hash element at /usr/local/share/perl/5.10.0/POE/Resource/SIDs.pm line 80. Use of uninitialized value $alias in exists at /usr/local/share/perl/5.10.0/POE/Resource/Aliases.pm line 96. Use of uninitialized value $whatever in string eq at /usr/local/share/perl/5.10.0/POE/Kernel.pm line 646. t/foo.t .. ok All tests successful. Files=1, Tests=1, 0 wallclock secs ( 0.02 usr 0.00 sys + 0.07 cusr 0.01 csys = 0.10 CPU) Result: PASS
TAP::Parser::Iterator::Process (part of TAP and Test::Harness) is running tests with -w turned on.  As a result, your use of undef is throwing warnings.  From this point of view, the "bug" is within TAP and/or Test::Harness; not POE.

I wouldn't call these warnings "extra".  They are occurring for a good reason: You're passing undef into a method that requires a defined parameter.  I recommend enabling POE's ASSERT_DEFAULT flag in tests.  It would have explained the error better and a bit sooner.

ASSERT_DEFAULT is not recommended to be on during production runs, as the copious error checking is bad for performance.