aboutsummaryrefslogtreecommitdiffstats
path: root/tests/phpunit/includes/cache/MessageCacheTest.php
diff options
context:
space:
mode:
authorAaron Schulz <aschulz@wikimedia.org>2018-10-15 08:08:24 -0700
committerKrinkle <krinklemail@gmail.com>2018-10-16 20:39:38 +0000
commit4fc5ba8bf83102b02256ff3173501b9f6b609234 (patch)
treeb19a3932eb6765a5991a750ea1e6873748dc609d /tests/phpunit/includes/cache/MessageCacheTest.php
parentd1592cdf05dd20fa0739301abbd78eb8eb1503f0 (diff)
downloadmediawikicore-4fc5ba8bf83102b02256ff3173501b9f6b609234.tar.gz
mediawikicore-4fc5ba8bf83102b02256ff3173501b9f6b609234.zip
messagecache: check overridable message array in getMsgFromNamespace()
Follow up to a3d6c1411dad. This avoids extra queries for messages that have a software defined value. Bug: T193271 Change-Id: I25aa0e27200a0b417721cf1fbd34a82095405b89
Diffstat (limited to 'tests/phpunit/includes/cache/MessageCacheTest.php')
-rw-r--r--tests/phpunit/includes/cache/MessageCacheTest.php17
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/phpunit/includes/cache/MessageCacheTest.php b/tests/phpunit/includes/cache/MessageCacheTest.php
index 661f325149db..c340c08e49f2 100644
--- a/tests/phpunit/includes/cache/MessageCacheTest.php
+++ b/tests/phpunit/includes/cache/MessageCacheTest.php
@@ -196,4 +196,21 @@ class MessageCacheTest extends MediaWikiLangTestCase {
[ 'ćaB', 'ćaB' ],
];
}
+
+ public function testNoDBAccess() {
+ global $wgContLanguageCode;
+
+ $dbr = wfGetDB( DB_REPLICA );
+
+ MessageCache::singleton()->getMsgFromNamespace( 'allpages', $wgContLanguageCode );
+
+ $this->assertEquals( 0, $dbr->trxLevel() );
+ $dbr->setFlag( DBO_TRX, $dbr::REMEMBER_PRIOR ); // make queries trigger TRX
+
+ MessageCache::singleton()->getMsgFromNamespace( 'go', $wgContLanguageCode );
+
+ $dbr->restoreFlags();
+
+ $this->assertEquals( 0, $dbr->trxLevel(), "No DB read queries" );
+ }
}