Порядок сортировки должен быть одинаковым для массивов, чтобы assertEquals
и assertSame
могли пройти. Представьте себе, если вы json_encode и то и другое, получите ли они одинаковый результат. Похоже, ваши массивы не в том же порядке сортировки на основе вывода phpunit.
<?php
class ArrayTest extends PHPUnit\Framework\TestCase {
// Fails
public function testArraysEqualsDifferentOrder() {
$a = Array(['3', '2'], '1');
$b = Array(['2', '3'], '1');
$this->assertEquals($a, $b);
}
// Fails
public function testArraysSameDifferentOrder() {
$a = Array(['3', '2'], '1');
$b = Array(['2', '3'], '1');
$this->assertSame($a, $b);
}
// Passes
public function testArraysEqualSameOrder() {
$a = Array(['2', '3'], '1');
$b = Array(['2', '3'], '1');
$this->assertEquals($a, $b);
}
// Passes
public function testArraysSameSameOrder() {
$a = Array(['2', '3'], '1');
$b = Array(['2', '3'], '1');
$this->assertSame($a, $b);
}
}