【发布时间】:2011-04-19 19:01:17
【问题描述】:
当数组中元素的顺序不重要甚至可能发生变化时,有什么好方法可以断言两个对象数组相等?
【问题讨论】:
-
您关心数组中的对象是否相等,还是只关心两个数组中有 x 个对象 y?
-
@edorian 两者都是最有趣的。在我的情况下,虽然每个数组中只有一个对象 y。
-
请定义等于。比较排序object hashes你需要什么?无论如何,你可能不得不sort objects。
-
@takeshin 等于 ==。就我而言,它们是价值对象,因此不需要相同。我可能可以创建一个自定义断言方法。我需要的是计算每个数组中的元素数量,并且对于两个相等(==)中的每个元素都必须存在。
-
实际上,在 PHPUnit 3.7.24 上,$this->assertEquals 断言数组包含相同的键和值,不考虑顺序。
标签: php unit-testing phpunit assert