[poe-commits] SF.net SVN: poe:[2476] trunk/poe-test-loops/lib/POE/Test/Loops
Brought to you by:
rcaputo
From: <ap...@us...> - 2009-03-01 12:54:08
|
Revision: 2476 http://poe.svn.sourceforge.net/poe/?rev=2476&view=rev Author: apocal Date: 2009-03-01 12:53:59 +0000 (Sun, 01 Mar 2009) Log Message: ----------- more tweaks to get the tests to SKIP on buggy MSWin32 perls :( Modified Paths: -------------- trunk/poe-test-loops/lib/POE/Test/Loops/connect_errors.pm trunk/poe-test-loops/lib/POE/Test/Loops/wheel_tail.pm Modified: trunk/poe-test-loops/lib/POE/Test/Loops/connect_errors.pm =================================================================== --- trunk/poe-test-loops/lib/POE/Test/Loops/connect_errors.pm 2009-03-01 08:21:04 UTC (rev 2475) +++ trunk/poe-test-loops/lib/POE/Test/Loops/connect_errors.pm 2009-03-01 12:53:59 UTC (rev 2476) @@ -7,15 +7,20 @@ use strict; -BEGIN { - unless (-f "run_network_tests") { - print "1..0 # Skip Network access (and permission) required to run this test\n"; - CORE::exit(); - } +use Test::More; + +unless (-f "run_network_tests") { + plan skip_all => "Network access (and permission) required to run this test"; } -use Test::More tests => 1; +# to work around an issue on MSWin32+ActiveState 5.6.1 +# it will always timeout via our alarm, and if we remove it - the OS never times out! +if ($^O eq 'MSWin32' and $] < 5.008) { + plan skip_all => "This test always fails on MSWin32+perl older than 5.8.0"; +} +plan tests => 3; + sub POE::Kernel::ASSERT_DEFAULT () { 1 } sub POE::Kernel::TRACE_DEFAULT () { 1 } sub POE::Kernel::TRACE_FILENAME () { "./test-output.err" } @@ -26,19 +31,24 @@ my $unused_port; { - use IO::Socket::INET; - my $reserved = IO::Socket::INET->new( - LocalAddr => '127.0.0.1', - LocalPort => 0, - ReuseAddr => 0, - ); - $unused_port = (sockaddr_in(getsockname($reserved)))[0]; + use IO::Socket::INET; + my $reserved = IO::Socket::INET->new( + LocalAddr => '127.0.0.1', + #LocalPort => 0, # 0 is the default, and as a bonus this works on MSWin32+ActiveState 5.6.1 + ReuseAddr => 0, + ); + if (defined $reserved) { + $unused_port = (sockaddr_in(getsockname($reserved)))[0]; + pass("found unused port: $unused_port"); + } else { + fail("found unused port error: $@"); + } } # Timeout. POE::Session->create( - inline_states => { + inline_states => { _start => sub { $poe_kernel->alias_set('watcher'); $_[HEAP]{alarm} = $poe_kernel->alarm_set(timeout => time() + 10); @@ -75,4 +85,6 @@ POE::Kernel->run(); +pass("run() returned successfully"); + 1; Modified: trunk/poe-test-loops/lib/POE/Test/Loops/wheel_tail.pm =================================================================== --- trunk/poe-test-loops/lib/POE/Test/Loops/wheel_tail.pm 2009-03-01 08:21:04 UTC (rev 2475) +++ trunk/poe-test-loops/lib/POE/Test/Loops/wheel_tail.pm 2009-03-01 12:53:59 UTC (rev 2476) @@ -22,6 +22,12 @@ plan skip_all => "Cygwin file open/locking semantics thwart this test."; } +# to work around an issue on MSWin32+old perls +# it always hangs on the 7th test... +if ($^O eq 'MSWin32' and $] < 5.0010) { + plan skip_all => "This test always hangs on MSWin32+perl older than 5.10.0"; +} + plan tests => 10; use POE qw( This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |