Page MenuHomePhabricator

Enable unit tests on BlueSpice* repos
Closed, ResolvedPublic

Description

Every BlueSpice related repo on WMF git/gerrit should integrate as much as possible into the testing infrastructure.

@Paladox already did some important work on this topic [1]. This task aims to improve communication between the MediaWiki community and the BlueSpice developers.

[1] https://gerrit.wikimedia.org/r/#/c/270478/

What needs to be done?

  • All API modules need proper I18N

Migrate the CI jobs to use Quibble as part of T183512. Quibble roughly:

  • composer test && npm test
  • php maintenance/install.php --with-extensions
  • php tests/phpunit/phpunit.php --testsuite extensions
  • Runs QUnit
  • Runs webdriver.io Selenium tests

As of June 21st, BlueSpiceFoundation is no more throwing a deprecation which unblocked it (was T196084 ). It has been migrated to use the Quibble jobs and pass on master and REL1_27. We have to migrate the rest and make them paste.

@hashar triggered the Jenkins jobs for all extensions targetting both master and REL1_27 branches. The Jenkins log as raw text and html are available at: https://people.wikimedia.org/~hashar/T130811/ . The table below offers a summary and links to the Jenkins consoles (which would disappear after July 20th 2018):

StatusExtensionRepoFailure console
T202499BlueSpiceBlogmasterhttps://integration.wikimedia.org/ci/job/quibble-composer-mysql-php70-docker/2532/consoleFull
OK no branchBlueSpiceBlogREL1_27
OK (non voting)BlueSpiceCategoryManagermaster
Failed (non voting)BlueSpiceCategoryManagerREL1_27https://integration.wikimedia.org/ci/job/quibble-composer-mysql-php70-docker/2314/consoleFull
Failed (non voting)BlueSpiceChecklistmasterhttps://integration.wikimedia.org/ci/job/quibble-composer-mysql-php70-docker/2323/consoleFull
OK no branchBlueSpiceChecklistREL1_27
T199714 T199716 Failed (non voting)BlueSpiceDashboardsmasterhttps://integration.wikimedia.org/ci/job/quibble-composer-mysql-php70-docker/2334/consoleFull
OK no branchBlueSpiceDashboardsREL1_27
Failed (non voting)BlueSpiceEchoConnectormasterhttps://integration.wikimedia.org/ci/job/quibble-composer-mysql-php70-docker/2336/consoleFull
Failed (non voting)BlueSpiceEchoConnectorREL1_27https://integration.wikimedia.org/ci/job/quibble-composer-mysql-php70-docker/2324/consoleFull
Failed (non voting)BlueSpiceExtendedSearchmasterhttps://integration.wikimedia.org/ci/job/quibble-composer-mysql-php70-docker/2348/consoleFull
Failed (non voting)BlueSpiceExtendedSearchREL1_27https://integration.wikimedia.org/ci/job/quibble-composer-mysql-php70-docker/2330/consoleFull
T199719 Failed (non voting)BlueSpiceExtendedStatisticsmasterhttps://integration.wikimedia.org/ci/job/quibble-composer-mysql-php70-docker/2350/consoleFull
OK no branchBlueSpiceExtendedStatisticsREL1_27
Failed (non voting)BlueSpiceGroupManagermasterhttps://integration.wikimedia.org/ci/job/quibble-composer-mysql-php70-docker/2360/consoleFull
OK no branchBlueSpiceGroupManagerREL1_27
Failed (non voting)BlueSpiceInsertMagicmasterhttps://integration.wikimedia.org/ci/job/quibble-composer-mysql-php70-docker/2377/consoleFull
OK no branchBlueSpiceInsertMagicREL1_27
Failed T197900BlueSpicePermissionManagermasterhttps://integration.wikimedia.org/ci/job/quibble-composer-mysql-php70-docker/2395/consoleFull
OK no branchBlueSpicePermissionManagerREL1_27
Failed (non voting)BlueSpiceRSSFeedermasterhttps://integration.wikimedia.org/ci/job/quibble-composer-mysql-php70-docker/2396/consoleFull
OK no branchBlueSpiceRSSFeederREL1_27
FailedBlueSpiceSmartListmasterhttps://integration.wikimedia.org/ci/job/quibble-composer-mysql-php70-docker/2401/consoleFull
OK no branchBlueSpiceSmartListREL1_27
Failed (non voting)BlueSpiceSmartlistmasterhttps://integration.wikimedia.org/ci/job/quibble-composer-mysql-php70-docker/2402/consoleFull
OK no branchBlueSpiceSmartlistREL1_27
Failed (non voting)BlueSpiceUsageTrackermasterhttps://integration.wikimedia.org/ci/job/quibble-composer-mysql-php70-docker/2407/consoleFull
OK no branchBlueSpiceUsageTrackerREL1_27

Details

SubjectRepoBranchLines +/-
integration/configmaster+1 -2
integration/configmaster+12 -21
integration/configmaster+1 -2
integration/configmaster+1 -2
integration/configmaster+1 -2
integration/configmaster+4 -8
integration/configmaster+1 -2
integration/configmaster+1 -2
integration/configmaster+1 -2
integration/configmaster+7 -14
integration/configmaster+1 -2
integration/configmaster+1 -3
integration/configmaster+6 -12
integration/configmaster+1 -2
integration/configmaster+1 -2
integration/configmaster+1 -2
integration/configmaster+2 -4
integration/configmaster+1 -2
integration/configmaster+1 -2
integration/configmaster+3 -6
integration/configmaster+1 -2
integration/configmaster+45 -0
mediawiki/extensions/BlueSpiceFoundationmaster+4 -3
integration/configmaster+1 -1
integration/configmaster+1 -1
integration/configmaster+3 -1
Show related patches Customize query in gerrit

Related Objects

StatusSubtypeAssignedTask
ResolvedOsnard
ResolvedOsnard
ResolvedOsnard
ResolvedOsnard
ResolvedOsnard
ResolvedOsnard
DuplicateOsnard
ResolvedOsnard
ResolvedNone
ResolvedNone
ResolvedReedy
ResolvedPwirth
InvalidNone
Resolvedhashar
ResolvedOsnard
Resolvedhashar
ResolvedOsnard
ResolvedOsnard
OpenNone
ResolvedOsnard
Resolvedhashar
Resolvedhashar

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes

Change 445990 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Migrate BlueSpiceArticleInfo BlueSpiceAuthors to Quibble

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

Change 445990 merged by jenkins-bot:
[integration/config@master] Migrate BlueSpiceArticleInfo BlueSpiceAuthors to Quibble

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

Change 445995 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Migrate BlueSpiceAbout to Quibble

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

Change 445995 merged by jenkins-bot:
[integration/config@master] Migrate BlueSpiceAbout to Quibble

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

Change 446011 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Migrate BlueSpiceCountThings to Quibble

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

Change 446012 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Migrate BlueSpiceContextMenu to Quibble

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

Change 446011 merged by jenkins-bot:
[integration/config@master] Migrate BlueSpiceCountThings to Quibble

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

Change 446012 merged by jenkins-bot:
[integration/config@master] Migrate BlueSpiceContextMenu to Quibble

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

Change 446032 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Migrate some BlueSpice extensions to Quibble

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

Change 446032 merged by jenkins-bot:
[integration/config@master] Migrate some BlueSpice extensions to Quibble

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

Change 446055 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Migrate BlueSpiceEditNotifyConnector to Quibble

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

Change 446056 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Migrate BlueSpiceEmoticons to Quibble

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

Change 446055 merged by jenkins-bot:
[integration/config@master] Migrate BlueSpiceEditNotifyConnector to Quibble

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

Change 446056 merged by jenkins-bot:
[integration/config@master] Migrate BlueSpiceEmoticons to Quibble

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

Change 446092 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Migrate more BlueSpice extensions to Quibble

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

Change 446092 merged by jenkins-bot:
[integration/config@master] Migrate more BlueSpice extensions to Quibble

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

Change 446100 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Migrate BlueSpiceUEModulePDF to Quibble

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

Change 446100 merged by jenkins-bot:
[integration/config@master] Migrate BlueSpiceUEModulePDF to Quibble

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

Change 446249 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Migrate BlueSpiceWhoIsOnline to Quibble

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

Change 446249 merged by jenkins-bot:
[integration/config@master] Migrate BlueSpiceWhoIsOnline to Quibble

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

Change 446253 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Migrate BlueSpicePageTemplates to Quibble

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

Change 446253 abandoned by Hashar:
Migrate BlueSpicePageTemplates to Quibble

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

Change 446253 restored by Hashar:
Migrate BlueSpicePageTemplates to Quibble

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

Change 446253 merged by jenkins-bot:
[integration/config@master] Migrate BlueSpicePageTemplates to Quibble

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

Change 446254 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Migrate more BlueSpice extensions to Quibble

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

Change 446254 merged by jenkins-bot:
[integration/config@master] Migrate more BlueSpice extensions to Quibble

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

Change 446283 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Migrate BlueSpiceSaferEdit to Quibble

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

Change 446283 merged by jenkins-bot:
[integration/config@master] Migrate BlueSpiceSaferEdit to Quibble

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

Change 450005 had a related patch set uploaded (by Pwirth; owner: Pwirth):
[mediawiki/extensions/BlueSpiceFoundation@master] Fixed phpunit tests fixture data path T200849, T130811

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

Change 450005 abandoned by Pwirth:
Fixed phpunit tests fixture data path T200849, T130811

Reason:
just tested if not using DIR would work

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

Change 450190 had a related patch set uploaded (by Pwirth; owner: Pwirth):
[mediawiki/extensions/BlueSpiceFoundation@master] Mark the BSApiWikiPageStoreTest test as broken. T130811, T200849

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

Change 450190 merged by jenkins-bot:
[mediawiki/extensions/BlueSpiceFoundation@master] Mark the BSApiWikiPageStoreTest test as broken. T130811, T200849

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

Change 454795 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Migrate BlueSpiceSubPageTree to Quibble

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

Change 454795 merged by jenkins-bot:
[integration/config@master] Migrate BlueSpiceSubPageTree to Quibble

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

@Paladox

In some cases we get errors from the ParserIntegrationTest. Something like

/workspace/src/tests/phpunit/includes/parser/ParserIntegrationTest.php:53
/workspace/src/maintenance/doMaintenance.php:94

3) ParserIntegrationTest::testParse with data set "citeParserTests.txt: <ref> with a simple template" ('[details omitted]')
Failed asserting that two strings are equal.
--- Expected
+++ Actual
@@ @@
-'<p>Templating<sup id="cite_ref-1" class="reference"><a href="#cite_note-1">&#91;1&#93;</a></sup>
+'<p>Templating<sup id="cite_ref-1" class="reference"><a href="#cite_note-1" data-bs-title="">&#91;1&#93;</a></sup>
</p>
<div class="mw-references-wrap"><ol class="references">
-<li id="cite_note-1"><span class="mw-cite-backlink"><a href="#cite_ref-1">↑</a></span> <span class="reference-text">A <i>simple</i> template.</span>
+<li id="cite_note-1"><span class="mw-cite-backlink"><a href="#cite_ref-1" data-bs-title="">↑</a></span> <span class="reference-text">A <i>simple</i> template.</span>
</li>
</ol></div>

This is because the BlueSpiceFoundation extension (on which all other BlueSpice* extensions are depending) adds the data-bs-title attribute to any link created by LinkRenderer [1]. We do this, because some of our client side code needs to know the real page title a link points to. Do you have an idea of how to prevent the ParserIntegrationTest from failing? Strange thing is that it does not happen all the time, but only in rare cases.

[1] https://github.com/wikimedia/mediawiki-extensions-BlueSpiceFoundation/blob/81ed481e39752492de1fbb37583a0bf3918f1d27/src/Hook/HtmlPageLinkRendererEnd/AddDataTitle.php#L17

Change 455145 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Skip MediaWiki tests on BlueSpiceSMWConnector

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

Change 455145 merged by jenkins-bot:
[integration/config@master] Skip MediaWiki tests on BlueSpiceSMWConnector

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

Change 455147 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Remove non voting PHPUnit tests

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

Change 455147 merged by jenkins-bot:
[integration/config@master] Remove non voting PHPUnit tests

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

Change 455162 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Migrate BlueSpiceAvatars to Quibble

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

Change 455162 merged by Hashar:
[integration/config@master] Migrate BlueSpiceAvatars to Quibble

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

Bulk of the work has been done last year. The left overs had tasks filled.

REL1_27 has been dropped so most of the failures reported originally no more apply.