【发布时间】:2012-03-12 16:32:39
【问题描述】:
我正在编写一个使用File::ShareDir::Install 在 dist 目录中安装共享文件的模块。在模块的主要导出函数中,然后使用 File::ShareDir 定位文件。
此函数加载共享文件,并在文件中查找字符串。在我的一项测试中,我想检查函数是否为一些输入返回了正确的值。所以,测试看起来像:
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');
呱呱叫。
我的Makefile.PL似乎是正确的,因为我可以在blib下找到共享文件。我只是不知道我需要做什么才能在我的模块中调用File::ShareDir::dist_dir 以在测试期间找到这个目录。
我确实看过Test::File::ShareDir,但我不明白它是否可以用来做我想做的事情。
如果您能告诉我如何使用当前设置实现所需的行为,或者建议以不同的方式做事(并且可能是正确的;-)
,我将不胜感激【问题讨论】:
标签: perl testing perl-module