Page MenuHomePhabricator

ShowSearchHitHandlerTest::testShowSearchHit test failure
Closed, ResolvedPublic

Description

ShowSearchHitHandlerTest::testShowSearchHit fails in my local environment because I have UniversalLanguageSelector enabled.

The test fixtures expect fallback language indicators to use English language names (e.g. "German"), but when ULS is loaded, the language-name lookup can return autonyms/native names (e.g. "Deutsch") instead.

This causes ShowSearchHitHandlerTest::testShowSearchHit to fail even though the search hit behavior itself has not changed.

Fix for this issue could be to mock WikibaseRepo.LanguageNameLookupFactory in the test.

20) Wikibase\Search\Elastic\Tests\ShowSearchHitHandlerTest::testShowSearchHit with data set "description from fallback" (array('en', 'Hit item'), array('de', 'Beschreibung <"here">'), array('de', 'Der hit !HERE! item'), array('de', 'Beschreibung <"here">'), null, 3, 4, 'labelHitDescDe')
Failed asserting that two strings are equal.
--- Expected
+++ Actual
@@ @@
-'<span class="wb-itemlink"><span class="wb-itemlink-label" lang="de" dir="ltr">Der hit !HERE! item <sup class="wb-language-fallback-indicator">German</sup></span> <span class="wb-itemlink-id">(Q1)</span></span>\n
+'<span class="wb-itemlink"><span class="wb-itemlink-label" lang="de" dir="ltr">Der hit !HERE! item <sup class="wb-language-fallback-indicator">Deutsch</sup></span> <span class="wb-itemlink-id">(Q1)</span></span>\n
 {\n
     "previous": "attrib",\n
     "title": "\u200eHit item\u200e | \u200eBeschreibung <\"here\">\u200e"\n
 }\n
 \n
-<div class="searchresult"><span class="wb-itemlink-description" dir="ltr" lang="de">Beschreibung &lt;&quot;here&quot;&gt; <sup class="wb-language-fallback-indicator">German</sup></span></div>\n
+<div class="searchresult"><span class="wb-itemlink-description" dir="ltr" lang="de">Beschreibung &lt;&quot;here&quot;&gt; <sup class="wb-language-fallback-indicator">Deutsch</sup></span></div>\n
 wikibase-search-result-stats,3,4'

/var/www/html/w/tests/phpunit/MediaWikiTestCaseTrait.php:227
/var/www/html/w/extensions/WikibaseCirrusSearch/tests/phpunit/ShowSearchHitHandlerTest.php:375
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"Wikimedia\\ObjectCache\\HashBagOStuff"}
[localisation] [debug] LocalisationCache using store MediaWiki\Language\LCStoreNull []
[localisation] [debug] MediaWiki\Language\LocalisationCache::loadCoreData: got localisation for de from source []
[MessageCache] [debug] MessageCache using store {class} {"class":"Wikimedia\\ObjectCache\\HashBagOStuff"}
[wfDebug] [debug] MediaWiki\Parser\ParserFactory: using default preprocessor {"private":false}
[MessageCache] [debug] disabling MessageCache: config []
[session] [debug] SessionManager using store Wikimedia\ObjectCache\HashBagOStuff []
[localisation] [debug] MediaWiki\Language\LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MicroStash using store {class} {"class":"Wikimedia\\ObjectCache\\HashBagOStuff"}
[session] [debug] SessionBackend "{session}" is unsaved, marking dirty in constructor {"session":"mmmsselilsto43c91qmfbubfe3a0ibl6"}
[session] [debug] SessionBackend "{session}" data dirty due to dirty(): {callers} {"session":"mmmsselilsto43c91qmfbubfe3a0ibl6","callers":"MediaWiki\\Session\\SessionManager->getSessionForRequest\/MediaWiki\\Session\\SessionManager->getInitialSession\/MediaWiki\\Session\\Session->getToken\/MediaWiki\\Session\\Session->set\/MediaWiki\\Session\\SessionBackend->dirty"}

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald Transcript

Change #1292877 had a related patch set uploaded (by Aude; author: Aude):

[mediawiki/extensions/WikibaseCirrusSearch@master] Mock WikibaseRepo.LanguageNameLookupFactory in ShowSearchHitHandlerTest

https://gerrit.wikimedia.org/r/1292877

aude moved this task from Backlog to Code review on the User-aude board.

Change #1292877 merged by jenkins-bot:

[mediawiki/extensions/WikibaseCirrusSearch@master] Mock WikibaseRepo.LanguageNameLookupFactory in ShowSearchHitHandlerTest

https://gerrit.wikimedia.org/r/1292877

aude moved this task from Code review to Done on the User-aude board.