1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94
|
<?php
/**
* @group GlobalFunctions
* @covers ::wfArrayPlus2d
*/
class WfArrayPlus2dTest extends MediaWikiUnitTestCase {
/**
* @dataProvider provideArrays
*/
public function testWfArrayPlus2d( $baseArray, $newValues, $expected, $testName ) {
$this->assertEquals(
$expected,
wfArrayPlus2d( $baseArray, $newValues ),
$testName
);
}
/**
* Provider for testing wfArrayPlus2d
*
* @return array
*/
public static function provideArrays() {
return [
// target array, new values array, expected result
[
[ 0 => '1dArray' ],
[ 1 => '1dArray' ],
[ 0 => '1dArray', 1 => '1dArray' ],
"Test simple union of two arrays with different keys",
],
[
[
0 => [ 0 => '2dArray' ],
],
[
0 => [ 1 => '2dArray' ],
],
[
0 => [ 0 => '2dArray', 1 => '2dArray' ],
],
"Test union of 2d arrays with different keys in the value array",
],
[
[
0 => [ 0 => '2dArray' ],
],
[
0 => [ 0 => '1dArray' ],
],
[
0 => [ 0 => '2dArray' ],
],
"Test union of 2d arrays with same keys in the value array",
],
[
[
0 => [ 0 => [ 0 => '3dArray' ] ],
],
[
0 => [ 0 => [ 1 => '2dArray' ] ],
],
[
0 => [ 0 => [ 0 => '3dArray' ] ],
],
"Test union of 3d array with different keys",
],
[
[
0 => [ 0 => [ 0 => '3dArray' ] ],
],
[
0 => [ 1 => [ 0 => '2dArray' ] ],
],
[
0 => [ 0 => [ 0 => '3dArray' ], 1 => [ 0 => '2dArray' ] ],
],
"Test union of 3d array with different keys in the value array",
],
[
[
0 => [ 0 => [ 0 => '3dArray' ] ],
],
[
0 => [ 0 => [ 0 => '2dArray' ] ],
],
[
0 => [ 0 => [ 0 => '3dArray' ] ],
],
"Test union of 3d array with same keys in the value array",
],
];
}
}
|