mirror of
https://github.com/silverstripe/silverstripe-framework
synced 2024-10-22 14:05:37 +02:00
FIX Use array_intersect() with expected values so that the order matches.
The values in $values aren't returned in any order, so this test can randomly fail. This changes the check from expected = $values to $values \cap expected = $value. PHP's array_intersect maintains the keys of the first array, so order is preserved. The intersect also guarentees that the only accepted values are the expected ones.
This commit is contained in:
parent
f1c021ff22
commit
cd61b61a84
@ -863,7 +863,7 @@ class DataObjectTest extends SapphireTest {
|
||||
// Check that the values of those fields are properly read from the database
|
||||
$values = DataObject::get("DataObjectTest_Team", "\"DataObjectTest_Team\".\"ID\" IN
|
||||
($obj1->ID, $obj2->ID)")->column("SubclassDatabaseField");
|
||||
$this->assertEquals(array('obj1', 'obj2'), $values);
|
||||
$this->assertEquals(array_intersect($values, array('obj1', 'obj2')), $values);
|
||||
}
|
||||
|
||||
function testClassNameSetForNewObjects() {
|
||||
|
Loading…
Reference in New Issue
Block a user