Merge "ThreadItemStoreTest: Use a consistent ordering for the output"

This commit is contained in:
jenkins-bot 2022-10-24 16:23:30 +00:00 committed by Gerrit Code Review
commit 11d10e9e64

View file

@ -57,19 +57,21 @@ class ThreadItemStoreTest extends IntegrationTestCase {
$expected = [];
$actual = [];
$tables = [
'discussiontools_items',
'discussiontools_item_pages',
'discussiontools_item_revisions',
'discussiontools_item_ids',
'discussiontools_items' => [ 'it_id' ],
'discussiontools_item_pages' => [ 'itp_id' ],
// We reuse rows causing the primary key to be all out of order.
// Use a consistent ordering for the output here.
'discussiontools_item_revisions' => [ 'itr_revision_id', 'itr_items_id', 'itr_itemid_id' ],
'discussiontools_item_ids' => [ 'itid_id' ],
];
foreach ( $tables as $table ) {
foreach ( $tables as $table => $order ) {
$expected[$table] = static::getJson( "../$dir/$table.json", true );
$res = wfGetDb( DB_REPLICA )->newSelectQueryBuilder()
->from( $table )
->field( '*' )
->caller( __METHOD__ )
->orderBy( 1 )
->orderBy( $order )
->fetchResultSet();
foreach ( $res as $i => $row ) {
foreach ( $row as $key => $val ) {
@ -80,7 +82,7 @@ class ThreadItemStoreTest extends IntegrationTestCase {
// Optionally write updated content to the JSON files
if ( getenv( 'DISCUSSIONTOOLS_OVERWRITE_TESTS' ) ) {
foreach ( $tables as $table ) {
foreach ( $tables as $table => $order ) {
static::overwriteJsonFile( "../$dir/$table.json", $actual[$table] );
}
}