Page MenuHomePhabricator
Paste P18116

Rust in my MediaWiki? no way
ActivePublic

Authored by Legoktm on Dec 11 2021, 9:35 PM.
Tags
None
Referenced Files
F34878600: raw-paste-data.txt
Dec 11 2021, 9:35 PM
Subscribers
Tokens
"Mountain of Wealth" token, awarded by Nemo_bis.
km@cashew ~/g/m/p/php-mwtitle> php -dextension=./target/debug/libmwtitle.so ~/gerrit/mediawiki/core/maintenance/shell.php
Psy Shell v0.10.12 (PHP 8.0.13 — cli) by Justin Hileman
>>> $c = RustyTitleCodec::new('en', 'A-z', [], [], []);
=> RustyTitleCodec {#2942}
>>> $t=$c->splitTitleString("Abcde#foo", 0);
=> RustyTitle {#2948}
>>> $t->namespace();
=> 0
>>> $t->dbkey();
=> "Abcde"
>>> $t->fragment();
=> "foo"

Event Timeline

Legoktm changed the title of this paste from untitled to Rust in my MediaWiki? no way.Dec 11 2021, 9:39 PM
km@cashew ~/g/m/c/t/phpunit> php -dextension=/home/km/gerrit/mediawiki/php/php-mwtitle/target/debug/libmwtitle.so phpunit.php includes/title/
Using PHP 8.0.13
PHPUnit 8.5.21 by Sebastian Bergmann and contributors.

.........................................E.....................  63 / 750 (  8%)
........E.............................................F......FF 126 / 750 ( 16%)
FFFFFF..FFFFFFFFF.F...E.F............F.F.F...FF..........FF.... 189 / 750 ( 25%)
............................................................... 252 / 750 ( 33%)
.......................................................F......F 315 / 750 ( 42%)
FFFFFFF..FFFFFFFFF.F...E.F............F.F.F...FF..........FF... 378 / 750 ( 50%)
............................................................... 441 / 750 ( 58%)
............................................................... 504 / 750 ( 67%)
............................................................... 567 / 750 ( 75%)
............................................................... 630 / 750 ( 84%)
............................................................... 693 / 750 ( 92%)
.........................................................       750 / 750 (100%)

Time: 13.73 seconds, Memory: 58.50 MB

There were 4 errors:

1) MediaWikiTitleCodecTest::testParseTitle with data set #1 ('User:::1', 0, 'de', TitleValue Object (...))
MalformedTitleException: title-invalid-leading-colon

/home/km/gerrit/mediawiki/core/includes/title/MediaWikiTitleCodec.php:362
/home/km/gerrit/mediawiki/core/includes/title/MediaWikiTitleCodec.php:196
/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:431
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(de): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

2) MediaWikiTitleCodecTest::testParseTitle with data set "only fragment" ('#', 0, 'en', TitleValue Object (...))
MalformedTitleException: title-invalid-empty

/home/km/gerrit/mediawiki/core/includes/title/MediaWikiTitleCodec.php:362
/home/km/gerrit/mediawiki/core/includes/title/MediaWikiTitleCodec.php:196
/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:431
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

3) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "Invalid UTF-8 sequence" (null, 0, 'Te��st')
Exception: Invalid value given for argument `text`.

/home/km/gerrit/mediawiki/core/includes/title/MediaWikiTitleCodec.php:362
/home/km/gerrit/mediawiki/core/includes/title/MediaWikiTitleCodec.php:231
/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

4) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "Invalid UTF-8 sequence" (null, 0, 'Te��st')
Exception: Invalid value given for argument `text`.

/home/km/gerrit/mediawiki/core/includes/title/MediaWikiTitleCodec.php:362
/home/km/gerrit/mediawiki/core/includes/Title.php:3041
/home/km/gerrit/mediawiki/core/includes/Title.php:704
/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:531
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

--

There were 54 failures:

1) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "Linebreak in title" (null, 0, 'Test\nthis')
TitleValue Object (...) does not match expected type "NULL".

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

2) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "Passed fragment with leading tab" (null, 0, '	Test	', '	Fragment')
TitleValue Object (...) does not match expected type "NULL".

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

3) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "Embedded fragment with leading tab" (null, 0, '	Test	#	Fragment')
TitleValue Object (...) does not match expected type "NULL".

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

4) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "Passed fragment with trailing tab" (null, 0, '	Test	', 'Fragment	')
TitleValue Object (...) does not match expected type "NULL".

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

5) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "Embedded fragment with trailing tab" (null, 0, '	Test	#Fragment	')
TitleValue Object (...) does not match expected type "NULL".

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

6) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "Passed fragment with interior tab" (null, 0, '	Test	', 'Frag	ment')
TitleValue Object (...) does not match expected type "NULL".

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

7) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "Embedded fragment with interior tab" (null, 0, '	Test	#	Frag	ment')
TitleValue Object (...) does not match expected type "NULL".

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

8) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "Passed local interwiki" (TitleValue Object (...), 0, 'Test', '', 'localtestiw')
Failed asserting that two objects are equal.
--- Expected
+++ Actual
@@ @@
     'namespace' => 0
     'dbkey' => 'Test'
     'fragment' => ''
-    'interwiki' => ''
+    'interwiki' => 'localtestiw'
     'prefixedText' => null
 )

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

9) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "Embedded local interwiki" (TitleValue Object (...), 0, 'localtestiw:Test')
Failed asserting that two objects are equal.
--- Expected
+++ Actual
@@ @@
     'namespace' => 0
     'dbkey' => 'Test'
     'fragment' => ''
-    'interwiki' => ''
+    'interwiki' => 'localtestiw'
     'prefixedText' => null
 )

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

10) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "Passed local interwiki with different case" (TitleValue Object (...), 0, 'Test', '', 'LocalTestIW')
Failed asserting that two objects are equal.
--- Expected
+++ Actual
@@ @@
     'namespace' => 0
     'dbkey' => 'Test'
     'fragment' => ''
-    'interwiki' => ''
+    'interwiki' => 'LocalTestIW'
     'prefixedText' => null
 )

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

11) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "Embedded local interwiki with different case" (TitleValue Object (...), 0, 'LocalTestIW:Test')
Failed asserting that two objects are equal.
--- Expected
+++ Actual
@@ @@
     'namespace' => 0
     'dbkey' => 'Test'
     'fragment' => ''
-    'interwiki' => ''
+    'interwiki' => 'LocalTestIW'
     'prefixedText' => null
 )

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

12) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "Passed remote interwiki with different case" (TitleValue Object (...), 0, 'Test', '', 'RemoteTestIW')
Failed asserting that two objects are equal.
--- Expected
+++ Actual
@@ @@
     'namespace' => 0
     'dbkey' => 'Test'
     'fragment' => ''
-    'interwiki' => 'remotetestiw'
+    'interwiki' => 'RemoteTestIW'
     'prefixedText' => null
 )

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

13) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "Embedded remote interwiki with different case" (TitleValue Object (...), 0, 'RemoteTestIW:Test')
Failed asserting that two objects are equal.
--- Expected
+++ Actual
@@ @@
     'namespace' => 0
     'dbkey' => 'Test'
     'fragment' => ''
-    'interwiki' => 'remotetestiw'
+    'interwiki' => 'RemoteTestIW'
     'prefixedText' => null
 )

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

14) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "Passed local interwiki with lowercase page name" (TitleValue Object (...), 0, 'test', '', 'localtestiw')
Failed asserting that two objects are equal.
--- Expected
+++ Actual
@@ @@
     'namespace' => 0
     'dbkey' => 'Test'
     'fragment' => ''
-    'interwiki' => ''
+    'interwiki' => 'localtestiw'
     'prefixedText' => null
 )

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

15) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "Embedded local interwiki with lowercase page name" (TitleValue Object (...), 0, 'localtestiw:test')
Failed asserting that two objects are equal.
--- Expected
+++ Actual
@@ @@
     'namespace' => 0
     'dbkey' => 'Test'
     'fragment' => ''
-    'interwiki' => ''
+    'interwiki' => 'localtestiw'
     'prefixedText' => null
 )

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

16) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "Passed remote interwiki with lowercase page name" (TitleValue Object (...), 0, 'test', '', 'remotetestiw')
Failed asserting that two objects are equal.
--- Expected
+++ Actual
@@ @@
 TitleValue Object (
     'namespace' => 0
-    'dbkey' => 'test'
+    'dbkey' => 'Test'
     'fragment' => ''
     'interwiki' => 'remotetestiw'
     'prefixedText' => null
 )

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

17) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "Embedded remote interwiki with lowercase page name" (TitleValue Object (...), 0, 'remotetestiw:test')
Failed asserting that two objects are equal.
--- Expected
+++ Actual
@@ @@
 TitleValue Object (
     'namespace' => 0
-    'dbkey' => 'test'
+    'dbkey' => 'Test'
     'fragment' => ''
     'interwiki' => 'remotetestiw'
     'prefixedText' => null
 )

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

18) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "Fragment and local interwiki" (TitleValue Object (...), 0, 'Test', 'Fragment', 'localtestiw')
Failed asserting that two objects are equal.
--- Expected
+++ Actual
@@ @@
     'namespace' => 0
     'dbkey' => 'Test'
     'fragment' => 'Fragment'
-    'interwiki' => ''
+    'interwiki' => 'localtestiw'
     'prefixedText' => null
 )

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

19) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "Fragment and local interwiki and non-main namespace" (TitleValue Object (...), 1, 'Test', 'Fragment', 'localtestiw')
Failed asserting that two objects are equal.
--- Expected
+++ Actual
@@ @@
 TitleValue Object (
-    'namespace' => 1
-    'dbkey' => 'Test'
+    'namespace' => 0
+    'dbkey' => 'Talk:Test'
     'fragment' => 'Fragment'
-    'interwiki' => ''
+    'interwiki' => 'localtestiw'
     'prefixedText' => null
 )

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

20) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "UTF8_REPLACEMENT" (null, 0, '�')
TitleValue Object (...) does not match expected type "NULL".

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

21) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set ":localtestiw:Test" (TitleValue Object (...), 0, ':localtestiw:Test')
Failed asserting that two objects are equal.
--- Expected
+++ Actual
@@ @@
     'namespace' => 0
     'dbkey' => 'Test'
     'fragment' => ''
-    'interwiki' => ''
+    'interwiki' => 'localtestiw'
     'prefixedText' => null
 )

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

22) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "localtestiw::Test" (null, 0, 'localtestiw::Test')
TitleValue Object (...) does not match expected type "NULL".

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

23) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "localtestiw:: Test" (null, 0, 'localtestiw:: Test')
TitleValue Object (...) does not match expected type "NULL".

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

24) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "Local interwiki with empty page name" (TitleValue Object (...), 0, 'localtestiw:')
null does not match expected type "object".

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

25) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "Remote interwiki with empty page name" (TitleValue Object (...), 0, 'remotetestiw:')
null does not match expected type "object".

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

26) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "localtestiw:talk:test" (TitleValue Object (...), 0, 'localtestiw:talk:test')
Failed asserting that two objects are equal.
--- Expected
+++ Actual
@@ @@
 TitleValue Object (
-    'namespace' => 1
-    'dbkey' => 'Test'
+    'namespace' => 0
+    'dbkey' => 'Talk:test'
     'fragment' => ''
-    'interwiki' => ''
+    'interwiki' => 'localtestiw'
     'prefixedText' => null
 )

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

27) MediaWikiTitleCodecTest::testMakeTitleValueSafe with data set "remotetestiw:talk:test" (TitleValue Object (...), 0, 'remotetestiw:talk:test')
Failed asserting that two objects are equal.
--- Expected
+++ Actual
@@ @@
 TitleValue Object (
     'namespace' => 0
-    'dbkey' => 'talk:test'
+    'dbkey' => 'Talk:test'
     'fragment' => ''
     'interwiki' => 'remotetestiw'
     'prefixedText' => null
 )

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:515
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
===

28) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "Linebreak in title" (null, 0, 'Test\nthis')
Failed asserting that Title Object &000000007538d016000000004dff664a (
    'mTextform' => 'Test this'
    'mUrlform' => 'Test_this'
    'mDbkeyform' => 'Test_this'
    'mNamespace' => 0
    'mInterwiki' => ''
    'mLocalInterwiki' => false
    'mFragment' => ''
    'mArticleID' => -1
    'mLatestID' => false
    'mContentModel' => false
    'mForcedContentModel' => false
    'mEstimateRevisions' => null
    'prefixedText' => null
    'mDefaultNamespace' => 0
    'mLength' => -1
    'mRedirect' => null
    'mHasSubpages' => null
    'mPageLanguage' => null
    'mDbPageLanguage' => false
    'mTitleValue' => null
    'mIsBigDeletion' => null
    'mIsValid' => true
    'mInstanceCacheKey' => null
    'deprecatedPublicProperties' => Array &0 (
        'mTextform' => Array &1 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538d0a0000000004dff664a (
                0 => Closure Object &000000007538d0a0000000004dff664a
            )
            4 => null
            5 => null
        )
        'mUrlform' => Array &2 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538d1d7000000004dff664a (
                0 => Closure Object &000000007538d1d7000000004dff664a
            )
            4 => null
            5 => null
        )
        'mDbkeyform' => Array &3 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538d022000000004dff664a (
                0 => Closure Object &000000007538d022000000004dff664a
            )
            4 => null
            5 => null
        )
        'mNamespace' => Array &4 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538d02d000000004dff664a (
                0 => Closure Object &000000007538d02d000000004dff664a
            )
            4 => null
            5 => null
        )
        'mInterwiki' => Array &5 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538d026000000004dff664a (
                0 => Closure Object &000000007538d026000000004dff664a
            )
            4 => null
            5 => null
        )
        'mFragment' => Array &6 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538d006000000004dff664a (
                0 => Closure Object &000000007538d006000000004dff664a
            )
            4 => Closure Object &000000007538d1d3000000004dff664a (
                0 => Closure Object &000000007538d1d3000000004dff664a
            )
            5 => null
        )
    )
    'dynamicPropertiesAccessDeprecated' => false
) is null.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:537
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

29) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "Passed fragment with leading tab" (null, 0, '	Test	', '	Fragment')
Failed asserting that Title Object &000000007538f853000000004dff664a (
    'mTextform' => 'Test'
    'mUrlform' => 'Test'
    'mDbkeyform' => 'Test'
    'mNamespace' => 0
    'mInterwiki' => ''
    'mLocalInterwiki' => false
    'mFragment' => ' Fragment'
    'mArticleID' => -1
    'mLatestID' => false
    'mContentModel' => false
    'mForcedContentModel' => false
    'mEstimateRevisions' => null
    'prefixedText' => null
    'mDefaultNamespace' => 0
    'mLength' => -1
    'mRedirect' => null
    'mHasSubpages' => null
    'mPageLanguage' => null
    'mDbPageLanguage' => false
    'mTitleValue' => null
    'mIsBigDeletion' => null
    'mIsValid' => true
    'mInstanceCacheKey' => null
    'deprecatedPublicProperties' => Array &0 (
        'mTextform' => Array &1 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f86a000000004dff664a (
                0 => Closure Object &000000007538f86a000000004dff664a
            )
            4 => null
            5 => null
        )
        'mUrlform' => Array &2 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f871000000004dff664a (
                0 => Closure Object &000000007538f871000000004dff664a
            )
            4 => null
            5 => null
        )
        'mDbkeyform' => Array &3 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f874000000004dff664a (
                0 => Closure Object &000000007538f874000000004dff664a
            )
            4 => null
            5 => null
        )
        'mNamespace' => Array &4 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f86d000000004dff664a (
                0 => Closure Object &000000007538f86d000000004dff664a
            )
            4 => null
            5 => null
        )
        'mInterwiki' => Array &5 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f866000000004dff664a (
                0 => Closure Object &000000007538f866000000004dff664a
            )
            4 => null
            5 => null
        )
        'mFragment' => Array &6 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f863000000004dff664a (
                0 => Closure Object &000000007538f863000000004dff664a
            )
            4 => Closure Object &000000007538f865000000004dff664a (
                0 => Closure Object &000000007538f865000000004dff664a
            )
            5 => null
        )
    )
    'dynamicPropertiesAccessDeprecated' => false
) is null.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:537
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

30) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "Embedded fragment with leading tab" (null, 0, '	Test	#	Fragment')
Failed asserting that Title Object &000000007538f9f9000000004dff664a (
    'mTextform' => 'Test'
    'mUrlform' => 'Test'
    'mDbkeyform' => 'Test'
    'mNamespace' => 0
    'mInterwiki' => ''
    'mLocalInterwiki' => false
    'mFragment' => ' Fragment'
    'mArticleID' => -1
    'mLatestID' => false
    'mContentModel' => false
    'mForcedContentModel' => false
    'mEstimateRevisions' => null
    'prefixedText' => null
    'mDefaultNamespace' => 0
    'mLength' => -1
    'mRedirect' => null
    'mHasSubpages' => null
    'mPageLanguage' => null
    'mDbPageLanguage' => false
    'mTitleValue' => null
    'mIsBigDeletion' => null
    'mIsValid' => true
    'mInstanceCacheKey' => null
    'deprecatedPublicProperties' => Array &0 (
        'mTextform' => Array &1 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f830000000004dff664a (
                0 => Closure Object &000000007538f830000000004dff664a
            )
            4 => null
            5 => null
        )
        'mUrlform' => Array &2 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f9fb000000004dff664a (
                0 => Closure Object &000000007538f9fb000000004dff664a
            )
            4 => null
            5 => null
        )
        'mDbkeyform' => Array &3 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f9f2000000004dff664a (
                0 => Closure Object &000000007538f9f2000000004dff664a
            )
            4 => null
            5 => null
        )
        'mNamespace' => Array &4 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f990000000004dff664a (
                0 => Closure Object &000000007538f990000000004dff664a
            )
            4 => null
            5 => null
        )
        'mInterwiki' => Array &5 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f992000000004dff664a (
                0 => Closure Object &000000007538f992000000004dff664a
            )
            4 => null
            5 => null
        )
        'mFragment' => Array &6 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f994000000004dff664a (
                0 => Closure Object &000000007538f994000000004dff664a
            )
            4 => Closure Object &000000007538f993000000004dff664a (
                0 => Closure Object &000000007538f993000000004dff664a
            )
            5 => null
        )
    )
    'dynamicPropertiesAccessDeprecated' => false
) is null.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:537
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

31) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "Passed fragment with trailing tab" (null, 0, '	Test	', 'Fragment	')
Failed asserting that Title Object &000000007538f91d000000004dff664a (
    'mTextform' => 'Test'
    'mUrlform' => 'Test'
    'mDbkeyform' => 'Test'
    'mNamespace' => 0
    'mInterwiki' => ''
    'mLocalInterwiki' => false
    'mFragment' => 'Fragment'
    'mArticleID' => -1
    'mLatestID' => false
    'mContentModel' => false
    'mForcedContentModel' => false
    'mEstimateRevisions' => null
    'prefixedText' => null
    'mDefaultNamespace' => 0
    'mLength' => -1
    'mRedirect' => null
    'mHasSubpages' => null
    'mPageLanguage' => null
    'mDbPageLanguage' => false
    'mTitleValue' => null
    'mIsBigDeletion' => null
    'mIsValid' => true
    'mInstanceCacheKey' => null
    'deprecatedPublicProperties' => Array &0 (
        'mTextform' => Array &1 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f91e000000004dff664a (
                0 => Closure Object &000000007538f91e000000004dff664a
            )
            4 => null
            5 => null
        )
        'mUrlform' => Array &2 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f91f000000004dff664a (
                0 => Closure Object &000000007538f91f000000004dff664a
            )
            4 => null
            5 => null
        )
        'mDbkeyform' => Array &3 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f918000000004dff664a (
                0 => Closure Object &000000007538f918000000004dff664a
            )
            4 => null
            5 => null
        )
        'mNamespace' => Array &4 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f91a000000004dff664a (
                0 => Closure Object &000000007538f91a000000004dff664a
            )
            4 => null
            5 => null
        )
        'mInterwiki' => Array &5 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f946000000004dff664a (
                0 => Closure Object &000000007538f946000000004dff664a
            )
            4 => null
            5 => null
        )
        'mFragment' => Array &6 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f910000000004dff664a (
                0 => Closure Object &000000007538f910000000004dff664a
            )
            4 => Closure Object &000000007538f911000000004dff664a (
                0 => Closure Object &000000007538f911000000004dff664a
            )
            5 => null
        )
    )
    'dynamicPropertiesAccessDeprecated' => false
) is null.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:537
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

32) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "Embedded fragment with trailing tab" (null, 0, '	Test	#Fragment	')
Failed asserting that Title Object &000000007538f684000000004dff664a (
    'mTextform' => 'Test'
    'mUrlform' => 'Test'
    'mDbkeyform' => 'Test'
    'mNamespace' => 0
    'mInterwiki' => ''
    'mLocalInterwiki' => false
    'mFragment' => 'Fragment'
    'mArticleID' => -1
    'mLatestID' => false
    'mContentModel' => false
    'mForcedContentModel' => false
    'mEstimateRevisions' => null
    'prefixedText' => null
    'mDefaultNamespace' => 0
    'mLength' => -1
    'mRedirect' => null
    'mHasSubpages' => null
    'mPageLanguage' => null
    'mDbPageLanguage' => false
    'mTitleValue' => null
    'mIsBigDeletion' => null
    'mIsValid' => true
    'mInstanceCacheKey' => null
    'deprecatedPublicProperties' => Array &0 (
        'mTextform' => Array &1 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f687000000004dff664a (
                0 => Closure Object &000000007538f687000000004dff664a
            )
            4 => null
            5 => null
        )
        'mUrlform' => Array &2 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f685000000004dff664a (
                0 => Closure Object &000000007538f685000000004dff664a
            )
            4 => null
            5 => null
        )
        'mDbkeyform' => Array &3 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f6ba000000004dff664a (
                0 => Closure Object &000000007538f6ba000000004dff664a
            )
            4 => null
            5 => null
        )
        'mNamespace' => Array &4 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f6bb000000004dff664a (
                0 => Closure Object &000000007538f6bb000000004dff664a
            )
            4 => null
            5 => null
        )
        'mInterwiki' => Array &5 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f6be000000004dff664a (
                0 => Closure Object &000000007538f6be000000004dff664a
            )
            4 => null
            5 => null
        )
        'mFragment' => Array &6 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f6bf000000004dff664a (
                0 => Closure Object &000000007538f6bf000000004dff664a
            )
            4 => Closure Object &000000007538f6b0000000004dff664a (
                0 => Closure Object &000000007538f6b0000000004dff664a
            )
            5 => null
        )
    )
    'dynamicPropertiesAccessDeprecated' => false
) is null.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:537
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

33) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "Passed fragment with interior tab" (null, 0, '	Test	', 'Frag	ment')
Failed asserting that Title Object &000000007538f672000000004dff664a (
    'mTextform' => 'Test'
    'mUrlform' => 'Test'
    'mDbkeyform' => 'Test'
    'mNamespace' => 0
    'mInterwiki' => ''
    'mLocalInterwiki' => false
    'mFragment' => 'Frag ment'
    'mArticleID' => -1
    'mLatestID' => false
    'mContentModel' => false
    'mForcedContentModel' => false
    'mEstimateRevisions' => null
    'prefixedText' => null
    'mDefaultNamespace' => 0
    'mLength' => -1
    'mRedirect' => null
    'mHasSubpages' => null
    'mPageLanguage' => null
    'mDbPageLanguage' => false
    'mTitleValue' => null
    'mIsBigDeletion' => null
    'mIsValid' => true
    'mInstanceCacheKey' => null
    'deprecatedPublicProperties' => Array &0 (
        'mTextform' => Array &1 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f675000000004dff664a (
                0 => Closure Object &000000007538f675000000004dff664a
            )
            4 => null
            5 => null
        )
        'mUrlform' => Array &2 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f673000000004dff664a (
                0 => Closure Object &000000007538f673000000004dff664a
            )
            4 => null
            5 => null
        )
        'mDbkeyform' => Array &3 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f668000000004dff664a (
                0 => Closure Object &000000007538f668000000004dff664a
            )
            4 => null
            5 => null
        )
        'mNamespace' => Array &4 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f669000000004dff664a (
                0 => Closure Object &000000007538f669000000004dff664a
            )
            4 => null
            5 => null
        )
        'mInterwiki' => Array &5 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f66c000000004dff664a (
                0 => Closure Object &000000007538f66c000000004dff664a
            )
            4 => null
            5 => null
        )
        'mFragment' => Array &6 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f66d000000004dff664a (
                0 => Closure Object &000000007538f66d000000004dff664a
            )
            4 => Closure Object &000000007538f66e000000004dff664a (
                0 => Closure Object &000000007538f66e000000004dff664a
            )
            5 => null
        )
    )
    'dynamicPropertiesAccessDeprecated' => false
) is null.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:537
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

34) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "Embedded fragment with interior tab" (null, 0, '	Test	#	Frag	ment')
Failed asserting that Title Object &000000007538f620000000004dff664a (
    'mTextform' => 'Test'
    'mUrlform' => 'Test'
    'mDbkeyform' => 'Test'
    'mNamespace' => 0
    'mInterwiki' => ''
    'mLocalInterwiki' => false
    'mFragment' => ' Frag ment'
    'mArticleID' => -1
    'mLatestID' => false
    'mContentModel' => false
    'mForcedContentModel' => false
    'mEstimateRevisions' => null
    'prefixedText' => null
    'mDefaultNamespace' => 0
    'mLength' => -1
    'mRedirect' => null
    'mHasSubpages' => null
    'mPageLanguage' => null
    'mDbPageLanguage' => false
    'mTitleValue' => null
    'mIsBigDeletion' => null
    'mIsValid' => true
    'mInstanceCacheKey' => null
    'deprecatedPublicProperties' => Array &0 (
        'mTextform' => Array &1 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f623000000004dff664a (
                0 => Closure Object &000000007538f623000000004dff664a
            )
            4 => null
            5 => null
        )
        'mUrlform' => Array &2 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f621000000004dff664a (
                0 => Closure Object &000000007538f621000000004dff664a
            )
            4 => null
            5 => null
        )
        'mDbkeyform' => Array &3 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f626000000004dff664a (
                0 => Closure Object &000000007538f626000000004dff664a
            )
            4 => null
            5 => null
        )
        'mNamespace' => Array &4 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f627000000004dff664a (
                0 => Closure Object &000000007538f627000000004dff664a
            )
            4 => null
            5 => null
        )
        'mInterwiki' => Array &5 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f7da000000004dff664a (
                0 => Closure Object &000000007538f7da000000004dff664a
            )
            4 => null
            5 => null
        )
        'mFragment' => Array &6 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538f7db000000004dff664a (
                0 => Closure Object &000000007538f7db000000004dff664a
            )
            4 => Closure Object &000000007538f7dc000000004dff664a (
                0 => Closure Object &000000007538f7dc000000004dff664a
            )
            5 => null
        )
    )
    'dynamicPropertiesAccessDeprecated' => false
) is null.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:537
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

35) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "Passed local interwiki" (TitleValue Object (...), 0, 'Test', '', 'localtestiw')
Failed asserting that false is true.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:535
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

36) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "Embedded local interwiki" (TitleValue Object (...), 0, 'localtestiw:Test')
Failed asserting that false is true.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:535
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

37) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "Passed local interwiki with different case" (TitleValue Object (...), 0, 'Test', '', 'LocalTestIW')
Failed asserting that false is true.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:535
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

38) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "Embedded local interwiki with different case" (TitleValue Object (...), 0, 'LocalTestIW:Test')
Failed asserting that false is true.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:535
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

39) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "Passed remote interwiki with different case" (TitleValue Object (...), 0, 'Test', '', 'RemoteTestIW')
Failed asserting that false is true.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:535
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

40) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "Embedded remote interwiki with different case" (TitleValue Object (...), 0, 'RemoteTestIW:Test')
Failed asserting that false is true.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:535
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

41) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "Passed local interwiki with lowercase page name" (TitleValue Object (...), 0, 'test', '', 'localtestiw')
Failed asserting that false is true.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:535
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

42) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "Embedded local interwiki with lowercase page name" (TitleValue Object (...), 0, 'localtestiw:test')
Failed asserting that false is true.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:535
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

43) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "Passed remote interwiki with lowercase page name" (TitleValue Object (...), 0, 'test', '', 'remotetestiw')
Failed asserting that false is true.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:535
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

44) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "Embedded remote interwiki with lowercase page name" (TitleValue Object (...), 0, 'remotetestiw:test')
Failed asserting that false is true.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:535
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

45) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "Fragment and local interwiki" (TitleValue Object (...), 0, 'Test', 'Fragment', 'localtestiw')
Failed asserting that false is true.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:535
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

46) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "Fragment and local interwiki and non-main namespace" (TitleValue Object (...), 1, 'Test', 'Fragment', 'localtestiw')
Failed asserting that false is true.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:535
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

47) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "UTF8_REPLACEMENT" (null, 0, '�')
Failed asserting that Title Object &000000007538faed000000004dff664a (
    'mTextform' => '�'
    'mUrlform' => '%EF%BF%BD'
    'mDbkeyform' => '�'
    'mNamespace' => 0
    'mInterwiki' => ''
    'mLocalInterwiki' => false
    'mFragment' => ''
    'mArticleID' => -1
    'mLatestID' => false
    'mContentModel' => false
    'mForcedContentModel' => false
    'mEstimateRevisions' => null
    'prefixedText' => null
    'mDefaultNamespace' => 0
    'mLength' => -1
    'mRedirect' => null
    'mHasSubpages' => null
    'mPageLanguage' => null
    'mDbPageLanguage' => false
    'mTitleValue' => null
    'mIsBigDeletion' => null
    'mIsValid' => true
    'mInstanceCacheKey' => null
    'deprecatedPublicProperties' => Array &0 (
        'mTextform' => Array &1 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538fad6000000004dff664a (
                0 => Closure Object &000000007538fad6000000004dff664a
            )
            4 => null
            5 => null
        )
        'mUrlform' => Array &2 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538faee000000004dff664a (
                0 => Closure Object &000000007538faee000000004dff664a
            )
            4 => null
            5 => null
        )
        'mDbkeyform' => Array &3 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538cbf1000000004dff664a (
                0 => Closure Object &000000007538cbf1000000004dff664a
            )
            4 => null
            5 => null
        )
        'mNamespace' => Array &4 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538cece000000004dff664a (
                0 => Closure Object &000000007538cece000000004dff664a
            )
            4 => null
            5 => null
        )
        'mInterwiki' => Array &5 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538cad3000000004dff664a (
                0 => Closure Object &000000007538cad3000000004dff664a
            )
            4 => null
            5 => null
        )
        'mFragment' => Array &6 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538fad7000000004dff664a (
                0 => Closure Object &000000007538fad7000000004dff664a
            )
            4 => Closure Object &000000007538fc1f000000004dff664a (
                0 => Closure Object &000000007538fc1f000000004dff664a
            )
            5 => null
        )
    )
    'dynamicPropertiesAccessDeprecated' => false
) is null.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:537
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

48) MediaWikiTitleCodecTest::testMakeTitleSafe with data set ":localtestiw:Test" (TitleValue Object (...), 0, ':localtestiw:Test')
Failed asserting that false is true.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:535
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

49) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "localtestiw::Test" (null, 0, 'localtestiw::Test')
Failed asserting that Title Object &000000007538fb56000000004dff664a (
    'mTextform' => 'Test'
    'mUrlform' => 'Test'
    'mDbkeyform' => 'Test'
    'mNamespace' => 0
    'mInterwiki' => 'localtestiw'
    'mLocalInterwiki' => false
    'mFragment' => ''
    'mArticleID' => 0
    'mLatestID' => false
    'mContentModel' => false
    'mForcedContentModel' => false
    'mEstimateRevisions' => null
    'prefixedText' => null
    'mDefaultNamespace' => 0
    'mLength' => -1
    'mRedirect' => null
    'mHasSubpages' => null
    'mPageLanguage' => null
    'mDbPageLanguage' => false
    'mTitleValue' => null
    'mIsBigDeletion' => null
    'mIsValid' => true
    'mInstanceCacheKey' => null
    'deprecatedPublicProperties' => Array &0 (
        'mTextform' => Array &1 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538fb81000000004dff664a (
                0 => Closure Object &000000007538fb81000000004dff664a
            )
            4 => null
            5 => null
        )
        'mUrlform' => Array &2 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538fb8c000000004dff664a (
                0 => Closure Object &000000007538fb8c000000004dff664a
            )
            4 => null
            5 => null
        )
        'mDbkeyform' => Array &3 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538cad4000000004dff664a (
                0 => Closure Object &000000007538cad4000000004dff664a
            )
            4 => null
            5 => null
        )
        'mNamespace' => Array &4 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538d012000000004dff664a (
                0 => Closure Object &000000007538d012000000004dff664a
            )
            4 => null
            5 => null
        )
        'mInterwiki' => Array &5 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538fa77000000004dff664a (
                0 => Closure Object &000000007538fa77000000004dff664a
            )
            4 => null
            5 => null
        )
        'mFragment' => Array &6 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538fbfc000000004dff664a (
                0 => Closure Object &000000007538fbfc000000004dff664a
            )
            4 => Closure Object &000000007538cb8b000000004dff664a (
                0 => Closure Object &000000007538cb8b000000004dff664a
            )
            5 => null
        )
    )
    'dynamicPropertiesAccessDeprecated' => false
) is null.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:537
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

50) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "localtestiw:: Test" (null, 0, 'localtestiw:: Test')
Failed asserting that Title Object &000000007538c55c000000004dff664a (
    'mTextform' => 'Test'
    'mUrlform' => 'Test'
    'mDbkeyform' => 'Test'
    'mNamespace' => 0
    'mInterwiki' => 'localtestiw'
    'mLocalInterwiki' => false
    'mFragment' => ''
    'mArticleID' => 0
    'mLatestID' => false
    'mContentModel' => false
    'mForcedContentModel' => false
    'mEstimateRevisions' => null
    'prefixedText' => null
    'mDefaultNamespace' => 0
    'mLength' => -1
    'mRedirect' => null
    'mHasSubpages' => null
    'mPageLanguage' => null
    'mDbPageLanguage' => false
    'mTitleValue' => null
    'mIsBigDeletion' => null
    'mIsValid' => true
    'mInstanceCacheKey' => null
    'deprecatedPublicProperties' => Array &0 (
        'mTextform' => Array &1 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538c561000000004dff664a (
                0 => Closure Object &000000007538c561000000004dff664a
            )
            4 => null
            5 => null
        )
        'mUrlform' => Array &2 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538c56c000000004dff664a (
                0 => Closure Object &000000007538c56c000000004dff664a
            )
            4 => null
            5 => null
        )
        'mDbkeyform' => Array &3 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538c536000000004dff664a (
                0 => Closure Object &000000007538c536000000004dff664a
            )
            4 => null
            5 => null
        )
        'mNamespace' => Array &4 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538c2c6000000004dff664a (
                0 => Closure Object &000000007538c2c6000000004dff664a
            )
            4 => null
            5 => null
        )
        'mInterwiki' => Array &5 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538c28b000000004dff664a (
                0 => Closure Object &000000007538c28b000000004dff664a
            )
            4 => null
            5 => null
        )
        'mFragment' => Array &6 (
            0 => '1.38'
            1 => 'Title'
            2 => null
            3 => Closure Object &000000007538c53b000000004dff664a (
                0 => Closure Object &000000007538c53b000000004dff664a
            )
            4 => Closure Object &000000007538c280000000004dff664a (
                0 => Closure Object &000000007538c280000000004dff664a
            )
            5 => null
        )
    )
    'dynamicPropertiesAccessDeprecated' => false
) is null.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:537
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

51) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "Local interwiki with empty page name" (TitleValue Object (...), 0, 'localtestiw:')
Failed asserting that null is not null.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:534
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

52) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "Remote interwiki with empty page name" (TitleValue Object (...), 0, 'remotetestiw:')
Failed asserting that null is not null.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:534
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

53) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "localtestiw:talk:test" (TitleValue Object (...), 0, 'localtestiw:talk:test')
Failed asserting that false is true.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:535
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

54) MediaWikiTitleCodecTest::testMakeTitleSafe with data set "remotetestiw:talk:test" (TitleValue Object (...), 0, 'remotetestiw:talk:test')
Failed asserting that false is true.

/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:535
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

ERRORS!
Tests: 750, Assertions: 958, Errors: 4, Failures: 54.
km@cashew ~/g/m/c/t/phpunit [SIGINT]> time php -dextension=/home/km/gerrit/mediawiki/php/php-mwtitle/target/release/libmwtitle.so phpunit.php includes/title/
Using PHP 8.0.13
PHPUnit 8.5.21 by Sebastian Bergmann and contributors.

.........................................E.....................  63 / 750 (  8%)
............................................................... 126 / 750 ( 16%)
............................................................... 189 / 750 ( 25%)
............................................................... 252 / 750 ( 33%)
............................................................... 315 / 750 ( 42%)
............................................................... 378 / 750 ( 50%)
............................................................... 441 / 750 ( 58%)
............................................................... 504 / 750 ( 67%)
............................................................... 567 / 750 ( 75%)
............................................................... 630 / 750 ( 84%)
............................................................... 693 / 750 ( 92%)
.........................................................       750 / 750 (100%)

Time: 14.77 seconds, Memory: 50.50 MB

There was 1 error:

1) MediaWikiTitleCodecTest::testParseTitle with data set #1 ('User:::1', 0, 'de', TitleValue Object (...))
MalformedTitleException: title-invalid-leading-colon

/home/km/gerrit/mediawiki/core/includes/title/MediaWikiTitleCodec.php:367
/home/km/gerrit/mediawiki/core/includes/title/MediaWikiTitleCodec.php:196
/home/km/gerrit/mediawiki/core/tests/phpunit/includes/title/MediaWikiTitleCodecTest.php:431
/home/km/gerrit/mediawiki/core/tests/phpunit/MediaWikiIntegrationTestCase.php:452
=== Logs generated by test case
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache using store LCStoreNull []
[localisation] [debug] LocalisationCache::isExpired(de): cache missing, need to make one []
[objectcache] [debug] MainWANObjectCache using store {class} {"class":"EmptyBagOStuff"}
[MessageCache] [debug] MessageCache using store {class} {"class":"HashBagOStuff"}
[localisation] [debug] LocalisationCache::isExpired(en): cache missing, need to make one []
===

ERRORS!
Tests: 750, Assertions: 963, Errors: 1.

NOTE: I had xdebug on for these benchmarks, so they're probably wrong. See below.

km@cashew ~/g/m/core> perf stat -e instructions php -dextension=/home/km/gerrit/mediawiki/php/php-mwtitle/target/release/libmwtitle.so maintenance/benchmarks/benchmarkEval.php --code="MediaWiki\\MediaWikiServices::getInstance()->getTitleParser()->splitTitleString('Talk:foobar', NS_MAIN);" --inner=30000 --count=100
Running PHP version 8.0.13 (x86_64) on Linux 5.15.6-200.fc35.x86_64 #1 SMP Wed Dec 1 13:41:10 UTC 2021

eval
   count: 100
    rate:      7.3/s
   total: 13789.19ms
    mean:   137.89ms
     max:   157.19ms
  stddev:     2.28ms
Current memory usage: 20.00 MiB
   Peak memory usage: 20.00 MiB


 Performance counter stats for 'php -dextension=/home/km/gerrit/mediawiki/php/php-mwtitle/target/release/libmwtitle.so maintenance/benchmarks/benchmarkEval.php --code=MediaWiki\MediaWikiServices::getInstance()->getTitleParser()->splitTitleString('Talk:foobar', NS_MAIN); --inner=30000 --count=100':

   143,270,217,568      instructions                                                

      13.887939754 seconds time elapsed

      13.847005000 seconds user
       0.022872000 seconds sys


km@cashew ~/g/m/core> perf stat -e instructions php maintenance/benchmarks/benchmarkEval.php --code="MediaWiki\\MediaWikiServices::getInstance()->getTitleParser()->splitTitleString('Talk:foobar', NS_MAIN);" --inner=30000 --count=100
Running PHP version 8.0.13 (x86_64) on Linux 5.15.6-200.fc35.x86_64 #1 SMP Wed Dec 1 13:41:10 UTC 2021

eval
   count: 100
    rate:      2.4/s
   total: 41623.29ms
    mean:   416.23ms
     max:   427.29ms
  stddev:     6.51ms
Current memory usage: 16.00 MiB
   Peak memory usage: 16.00 MiB


 Performance counter stats for 'php maintenance/benchmarks/benchmarkEval.php --code=MediaWiki\MediaWikiServices::getInstance()->getTitleParser()->splitTitleString('Talk:foobar', NS_MAIN); --inner=30000 --count=100':

   356,086,794,093      instructions                                                

      41.726226434 seconds time elapsed

      41.651812000 seconds user
       0.018902000 seconds sys

With the IPv6 work done, now passing all title-related tests:

km@cashew ~/g/m/c/t/phpunit> php -dextension=/home/km/gerrit/mediawiki/php/php-mwtitle/target/release/libmwtitle.so phpunit.php includes/TitleTest.php includes/title/
Using PHP 8.0.13
PHPUnit 8.5.21 by Sebastian Bergmann and contributors.

...............................................................  63 / 635 (  9%)
............................................................... 126 / 635 ( 19%)
............................................................... 189 / 635 ( 29%)
............................................................... 252 / 635 ( 39%)
............................................................... 315 / 635 ( 49%)
............................................................... 378 / 635 ( 59%)
............................................................... 441 / 635 ( 69%)
............................................................... 504 / 635 ( 79%)
............................................................... 567 / 635 ( 89%)
............................................................... 630 / 635 ( 99%)
.....                                                           635 / 635 (100%)

Time: 4.56 seconds, Memory: 168.50 MB

OK (635 tests, 993 assertions)


You should really speed up these slow tests (>50ms)...
 1. 192ms to run TitleTest:testGetPageViewLanguage with data set #18
 2. 189ms to run TitleTest:testGetPageViewLanguage with data set #22
 3. 165ms to run TitleTest:testGetPageViewLanguage with data set #14
 4. 140ms to run TitleTest:testGetPageViewLanguage with data set #11
 5. 122ms to run TitleTest:testGetPageViewLanguage with data set #2
 6. 117ms to run TitleTest:testGetPageViewLanguage with data set #16
 7. 111ms to run TitleTest:testGetPageViewLanguage with data set #15
 8. 111ms to run TitleTest:testGetPageViewLanguage with data set #19
 9. 111ms to run TitleTest:testGetPageViewLanguage with data set #20
 10. 107ms to run TitleTest:testGetPageViewLanguage with data set #12
 11. 107ms to run TitleTest:testGetPageViewLanguage with data set #17
 12. 105ms to run TitleTest:testGetPageViewLanguage with data set #13
 13. 82ms to run TitleTest:testIsCascadeProtected
 14. 79ms to run TitleTest:testGetBaseTitle with data set #4
 15. 75ms to run TitleTest:testNewFromIds
 16. 59ms to run TitleTest:testloadRestrictionsFromRows with data set #2
 17. 57ms to run TitleTest:testIsSemiProtected
km@cashew ~/g/m/c/t/phpunit> php -dextension=/home/km/gerrit/mediawiki/php/php-mwtitle/target/release/libmwtitle.so phpunit.php includes/title/
Using PHP 8.0.13
PHPUnit 8.5.21 by Sebastian Bergmann and contributors.

...............................................................  63 / 750 (  8%)
............................................................... 126 / 750 ( 16%)
............................................................... 189 / 750 ( 25%)
............................................................... 252 / 750 ( 33%)
............................................................... 315 / 750 ( 42%)
............................................................... 378 / 750 ( 50%)
............................................................... 441 / 750 ( 58%)
............................................................... 504 / 750 ( 67%)
............................................................... 567 / 750 ( 75%)
............................................................... 630 / 750 ( 84%)
............................................................... 693 / 750 ( 92%)
.........................................................       750 / 750 (100%)

Time: 1.51 seconds, Memory: 46.50 MB

OK (750 tests, 964 assertions)
km@cashew ~/g/m/c/t/phpunit> php -dextension=/home/km/gerrit/mediawiki/php/php-mwtitle/target/release/libmwtitle.so phpunit.php unit/includes/TitleTest.php 
Using PHP 8.0.13
PHPUnit 8.5.21 by Sebastian Bergmann and contributors.

................................................................. 65 / 77 ( 84%)
............                                                      77 / 77 (100%)

Time: 143 ms, Memory: 20.00 MB

OK (77 tests, 376 assertions)
km@cashew ~/g/m/c/t/phpunit> php -dextension=/home/km/gerrit/mediawiki/php/php-mwtitle/target/release/libmwtitle.so phpunit.php unit/includes/title/
Using PHP 8.0.13
PHPUnit 8.5.21 by Sebastian Bergmann and contributors.

...............................................................  63 / 122 ( 51%)
...........................................................     122 / 122 (100%)

Time: 146 ms, Memory: 20.00 MB

OK (122 tests, 344 assertions)

Ok, here are new benchmarks using the instructions and version of mwtitle at https://gitlab.com/mwbot-rs/mwbot/-/blob/9c4058ee5847822992c8ac5788318292361106f1/php-mwtitle/README.md

impl[[Talk:foobar]][[Talk:foo bar#frag]]
PHP2.2/s (46s total), 444,939,284,384 instructions1.6/s (63s total), 578,929,297,884 instructions
Rust7.0/s (14s total), 148,325,549,137 instructions6.4/s (16s total), 165,565,539,954 instructions

Raw output:

km@cashew ~/g/m/core> perf stat -e instructions php -dextension=/home/km/gitlab/mwbot-rs/mwbot/target/release-fast/libmwtitle.so maintenance/benchmarks/benchmarkEval.php --code="MediaWiki\\MediaWikiServices::getInstance()->getTitleParser()->splitTitleString('Talk:foobar', NS_MAIN);" --inner=100000 --count=100
Running PHP version 8.0.13 (x86_64) on Linux 5.15.6-200.fc35.x86_64 #1 SMP Wed Dec 1 13:41:10 UTC 2021

eval
   count: 100
    rate:      7.0/s
   total: 14201.77ms
    mean:   142.02ms
     max:   184.33ms
  stddev:     4.84ms
Current memory usage: 20.00 MiB
   Peak memory usage: 22.00 MiB


 Performance counter stats for 'php -dextension=/home/km/gitlab/mwbot-rs/mwbot/target/release-fast/libmwtitle.so maintenance/benchmarks/benchmarkEval.php --code=MediaWiki\MediaWikiServices::getInstance()->getTitleParser()->splitTitleString('Talk:foobar', NS_MAIN); --inner=100000 --count=100':

   148,325,549,137      instructions:u                                              

      14.322503815 seconds time elapsed

      14.248650000 seconds user
       0.029742000 seconds sys


km@cashew ~/g/m/core> perf stat -e instructions php maintenance/benchmarks/benchmarkEval.php --code="MediaWiki\\MediaWikiServices::getInstance()->getTitleParser()->splitTitleString('Talk:foobar', NS_MAIN);" --inner=100000 --count=100
Running PHP version 8.0.13 (x86_64) on Linux 5.15.6-200.fc35.x86_64 #1 SMP Wed Dec 1 13:41:10 UTC 2021

eval
   count: 100
    rate:      2.2/s
   total: 46299.35ms
    mean:   462.99ms
     max:   488.61ms
  stddev:    14.33ms
Current memory usage: 16.00 MiB
   Peak memory usage: 16.00 MiB


 Performance counter stats for 'php maintenance/benchmarks/benchmarkEval.php --code=MediaWiki\MediaWikiServices::getInstance()->getTitleParser()->splitTitleString('Talk:foobar', NS_MAIN); --inner=100000 --count=100':

   444,939,284,384      instructions:u                                              

      46.393212710 seconds time elapsed

      46.298010000 seconds user
       0.022865000 seconds sys


km@cashew ~/g/m/core> perf stat -e instructions php maintenance/benchmarks/benchmarkEval.php --code="MediaWiki\\MediaWikiServices::getInstance()->getTitleParser()->splitTitleString('Talk:foo bar#frag', NS_MAIN);" --inner=100000 --count=100
Running PHP version 8.0.13 (x86_64) on Linux 5.15.6-200.fc35.x86_64 #1 SMP Wed Dec 1 13:41:10 UTC 2021

eval
   count: 100
    rate:      1.6/s
   total: 62882.94ms
    mean:   628.83ms
     max:   662.95ms
  stddev:    14.37ms
Current memory usage: 16.00 MiB
   Peak memory usage: 16.00 MiB


 Performance counter stats for 'php maintenance/benchmarks/benchmarkEval.php --code=MediaWiki\MediaWikiServices::getInstance()->getTitleParser()->splitTitleString('Talk:foo bar#frag', NS_MAIN); --inner=100000 --count=100':

   578,929,297,884      instructions:u                                              

      62.977368142 seconds time elapsed

      62.844299000 seconds user
       0.030764000 seconds sys


km@cashew ~/g/m/core> perf stat -e instructions php -dextension=/home/km/gitlab/mwbot-rs/mwbot/target/release-fast/libmwtitle.so maintenance/benchmarks/benchmarkEval.php --code="MediaWiki\\MediaWikiServices::getInstance()->getTitleParser()->splitTitleString('Talk:foo bar#frag', NS_MAIN);" --inner=100000 --count=100
Running PHP version 8.0.13 (x86_64) on Linux 5.15.6-200.fc35.x86_64 #1 SMP Wed Dec 1 13:41:10 UTC 2021

eval
   count: 100
    rate:      6.4/s
   total: 15725.54ms
    mean:   157.26ms
     max:   196.20ms
  stddev:     4.82ms
Current memory usage: 20.00 MiB
   Peak memory usage: 22.00 MiB


 Performance counter stats for 'php -dextension=/home/km/gitlab/mwbot-rs/mwbot/target/release-fast/libmwtitle.so maintenance/benchmarks/benchmarkEval.php --code=MediaWiki\MediaWikiServices::getInstance()->getTitleParser()->splitTitleString('Talk:foo bar#frag', NS_MAIN); --inner=100000 --count=100':

   165,565,539,954      instructions:u                                              

      15.834029617 seconds time elapsed

      15.766390000 seconds user
       0.025864000 seconds sys