我有以下Perl代码,它依赖于Term::ReadKey获取终端宽度; 我的NetBSD版本缺少此模块,因此我希望在模块丢失时将终端的宽度默认为80.
我无法弄清楚如何有条件地使用模块,提前知道它是否可用.我当前的实现只是退出一条消息,说它无法找到Term::ReadKey它是否缺席.
#/usr/pkg/bin/perl -w
# Try loading Term::ReadKey
use Term::ReadKey;
my ($wchar, $hchar, $wpixels, $hpixels) = GetTerminalSize();
my @p=(2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97);
my $plen=$#p+1;
printf("num |".("%".int(($wchar-5)/$plen)."d") x $plen."\n",@p);
Run Code Online (Sandbox Code Playgroud)
我在NetBSD上使用Perl 5.8.7,在CygWin上使用5.8.8你能帮我更有效地将它实现到我的脚本中吗?
我在Perl模块IO :: Socket :: SSL中发现了一个错误,我可以修复它,但是,我担心测试修复.我从Debian下载了源代码包(因为我打算生成一个Debian软件包或补丁),然后查看了该t/目录.在那里,我发现测试覆盖率最多是稀缺的.
所以我想问一下是否有一个众所周知的程序来测试这段代码.是否有更好的覆盖范围的另一个测试(不在分发中)?另外,我想使用不在核心发行版(Test :: LeakTrace)中的测试模块进行测试.那可以吗?
我想分发具有一个CPAN依赖项的Perl应用程序.当有人启动应用程序时,我可以包含对此依赖项的检查.通过命令行参数或者直接在perl里面?