Subscribed unsubscribe Subscribe Subscribe

forkを使うテストではTest2::IPCを使うといい

perlでforkを使うテストでは Test::SharedFork をuseしておくと安心なことが知られているが、最近その実装をみたところTest2がロードされていたら、そのIPC実装を使うように変わっていた。

よっていま、forkを使ったテストを新しく書くなら、直接Test2::IPCを使えばいいと思う。

use strict;
use warnings;
use Test2::IPC;
use Test::More;

my $pid = fork // die;
if ($pid == 0) {
    is 1 + 1, 2;
    exit;
}
waitpid $pid, 0;

done_testing;

実際、Mojo::IOLoop::Signalのテストでそうした。