Группа :: Разработка/Perl
Пакет: perl-Event-Lib
Главная Изменения Спек Патчи Sources Загрузить Gear Bugs and FR Repocop
Патч: Event-Lib-tests-fork.patch
Скачать
Скачать
##
## ok() does not increment correctly when forked
## Test::Fork used for tests with fork: 20_signal.t, 51_cleanup_persistent.t
##
--- Event-Lib/t/20_signal.t 2009-07-13 14:19:19 +0400
+++ Event-Lib-1.03/t/20_signal.t 2009-07-13 15:49:39 +0400
@@ -1,5 +1,5 @@
-use Test;
-BEGIN { plan tests => 3 }
+use Test::More tests=>4;
+use Test::Fork;
use Event::Lib;
use Devel::Peek;
@@ -8,16 +8,7 @@
use POSIX;
-my $pid = fork;
-skip($!, 1) if not defined $pid;
-
-if ($pid) {
- # so the child can call event_init()
- sleep 1;
- kill SIGHUP => $pid;
- ok(1);
- wait;
-} else {
+my $pid = fork_ok(1, sub {
event_init;
signal_new(SIGHUP, sub { ok(1); exit; })->add;
@@ -25,6 +16,10 @@
event_one_loop(10);
ok(0);
exit;
-}
-
+});
+skip($!, 1) if not defined $pid;
+# so the child can call event_init()
+sleep 1;
+kill SIGHUP => $pid;
+ok(1);
--- Event-Lib/t/51_cleanup_persistent.t 2009-07-13 13:25:06 +0400
+++ Event-Lib-1.03/t/51_cleanup_persistent.t 2009-07-13 15:53:22 +0400
@@ -19,46 +19,40 @@
use Event::Lib;
use POSIX qw/SIGHUP/;
-use Test;
-BEGIN { plan tests => 6; }
+use Test::More tests=>8;
+use Test::Fork;
-my $pid = fork;
-if (not defined $pid) {
- skip("couldn't fork: $!", 1) for 1 .. 6;
- exit;
-}
-
-if ($pid) {
- # so the child can call event_init()
- sleep 1;
- kill SIGHUP => $pid;
- ok(1);
- wait;
-} else {
+my $pid = fork_ok(2, sub {
event_init;
MyEvent->new(SIGHUP, sub {})->add;
ok($_DESTROY, "not called");
event_one_loop;
- ok($_DESTROY, "not called", "Event::Lib::signal::DESTROY erroneously called");
+ ok($_DESTROY, "not called");#, "Event::Lib::signal::DESTROY erroneously called");
+ exit;
+});
+if (not defined $pid) {
+ skip("couldn't fork: $!", 1) for 1 .. 6;
exit;
}
-$_DESTROY = "not called";
+# so the child can call event_init()
+sleep 1;
+kill SIGHUP => $pid;
+ok(1);
-$pid = fork;
-skip($!, 2) if not defined $pid;
+$_DESTROY = "not called";
-if ($pid) {
- # so the child can call event_init()
- sleep 1;
- kill SIGHUP => $pid;
- ok(1);
- wait;
-} else {
+$pid = fork_ok(2,sub {
event_init;
MyEvent->new(SIGHUP, sub {shift->remove})->add;
ok($_DESTROY, "not called");
event_one_loop;
- ok($_DESTROY, "called", "Event::Lib::signal::DESTROY called too late");
+ ok($_DESTROY, "called");#, "Event::Lib::signal::DESTROY called too late");
exit;
-}
+});
+skip($!, 2) if not defined $pid;
+
+# so the child can call event_init()
+sleep 1;
+kill SIGHUP => $pid;
+ok(1);