Commit graph

21 commits

Author SHA1 Message Date
Hannah Okwelum 8f25cfbde2 phpunit: Remove use of internal KeyValueDependencyStore class
ResourceLoader uses the KeyValueDependencyStore by default. And, in
PHPUnit context, MediaWiki's MainStash defaults to HashBagOStuff. It makes sense to remove this since both are the default already.

Additionally, since we are in the process of merging KeyValueDependencyStore into DependencyStore, the internal
KeyValueDependencyStore class name will no longer exist.

Neeeded by Ia581ac107cb139afb0740a36f4f22f047d0de1ad.

Bug: T343492
Change-Id: Ib3c41ff5d615ba75ec25af4858746eaf708c8750
2024-09-11 00:43:25 +00:00
Michael Große b32116de30 Add styles performance budget for GrowthExperiments extension
We have CI failing on this test for GrowthExperiments with the styles
budget being exceeded. On changes that do not touch production code at
all.

I do not know how this can happen in the first place, or whether fixing
it this way is sensible, but we need to unblock our CI.

Change-Id: I178cb7ff6f111a11e9b6060960548e65d1c7d3c0
2024-06-14 13:01:43 +02:00
Steph Toyofuku 578e8aaf18 Raise performance budget for GrowthExperiments extension
Bump the GrowthExperiments extension-specific performance budget from
5000 to 7500 since we seem to be running right up against the limit.
Adding a bit of extra wiggle room since this seems to be causing issues
for the growth team, although we should potentially work with them as
the existing comment suggests to lower this

https: //wikimedia.slack.com/archives/C8W3HEHLG/p1718263715588799
Change-Id: Ide1cc5cc1e78dc86b90d731f54a913893ba8c8bd
2024-06-13 14:44:02 -07:00
Umherirrender e8ffe82549 tests: Use renamed class BundleSizeTestBase
Follow-Up: I131e0d85bd14e75aaebd6f212b2e64a45d4c73a2
Change-Id: I55d7a3f0aa281e813e92f676c225fc825c256f13
2024-06-12 20:39:06 +02:00
Umherirrender d3b251de52 Use namespaced classes
Changes to the use statements done automatically via script
Addition of missing use statement done manually

Change-Id: I84dc0ec8a909fce94db2b958eadac9caf661972b
2024-06-10 22:28:40 +02:00
James D. Forrester ab7d8ada65 PerformanceBudgetTest: Increase WikiLambda's budget post-Codex 1.6.1
Change-Id: Id2ce4de5efc7bfa67334eecfea0bdda85ac11640
2024-05-31 09:45:51 -04:00
James D. Forrester ac3c525420 PerformanceBudgetTest: Add WikiLambda dependencies to unbreak merge
Rough numbers for now.

Change-Id: Ie487fc56eb199f94e0b72f59d5c54f623570773b
2024-05-22 13:25:01 -04:00
Jon Robson f797b8760d Adapt bundlesize based on installed extensions
Allocate specific space for each installed extension based on
whether it is installed. This should reduce false positives (assuming
we have accounted for every installed extension)

If we haven't we'll follow up with additional budgets as we learn
about them.

Bug: T365480
Change-Id: Ie487fc56eb199f94e0b72f59d5c54f623570773a
2024-05-22 05:37:28 +00:00
Jon Robson a67a260451 Restore budget test with better guidance and special case FlaggedRevs
Restore the budget test with better guidance on the process to
handling this issue.

Bug: T360102
Change-Id: I1ca80945e2ef49604a85e1bec6004f30ad13924d
2024-03-14 11:47:54 -07:00
Muhammad Jaziraly be0e56bb73 Skip PerformanceBudgetTest::testTotalModulesSize
Unblocks CI for Wikibase extension.
CI failed in I824acad352c366a35a243dac2086e3c5e98bc6eb

Bug: T350338
Change-Id: Id9926ff9a60cb0cac56a612a792d5ffde55c4c63
2024-03-14 09:06:34 +00:00
Fomafix fe449821c8 Use $this->getServiceContainer() in tests
Use
	$this->getServiceContainer()
instead of
	MediaWikiServices::getInstance()
in tests.

Change-Id: Id614ed8948fff75991ecf2c805707bc7f16f36a6
2024-03-01 15:31:49 +00:00
Jon Robson 9d054339db PerformanceBudget: Remove FlaggedRevisions workaround
With I1e45d0dacf58b2e03886d3b986309e13e754e324 this should no
longer be needed as the styles are now restricted to reviewers and
the default user is not a reviewer

After merging this change, please confirm that any open
FlaggedRevisions patches pass Jenkins CI.

Change-Id: I53e3f2c15ad6797f39747e5bc00039582edb8f61
2023-11-14 17:25:56 +00:00
Moh'd Khier Abualruz 9f35fd8d56 Vector PerformanceBudgetTest::testTotalModulesSize CI break
- Account for 10 Kbs in the case wikibase is enabled for scripts budget
- Message generation centralised function
- Added bundlesize.config.json file path to message.
- Update the message to show in Kbs

Bug: T350338
Change-Id: I8490cd7aa4468b54bab05960c8c594093167cb72
2023-11-07 17:15:59 +00:00
Leszek Manicki 72ec5037cf Skip PerformanceBudgetTest::testTotalModulesSize
The tests breaks CI for multiple extensions.

Bug: T350338
Change-Id: Id4879c3a8f53f7e59b9c04bfae3af11fe42a307c
2023-11-07 10:12:44 +01:00
Jon Robson b7dcd8ffa8 Restore test and increase budget with debug information
*. Current budget didn't take into account:
** RelatedArticles
** FlaggedRevisions
** VisualEditor
* Vector legacy budget is set to Vector 2022 to ensure both skins
have similar performance demands.
* Adds workaround for T350514

Bug: T346813
Bug: T350338
Change-Id: I3377bec5e1c368d30e77e22e93b2e44bbfe883bd
2023-11-03 21:27:39 +00:00
Moh'd Khier Abualruz bcc71fc459 Performance budget Test message update
Followup to Id5c28ecec20c4a74a113dd8781b6a022391ae443

- Make the message more readable

Bug: T350292
Change-Id: I299bcca61b8df30024ad70c17ca33bf0f6c322fe
2023-11-03 13:35:38 +01:00
jenkins-bot cb9bf63924 Merge "PerformanceBudgetTest: Use existing title" 2023-11-02 11:56:01 +00:00
Jon Robson dcf343e1c7 PerformanceBudgetTest: Use existing title
Follow up to Id5c28ecec20c4a74a113dd8781b6a022391ae443
Certain modules may only load if a page exists, so using an existing
title may catch more issues in CI.

Bug: T346813
Change-Id: I399f97720702c038ade6394f0193c27feb4a3bc8
2023-11-02 11:53:02 +01:00
Gergő Tisza 160fc79bc1
Skip PerformanceBudgetTest::testTotalModulesSize
Broke CI.

Follows up Id5c28ecec20c4a74a113dd8781b6a022391ae443.

Bug: T350338
Change-Id: Ief89f9dbc10b51d4eab238484e3b7f546c40c769
2023-11-01 22:03:00 -07:00
Moh'd Khier Abualruz 20b9d04b2f Performance budget's should consider modules added by hooks
- Add ModulesSizeTest.php that checks the total loaded scripts and styles budget sizes and checks if they exceed the budgets assigned in bundlesize.config.json.
- Changed the json structure of bundlesize.config.json to support both ModulesSizeTest.php and BundleSizeTest.php.
- Handled the new data structure in the BundleSizeTest.php so the dataProvider gets proper data.

Bug: T346813
Change-Id: Id5c28ecec20c4a74a113dd8781b6a022391ae443
2023-11-01 20:50:48 +00:00
Kosta Harlan 6270246d44 Move bundlesize test to MediaWikiIntegration test
The main motivation is to reduce runtime by not invoking an unneeded
Selenium test phase in Quibble, which currently needs about 1 minute to
install npm dependencies.

Depends-On: Ieb7591f3c0ac843677a2a61b4ad47f920fc2ca2d
Bug: T255149
Change-Id: I0563421b3a3d3e6e81abec987c266ade275b47a1
2021-12-10 08:48:59 +01:00