.pl な config ファイルのコンパイルがとおるかチェックしてみる
こんなかんじか。
use strict; use warnings; use Test::More; use Path::Class; use IPC::Open3; use POSIX; for my $file (grep /\.pl$/, dir('config')->children) { my($wtr, $rdr, $err); my @cmd = ($^X, (map { "-I$_" } grep { !ref $_ } @INC), '-c', $file); my $pid = open3($wtr, $rdr, $err, @cmd); waitpid($pid, 0); ok((POSIX::WIFEXITED($?) && POSIX::WEXITSTATUS($?) == 0), $file); } done_testing;