Commit graph

13 commits

Author SHA1 Message Date
Reedy
85396a9c99 tests: Fix @covers and @coversDefaultClass to have leading \
Change-Id: I5629f91387f2ac453ee4341bfe4bba310bd52f03
2024-02-16 22:43:56 +00:00
Reedy
19c8ca74c2 tests: Add or fix Parser test namespaces
Bug: T357823
Change-Id: I1d07ff559f4607ba98bc834a1432e014f3ebdd35
2024-02-16 22:39:13 +00:00
Subramanya Sastry
e55cc517da Move Parser to Mediawiki\Parser namespace
Bug: T166010
Co-Authored-By: Daimona Eaytoy <daimona.wiki@gmail.com>
Co-Authored-By: James Forrester <jforrester@wikimedia.org>
Co-Authored-By: Subramanya Sastry <ssastry@wikimedia.org>
Change-Id: I79b4e732c45095eedbaa80afa5eb7479b387ed8a
2024-02-16 09:18:38 -05:00
jenkins-bot
65812ee715 Merge "parser: Make all LinkHolderArray properties private" 2023-04-08 22:28:31 +00:00
Tim Starling
5e30a927bc tests: Make some PHPUnit data providers static
Just methods where adding "static" to the declaration was enough, I
didn't do anything with providers that used $this.

Initially by search and replace. There were many mistakes which I
found mostly by running the PHPStorm inspection which searches for
$this usage in a static method. Later I used the PHPStorm "make static"
action which avoids the more obvious mistakes.

Bug: T332865
Change-Id: I47ed6692945607dfa5c139d42edbd934fa4f3a36
2023-03-24 02:53:57 +00:00
thiemowmde
4ebc778eb7 parser: Make all LinkHolderArray properties private
I could not find any use outside of core, or even outside of this
class.

The class is instantiated a single time in core:
https://codesearch.wmcloud.org/search/?q=new%5CW%2BLinkHolderArray&files=%5C.php%24
This instance is not used anywhere else:
https://codesearch.wmcloud.org/search/?q=mLinkHolders&files=%5C.php%24

I would argue this doesn't really qualify as a breaking change. This
was always meant to be private.

Change-Id: I4c614dae1fe1d61c9cf8b7a03c37eb93fae33873
2023-03-15 10:44:04 +01:00
James D. Forrester
ad06527fb4 Reorg: Namespace the Title class
This is moderately messy.

Process was principally:

* xargs rg --files-with-matches '^use Title;' | grep 'php$' | \
  xargs -P 1 -n 1 sed -i -z 's/use Title;/use MediaWiki\\Title\\Title;/1'
* rg --files-without-match 'MediaWiki\\Title\\Title;' . | grep 'php$' | \
  xargs rg --files-with-matches 'Title\b' | \
  xargs -P 1 -n 1 sed -i -z 's/\nuse /\nuse MediaWiki\\Title\\Title;\nuse /1'
* composer fix

Then manual fix-ups for a few files that don't have any use statements.

Bug: T166010
Follows-Up: Ia5d8cb759dc3bc9e9bbe217d0fb109e2f8c4101a
Change-Id: If8fc9d0d95fc1a114021e282a706fc3e7da3524b
2023-03-02 08:46:53 -05:00
thiemowmde
3d65c37ba4 Fix remaining link numeric ids in LinkHolderArrayTest
These specific placeholders are meant to stay untouched in the test.
Because of this it technically doesn't matter if the namespace numbers
and link ids (from Parser::nextLinkID) are numeric. Still I find it
less confusing when the test setup reflects how the code actually
behaves. An IWLINK is identified by a single numeric id, and a LINK by
a namespace:numeric id pair.

This is split from Ie994059 to make it easier to review.

Change-Id: I1141de06eb3235d199a3dc02ef0a24d0d4fe1416
2022-12-09 12:04:40 +01:00
thiemowmde
c05e0183ad Fix bogus test setup in LinkHolderArrayTest
These array keys are all meant to come from Parser::nextLinkID(). That
returns a positive integer. Let's please make the tests reflect what
the code actually does to reduce confusion.

I tried my best to come up with a mapping that still (possibly even
better) makes it obvious what's happening.

Change-Id: Ib5d5f6f48ddc8c066961ea0f36a922ae9f0c6f6c
2022-12-09 12:01:18 +01:00
thiemowmde
f846177e33 Fix bogus non-numeric namespaces in LinkHolderArrayTest
The first level in LinkHolderArray::$internals is indexed by numeric
namespace id. This must be a number. Let's please make the test
reflect what the code actually does.

Note the same mistake was already fixed before in I7e71ffc.

Change-Id: I14f717510a71adf8ea3f75e61ba844d93838f945
2022-12-09 11:46:26 +01:00
Tim Starling
f7f6f0d700 Update LinkHolderArray tests for new HookContainer parameter
Change-Id: I63fc731ca1dbaef6f215279ee0b1788e735783df
2020-06-23 09:00:32 +10:00
Thiemo Kreuz
6363d64112 parser: Add Title type hint to LinkHolderArray::makeHolder
We *know* this can never be anything but a Title object:
https://codesearch.wmflabs.org/search/?q=makeHolder

Change-Id: Id6de0df627f2aeda79c6483f12a6d500ccd7853f
2020-06-22 14:33:04 +00:00
ArtBaltai
757072d182 New unit and integraton tests for class LinkHolderArray
Bug: T243747
Change-Id: I2c12cc76a9bf01eb527db3ea038e4adc59446cac
2020-06-04 11:38:40 +00:00