This issue came up in I8a49143, see
https://integration.wikimedia.org/ci/job/mediawiki-quibble-vendor-postgres-php70-docker/2453/console
The third parameter of assertArrayEquals() is called $ordered and is
meant to take the order of elements into account. Providing a string sets
this to true. The SQL query in ChangesListSpecialPageTest seems to behave
a bit random in Postgres and does not always return the elements in the
same order. This is fine. It's just the assertion that was to strict, by
accident.
I found a few more instances of the same issue with a regular expression.
In most cases I intentionally changed it to assertSame() because the order
of elements is actually guaranteed by the code, and needs to be (e.g.
mixing width and height of an image would be fatal).
Change-Id: Ice66cab873a7271d55809a486ce28cf637e43e33
}
public function testGetImageSize() {
}
public function testGetImageSize() {
- $this->assertArrayEquals(
[ 2480, 3508, 'DjVu', 'width="2480" height="3508"' ],
$this->handler->getImageSize( null, $this->filePath . '/LoremIpsum.djvu' ),
'Test file LoremIpsum.djvu should have a size of 2480 * 3508'
[ 2480, 3508, 'DjVu', 'width="2480" height="3508"' ],
$this->handler->getImageSize( null, $this->filePath . '/LoremIpsum.djvu' ),
'Test file LoremIpsum.djvu should have a size of 2480 * 3508'
public function testGetPageDimensions() {
$file = $this->dataFile( 'LoremIpsum.djvu', 'image/x.djvu' );
public function testGetPageDimensions() {
$file = $this->dataFile( 'LoremIpsum.djvu', 'image/x.djvu' );
- $this->assertArrayEquals(
- [ 2480, 3508 ],
+ $this->assertSame(
+ [ 'width' => 2480, 'height' => 3508 ],
$this->handler->getPageDimensions( $file, 1 ),
'Page 1 of test file LoremIpsum.djvu should have a size of 2480 * 3508'
);
$this->handler->getPageDimensions( $file, 1 ),
'Page 1 of test file LoremIpsum.djvu should have a size of 2480 * 3508'
);
'Learner1', 'Learner2', 'Learner3', 'Learner4',
'Experienced1',
],
'Learner1', 'Learner2', 'Learner3', 'Learner4',
'Experienced1',
],
- $this->fetchUsers( [ 'learner', 'experienced' ], $now ),
- 'Learner and more experienced'
+ $this->fetchUsers( [ 'learner', 'experienced' ], $now )
$this->assertFileContains( $testFileName, $sparql );
$processed = $processedProperty->getValue( $dumpScript );
$this->assertFileContains( $testFileName, $sparql );
$processed = $processedProperty->getValue( $dumpScript );
- $expectedProcessed = $preProcessed;
+ $expectedProcessed = array_keys( $preProcessed );
foreach ( $result as $row ) {
if ( isset( $row->_processed ) ) {
$this->assertArrayHasKey( $row->_processed, $processed,
foreach ( $result as $row ) {
if ( isset( $row->_processed ) ) {
$this->assertArrayHasKey( $row->_processed, $processed,
$expectedProcessed[] = $row->_processed;
}
}
$expectedProcessed[] = $row->_processed;
}
}
- $this->assertArrayEquals( $expectedProcessed, array_keys( $processed ),
+ $this->assertSame( $expectedProcessed, array_keys( $processed ),
'Processed array has wrong items' );
}
'Processed array has wrong items' );
}
$css = file_get_contents( $basepath . 'comments.css' );
$files = CSSMin::getLocalFileReferences( $css, $basepath );
$expected = [ $basepath . 'not-commented.gif' ];
$css = file_get_contents( $basepath . 'comments.css' );
$files = CSSMin::getLocalFileReferences( $css, $basepath );
$expected = [ $basepath . 'not-commented.gif' ];
- $this->assertArrayEquals(
$expected,
$files,
'Url(...) expression in comment should be omitted.'
$expected,
$files,
'Url(...) expression in comment should be omitted.'