Page MenuHomePhabricator

Phpunit tests of Kartographer fails when running with Dashiki extensions (SimpleStyleParserTest)
Closed, ResolvedPublic

Description

https://gerrit.wikimedia.org/r/c/mediawiki/extensions/Dashiki/+/916891

https://integration.wikimedia.org/ci/job/quibble-vendor-mysql-php74-noselenium-docker/100807/console

1) Kartographer\Tests\SimpleStyleParserTest::testNormalizeAndSanitize with data set #9 ('{\n					"type": "ExternalData...n				}', '{\n					"type": "ExternalData...n				}')
Failed asserting that false is identical to true.

/workspace/src/extensions/Kartographer/tests/phpunit/SimpleStyleParserTest.php:132
/workspace/src/tests/phpunit/MediaWikiIntegrationTestCase.php:522
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"HashBagOStuff"}
===

Event Timeline

I tried to figure out what's going on here but had to give up. Locally I don't see an issue.

One thing I noticed is that both extensions depend on the JsonConfig extension and somehow use it as a vehicle. Kartographer does have a page service that loads GeoJSON from a JSON page in a Data: namespace. (That's exactly the test that fails.) Dashiki is supposed to render JSON pages in human-readable HTML. But that should only influence how a page looks, not how APIs behave.

Dashiki doesn't have any tests.

Change 982158 had a related patch set uploaded (by Umherirrender; author: Umherirrender):

[mediawiki/extensions/Kartographer@master] tests: Reset title parser from JCSingleton in SimpleStyleParserTest

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

Change 982158 abandoned by Umherirrender:

[mediawiki/extensions/Kartographer@master] tests: Reset title parser from JCSingleton in SimpleStyleParserTest

Reason:

Cannot reset static $isInitialized in JCSingleton::init() as it is function locally and not a property or such.

It seems JCSingleton must be converted to service to benefit from changes of global config

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

Change 982158 restored by Umherirrender:

[mediawiki/extensions/Kartographer@master] tests: Reset title parser from JCSingleton in SimpleStyleParserTest

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

Change 983523 had a related patch set uploaded (by Umherirrender; author: Umherirrender):

[mediawiki/extensions/JsonConfig@master] tests: Allow forced init for JCSingleton after config change

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

Change 983523 merged by jenkins-bot:

[mediawiki/extensions/JsonConfig@master] tests: Allow forced init for JCSingleton after config change

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

Change 982158 merged by jenkins-bot:

[mediawiki/extensions/Kartographer@master] tests: Force init for JCSingleton after config change

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

Umherirrender claimed this task.
Umherirrender removed a project: Patch-For-Review.