私は、File::ShareDir::Installを使用してdistディレクトリに共有ファイルをインストールするモジュールを作成しています。モジュールのエクスポートされたメイン関数内で、ファイルはFile::ShareDirを使用して配置されます。File :: ShareDirを使用するモジュールをテストするにはどうすればよいですか?
この関数は、共有ファイルを読み込み、ファイル内の文字列を検索します。私のテストの1つでは、関数がいくつかの入力に対して正しい値を返したかどうかをチェックしたかったのです。だから、テストは次のようになります。
my @cases = (
[ 'input1' => 'expected1' ],
# etc
);
for my $case (@cases) {
my ($input, $expected) = @$case;
is(
my_lookup_function($input),
$expected,
"$input => $expected",
);
}
しかし、テストは
my $dir = dist_dir('My-Dist');
croaksので、実行されません。
私のMakefile.PL
は、blib
の下にある共有ファイルを見つけることができるので正しいと思われます。私はテスト中にこのディレクトリを見つけるために私のモジュールでFile::ShareDir::dist_dir
呼び出しを得るために何が必要なのか分かりません。
私はTest::File::ShareDirを見ましたが、私がやろうとしていることをするために使用できるかどうかは分かりません。
あなたはどのように現在の設定で必要な動作を実現するために私に言うか、私のためにおそらく正しく;-)
Ooooopsss:ドキュメントから
!あなたが正しい。実際に私を顔で見つめていたテストファイルには別の問題がありました。私はあなたの答えを読んで、私の焦点をシフトするまで気づかなかった。ありがとうございました。 –