↑↓ 选择 ↵ 打开 ⌫ 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

不受支持的版本: 7.0 / 6.4
历史版本PostgreSQL 7.0 已于 2005 年 5 月结束社区维护,本页译文保留供仍在使用旧版本的读者参考。新系统请看当前版本手册首页。

34.4. 平台相关的比较文件

由于某些测试固有地会产生平台相关的结果,我们提供了一种提供平台相关结果比较文件的方法。通常,同一种变化适用于多个平台;与其为每个平台提供一个单独的比较文件,不如用一个映射文件来定义使用哪个比较文件。因此,要消除特定平台上虚假的测试"失败",你必须选择或制作一个变体结果文件,然后向映射文件(即 "resultmap")中添加一行。

映射文件中的每一行的形式是

           testname/platformnamepattern=comparisonfilename
        

测试名就是特定回归测试模块的名称。平台名模式是一个 expr(1) 风格的模式(即一个在开头隐式带有 ^ 锚点的正则表达式)。它与 config.guess 输出的平台名进行匹配。比较文件名是替代结果比较文件的名称。

例如:int2 回归测试包含一个故意输入的、大到无法放入 int2 的值。所产生的具体错误消息是平台相关的;我们的参考平台发出

    ERROR:  pg_atoi: error reading "100000": Numerical result out of range
        

但相当多的其他 Unix 平台发出

    ERROR:  pg_atoi: error reading "100000": Result too large
        

因此,我们提供了一个变体比较文件 int2-too-large.out,其中包含这种拼写的错误消息。为了在 HPPA 平台上消除虚假的"失败"消息,resultmap 中包含了

           int2/hppa=int2-too-large
        

它会在任何 config.guess 的输出以 'hppa' 开头的机器上触发。resultmap 中的其他行为其他合适的平台选择变体比较文件。

提交更正

译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。