【发布时间】:2012-06-16 19:50:08
【问题描述】:
在我的模块中,我有这个代码:
croak("unable to parse file: $!");
然后,在我的测试中,我想检查当我尝试解析一个不存在的文件时是否收到了正确的错误消息:
like(
exception { HTML::Tree->new_from_file( "t/non_existent.html" ) },
qr!^unable to parse file: No such file !,
"opening missing file failed"
);
只要测试在英语语言环境中运行,它就可以正常工作。但是,如果您在德语语言环境中运行测试,则会返回错误消息unable to parse file: Datei oder Verzeichnis nicht gefunden,并且测试会失败。其他地区也有类似的问题。
我不敢相信这是第一次出现这种情况,但我在 CPAN 上找不到任何可解决此问题的模块。人们是否根本不会测试错误消息的$! 部分?有没有比将测试更改为仅检查 qr!^unable to parse file: ! 更好的解决方案?
注意:这是RT#77823 in HTML-Tree。
【问题讨论】:
标签: perl unit-testing localization internationalization error-handling