From d0b093d4bdc5d28eda5d37f5163f0694bd189234 Mon Sep 17 00:00:00 2001 From: Brad Jorsch Date: Tue, 12 Sep 2017 11:48:41 -0400 Subject: [PATCH] Improve flaky SiteStatsTest SiteStatsTest::testJobsCountGetCached() is somewhat flaky in that if it runs after a test that adds a page (thereby producing htmlCacheUpdate and recentChangesUpdate jobs) but doesn't have the CI framework reset the `page` tables (which has the side effect of clearing all such jobs), it will fail. This change manually clears those jobs so it doesn't depend on test ordering. Change-Id: I1277e633c81b29bda7564fa12d23f13ded7298c7 --- tests/phpunit/includes/SiteStatsTest.php | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tests/phpunit/includes/SiteStatsTest.php b/tests/phpunit/includes/SiteStatsTest.php index ea476a7cfa..cdbf9fd944 100644 --- a/tests/phpunit/includes/SiteStatsTest.php +++ b/tests/phpunit/includes/SiteStatsTest.php @@ -11,6 +11,11 @@ class SiteStatsTest extends MediaWikiTestCase { $cache = \MediaWiki\MediaWikiServices::getInstance()->getMainWANObjectCache(); $jobq = JobQueueGroup::singleton(); + // Delete EditPage jobs that might have been left behind by other tests + $jobq->get( 'htmlCacheUpdate' )->delete(); + $jobq->get( 'recentChangesUpdate' )->delete(); + $cache->delete( $cache->makeKey( 'SiteStats', 'jobscount' ) ); + $jobq->push( new NullJob( Title::newMainPage(), [] ) ); $this->assertEquals( 1, SiteStats::jobs(), 'A single job enqueued bumps jobscount stat to 1' ); -- 2.20.1