我有一个函数,在处理它们之后返回一个记录数组数组。预期的返回值看起来像这样 -
[
[....]
['Name', 'Quantity', 'Tags', 'Price', 'Total', 'Autogenerated Value']
[....]
[....]
]
字段Autogenerate Value
可以是动态生成的任何内容。
目前我正在尝试使用assertEquals
方法,但每次自动生成值都会有所不同。这是匹配器,我可以在这里使用anything()
。
我真的不想编写自己的断言函数迭代预期值并使用assertArraySubset
断言
答案 0 :(得分:0)
这还不可能,但你可以扩展PHPUnit来评估数组中的约束:
编写一个像这样的自定义{{ 1288323623006 | date:'short'}}
实现
{{ 1288323623006 | date:'d/M/yy h:mm:ss a' }}
使用以下命令在引导程序文件中添加比较器:
Comparator
现在,PHPUnit应该评估约束,而不是在它们发生的任何地方进行比较。
答案 1 :(得分:0)
我真的不想编写自己的断言函数迭代预期值并使用assertArraySubset断言
但为什么不呢?
如果您不想在日志中使用大量断言,则可以将断言方法限制为抛出PHPUnit_Framework_ExpectationFailedException
,以防出现任何错误(即,如果数组的常量部分不存在或者最后一个,具有精确问题元素内容的动态生成元素不具有预期值。