Skip to content

Commit e07c692

Browse files
Merge pull request #18993 from MauricioFauth/phpunit-assert-same
Make PHPUnit's assertions stricter
2 parents 8dbb62a + 8d95891 commit e07c692

204 files changed

Lines changed: 1576 additions & 1517 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

phpstan-baseline.neon

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15510,6 +15510,16 @@ parameters:
1551015510
count: 3
1551115511
path: tests/classes/Config/DescriptionTest.php
1551215512

15513+
-
15514+
message: "#^Call to static method PHPUnit\\\\Framework\\\\Assert\\:\\:assertSame\\(\\) with ''\\|'; Compressed export…'\\|'Compressed export…'\\|'Compressed import…'\\|'Compressed import…'\\|'Compressed import…' and null will always evaluate to false\\.$#"
15515+
count: 1
15516+
path: tests/classes/Config/FormDisplayTest.php
15517+
15518+
-
15519+
message: "#^Call to static method PHPUnit\\\\Framework\\\\Assert\\:\\:assertSame\\(\\) with 'string' and 'string' will always evaluate to true\\.$#"
15520+
count: 1
15521+
path: tests/classes/Config/FormDisplayTest.php
15522+
1551315523
-
1551415524
message: "#^Call to static method PHPUnit\\\\Framework\\\\Assert\\:\\:assertTrue\\(\\) with null will always evaluate to false\\.$#"
1551515525
count: 1
@@ -16355,6 +16365,11 @@ parameters:
1635516365
count: 1
1635616366
path: tests/classes/NormalizationTest.php
1635716367

16368+
-
16369+
message: "#^Call to static method PHPUnit\\\\Framework\\\\Assert\\:\\:assertSame\\(\\) with '' and PhpMyAdmin\\\\Message will always evaluate to false\\.$#"
16370+
count: 1
16371+
path: tests/classes/NormalizationTest.php
16372+
1635816373
-
1635916374
message: "#^Property PhpMyAdmin\\\\Config\\:\\:\\$settings \\(array\\{PmaAbsoluteUri\\: string, AuthLog\\: string, AuthLogSuccess\\: bool, PmaNoRelation_DisableWarning\\: bool, SuhosinDisableWarning\\: bool, LoginCookieValidityDisableWarning\\: bool, ReservedWordDisableWarning\\: bool, TranslationWarningThreshold\\: int, \\.\\.\\.\\}\\) does not accept array\\{PmaAbsoluteUri\\: string, AuthLog\\: string, AuthLogSuccess\\: bool, PmaNoRelation_DisableWarning\\: bool, SuhosinDisableWarning\\: bool, LoginCookieValidityDisableWarning\\: bool, ReservedWordDisableWarning\\: bool, TranslationWarningThreshold\\: int, \\.\\.\\.\\}\\.$#"
1636016375
count: 2
@@ -16390,6 +16405,11 @@ parameters:
1639016405
count: 1
1639116406
path: tests/classes/Plugins/Auth/AuthenticationCookieTest.php
1639216407

16408+
-
16409+
message: "#^Call to static method PHPUnit\\\\Framework\\\\Assert\\:\\:assertSame\\(\\) with array\\{host\\: 'b', port\\: '2', socket\\: true, ssl\\: true, user\\: 'pmaUser2', password\\: 'testPW'\\} and array\\{host\\: string, port\\: string, socket\\: string, ssl\\: bool, ssl_key\\: string\\|null, ssl_cert\\: string\\|null, ssl_ca\\: string\\|null, ssl_ca_path\\: string\\|null, \\.\\.\\.\\} will always evaluate to false\\.$#"
16410+
count: 1
16411+
path: tests/classes/Plugins/Auth/AuthenticationCookieTest.php
16412+
1639316413
-
1639416414
message: "#^Cannot access offset 'default' on mixed\\.$#"
1639516415
count: 2
@@ -16415,6 +16435,11 @@ parameters:
1641516435
count: 10
1641616436
path: tests/classes/Plugins/Auth/AuthenticationCookieTest.php
1641716437

16438+
-
16439+
message: "#^Call to static method PHPUnit\\\\Framework\\\\Assert\\:\\:assertSame\\(\\) with 'testUser' and 'testUser' will always evaluate to true\\.$#"
16440+
count: 1
16441+
path: tests/classes/Plugins/Auth/AuthenticationHttpTest.php
16442+
1641816443
-
1641916444
message: "#^Property PhpMyAdmin\\\\Config\\:\\:\\$selectedServer \\(array\\{host\\: string, port\\: string, socket\\: string, ssl\\: bool, ssl_key\\: string\\|null, ssl_cert\\: string\\|null, ssl_ca\\: string\\|null, ssl_ca_path\\: string\\|null, \\.\\.\\.\\}\\) does not accept array\\{host\\: 'a', user\\: 'user2'\\}\\.$#"
1642016445
count: 2
@@ -16750,16 +16775,31 @@ parameters:
1675016775
count: 1
1675116776
path: tests/classes/Stubs/ResponseRenderer.php
1675216777

16778+
-
16779+
message: "#^Call to static method PHPUnit\\\\Framework\\\\Assert\\:\\:assertFalse\\(\\) with true will always evaluate to false\\.$#"
16780+
count: 1
16781+
path: tests/classes/Table/TableTest.php
16782+
1675316783
-
1675416784
message: "#^Call to static method PHPUnit\\\\Framework\\\\Assert\\:\\:assertInstanceOf\\(\\) with 'PhpMyAdmin\\\\\\\\Table\\\\\\\\Table' and PhpMyAdmin\\\\Table\\\\Table will always evaluate to true\\.$#"
1675516785
count: 1
1675616786
path: tests/classes/Table/TableTest.php
1675716787

16788+
-
16789+
message: "#^Call to static method PHPUnit\\\\Framework\\\\Assert\\:\\:assertSame\\(\\) with array\\<PhpMyAdmin\\\\FieldMetadata\\> and array\\{'aNonValidExampleToR…'\\} will always evaluate to false\\.$#"
16790+
count: 1
16791+
path: tests/classes/Table/TableTest.php
16792+
1675816793
-
1675916794
message: "#^Cannot access offset 'SCHEMA_TABLES' on mixed\\.$#"
1676016795
count: 1
1676116796
path: tests/classes/Table/TableTest.php
1676216797

16798+
-
16799+
message: "#^Offset 'col_order' on array in isset\\(\\) always exists and is not nullable\\.$#"
16800+
count: 1
16801+
path: tests/classes/Table/TableTest.php
16802+
1676316803
-
1676416804
message: "#^Parameter \\#2 \\$haystack of static method PHPUnit\\\\Framework\\\\Assert\\:\\:assertStringContainsString\\(\\) expects string, mixed given\\.$#"
1676516805
count: 3
@@ -16785,6 +16825,11 @@ parameters:
1678516825
count: 1
1678616826
path: tests/classes/Theme/ThemeTest.php
1678716827

16828+
-
16829+
message: "#^Casting to int something that's already int\\.$#"
16830+
count: 1
16831+
path: tests/classes/Theme/ThemeTest.php
16832+
1678816833
-
1678916834
message: "#^Property PhpMyAdmin\\\\Config\\:\\:\\$selectedServer \\(array\\{host\\: string, port\\: string, socket\\: string, ssl\\: bool, ssl_key\\: string\\|null, ssl_cert\\: string\\|null, ssl_ca\\: string\\|null, ssl_ca_path\\: string\\|null, \\.\\.\\.\\}\\) does not accept array\\{host\\: string, port\\: string, socket\\: string, ssl\\: bool, ssl_key\\: string\\|null, ssl_cert\\: string\\|null, ssl_ca\\: string\\|null, ssl_ca_path\\: string\\|null, \\.\\.\\.\\}\\.$#"
1679016835
count: 4

psalm-baseline.xml

Lines changed: 62 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -12247,7 +12247,6 @@
1224712247
<code>$filesInfos</code>
1224812248
</MixedArgument>
1224912249
<MixedAssignment>
12250-
<code>$context</code>
1225112250
<code>$context</code>
1225212251
<code>$context</code>
1225312252
<code>$filesFound</code>
@@ -12293,6 +12292,11 @@
1229312292
<code>getValues</code>
1229412293
</PossiblyUnusedMethod>
1229512294
</file>
12295+
<file src="tests/classes/Config/FormDisplayTemplateTest.php">
12296+
<TypeDoesNotContainType>
12297+
<code>assertSame</code>
12298+
</TypeDoesNotContainType>
12299+
</file>
1229612300
<file src="tests/classes/Config/FormDisplayTest.php">
1229712301
<DeprecatedMethod>
1229812302
<code>Config::getInstance()</code>
@@ -13320,9 +13324,6 @@
1332013324
<code>Config::getInstance()</code>
1332113325
<code>Config::getInstance()</code>
1332213326
</DeprecatedMethod>
13323-
<MixedAssignment>
13324-
<code>$output</code>
13325-
</MixedAssignment>
1332613327
<PossiblyUnusedMethod>
1332713328
<code>providerGetDataFromRequest</code>
1332813329
</PossiblyUnusedMethod>
@@ -13384,6 +13385,10 @@
1338413385
<code>providerTestGotoNowhere</code>
1338513386
<code>providerTestLinkURL</code>
1338613387
</PossiblyUnusedMethod>
13388+
<TypeDoesNotContainType>
13389+
<code>assertSame</code>
13390+
<code>assertSame</code>
13391+
</TypeDoesNotContainType>
1338713392
</file>
1338813393
<file src="tests/classes/CreateAddFieldTest.php">
1338913394
<DeprecatedMethod>
@@ -13460,9 +13465,6 @@
1346013465
<code>DatabaseInterface::getInstance()</code>
1346113466
<code>DatabaseInterface::getInstance()</code>
1346213467
</DeprecatedMethod>
13463-
<MixedAssignment>
13464-
<code>$result</code>
13465-
</MixedAssignment>
1346613468
</file>
1346713469
<file src="tests/classes/Database/EventsTest.php">
1346813470
<DeprecatedMethod>
@@ -13846,13 +13848,6 @@
1384613848
<code>$dataSet</code>
1384713849
<code>$dataSet</code>
1384813850
<code>$queryString</code>
13849-
<code>$queryString</code>
13850-
<code>$queryString</code>
13851-
<code>$queryString</code>
13852-
<code>$queryString</code>
13853-
<code>$queryString</code>
13854-
<code>$queryString</code>
13855-
<code>$queryString</code>
1385613851
</MixedAssignment>
1385713852
</file>
1385813853
<file src="tests/classes/HeaderTest.php">
@@ -13943,6 +13938,11 @@
1394313938
<code>uriFactoryProviders</code>
1394413939
</PossiblyUnusedMethod>
1394513940
</file>
13941+
<file src="tests/classes/Http/Middleware/TokenRequestParamCheckingTest.php">
13942+
<RedundantCondition>
13943+
<code>assertSame</code>
13944+
</RedundantCondition>
13945+
</file>
1394613946
<file src="tests/classes/Http/ResponseTest.php">
1394713947
<PossiblyUnusedMethod>
1394813948
<code>responseFactoryProviders</code>
@@ -14093,12 +14093,6 @@
1409314093
<code>$result</code>
1409414094
<code>$result</code>
1409514095
<code>$result</code>
14096-
<code>$result</code>
14097-
<code>$result</code>
14098-
<code>$result</code>
14099-
<code>$result</code>
14100-
<code>$result</code>
14101-
<code>$result</code>
1410214096
</MixedAssignment>
1410314097
<PossiblyInvalidCast>
1410414098
<code>$value</code>
@@ -14110,6 +14104,11 @@
1411014104
<PropertyTypeCoercion>
1411114105
<code><![CDATA[Config::getInstance()->settings]]></code>
1411214106
</PropertyTypeCoercion>
14107+
<TypeDoesNotContainType>
14108+
<code>assertSame</code>
14109+
<code>assertSame</code>
14110+
<code>assertSame</code>
14111+
</TypeDoesNotContainType>
1411314112
</file>
1411414113
<file src="tests/classes/IpAllowDenyTest.php">
1411514114
<DeprecatedMethod>
@@ -14227,15 +14226,15 @@
1422714226
<code>Config::getInstance()</code>
1422814227
<code>Config::getInstance()</code>
1422914228
</DeprecatedMethod>
14229+
<DocblockTypeContradiction>
14230+
<code>assertSame</code>
14231+
</DocblockTypeContradiction>
1423014232
<InvalidPropertyAssignmentValue>
1423114233
<code><![CDATA[$config->settings]]></code>
1423214234
<code><![CDATA[$config->settings]]></code>
1423314235
<code><![CDATA[$config->settings]]></code>
1423414236
<code><![CDATA[$config->settings]]></code>
1423514237
</InvalidPropertyAssignmentValue>
14236-
<MixedAssignment>
14237-
<code>$result</code>
14238-
</MixedAssignment>
1423914238
</file>
1424014239
<file src="tests/classes/OpenDocumentTest.php">
1424114240
<RedundantCondition>
@@ -14246,6 +14245,9 @@
1424614245
<PossiblyUnusedMethod>
1424714246
<code>providerGetPartitionMaintenanceChoices</code>
1424814247
</PossiblyUnusedMethod>
14248+
<TypeDoesNotContainType>
14249+
<code>assertSame</code>
14250+
</TypeDoesNotContainType>
1424914251
</file>
1425014252
<file src="tests/classes/Partitioning/PartitionTest.php">
1425114253
<PossiblyUnusedMethod>
@@ -14358,6 +14360,9 @@
1435814360
<code><![CDATA[$config->settings]]></code>
1435914361
<code><![CDATA[$config->settings]]></code>
1436014362
</PropertyTypeCoercion>
14363+
<TypeDoesNotContainType>
14364+
<code>assertSame</code>
14365+
</TypeDoesNotContainType>
1436114366
</file>
1436214367
<file src="tests/classes/Plugins/Auth/AuthenticationHttpTest.php">
1436314368
<DeprecatedMethod>
@@ -14378,6 +14383,14 @@
1437814383
<PossiblyUnusedMethod>
1437914384
<code>readCredentialsProvider</code>
1438014385
</PossiblyUnusedMethod>
14386+
<RedundantCondition>
14387+
<code>assertSame</code>
14388+
<code>assertSame</code>
14389+
<code>assertSame</code>
14390+
</RedundantCondition>
14391+
<RedundantConditionGivenDocblockType>
14392+
<code>assertSame</code>
14393+
</RedundantConditionGivenDocblockType>
1438114394
</file>
1438214395
<file src="tests/classes/Plugins/Auth/AuthenticationSignonTest.php">
1438314396
<DeprecatedMethod>
@@ -14407,6 +14420,9 @@
1440714420
<code><![CDATA[$config->selectedServer]]></code>
1440814421
<code><![CDATA[$config->settings]]></code>
1440914422
</InvalidPropertyAssignmentValue>
14423+
<RedundantCondition>
14424+
<code>assertSame</code>
14425+
</RedundantCondition>
1441014426
</file>
1441114427
<file src="tests/classes/Plugins/AuthenticationPluginFactoryTest.php">
1441214428
<DeprecatedMethod>
@@ -14418,18 +14434,23 @@
1441814434
<code>providerForTestValidPlugins</code>
1441914435
</PossiblyUnusedMethod>
1442014436
</file>
14421-
<file src="tests/classes/Plugins/Export/ExportCodegenTest.php">
14422-
<MixedAssignment>
14423-
<code>$result</code>
14424-
<code>$result</code>
14425-
</MixedAssignment>
14426-
</file>
1442714437
<file src="tests/classes/Plugins/Export/ExportCsvTest.php">
14438+
<DocblockTypeContradiction>
14439+
<code>assertSame</code>
14440+
</DocblockTypeContradiction>
1442814441
<RedundantCondition>
1442914442
<code>assertFalse</code>
14443+
<code>assertSame</code>
1443014444
</RedundantCondition>
1443114445
<RedundantConditionGivenDocblockType>
1443214446
<code>assertFalse</code>
14447+
<code>assertSame</code>
14448+
<code>assertSame</code>
14449+
<code>assertSame</code>
14450+
<code>assertSame</code>
14451+
<code>assertSame</code>
14452+
<code>assertSame</code>
14453+
<code>assertSame</code>
1443314454
</RedundantConditionGivenDocblockType>
1443414455
</file>
1443514456
<file src="tests/classes/Plugins/Export/ExportHtmlwordTest.php">
@@ -14463,6 +14484,11 @@
1446314484
<code><![CDATA[$GLOBALS['plugin_param']['single_table']]]></code>
1446414485
</PossiblyInvalidArrayOffset>
1446514486
</file>
14487+
<file src="tests/classes/Plugins/Export/ExportOdsTest.php">
14488+
<TypeDoesNotContainType>
14489+
<code>assertSame</code>
14490+
</TypeDoesNotContainType>
14491+
</file>
1446614492
<file src="tests/classes/Plugins/Export/ExportOdtTest.php">
1446714493
<DeprecatedMethod>
1446814494
<code>Config::getInstance()</code>
@@ -14482,6 +14508,9 @@
1448214508
<code><![CDATA[$GLOBALS['plugin_param']['single_table']]]></code>
1448314509
<code><![CDATA[$GLOBALS['plugin_param']['single_table']]]></code>
1448414510
</PossiblyInvalidArrayOffset>
14511+
<TypeDoesNotContainType>
14512+
<code>assertSame</code>
14513+
</TypeDoesNotContainType>
1448514514
</file>
1448614515
<file src="tests/classes/Plugins/Export/ExportSqlTest.php">
1448714516
<DeprecatedMethod>
@@ -14508,8 +14537,6 @@
1450814537
<MixedAssignment>
1450914538
<code>$result</code>
1451014539
<code>$result</code>
14511-
<code>$result</code>
14512-
<code>$result</code>
1451314540
</MixedAssignment>
1451414541
<PossiblyInvalidArrayOffset>
1451514542
<code><![CDATA[$GLOBALS['plugin_param']['export_type']]]></code>
@@ -14584,6 +14611,7 @@
1458414611
</DeprecatedMethod>
1458514612
<RedundantCondition>
1458614613
<code>assertFalse</code>
14614+
<code>assertSame</code>
1458714615
</RedundantCondition>
1458814616
</file>
1458914617
<file src="tests/classes/Plugins/Import/ImportSqlTest.php">
@@ -14811,7 +14839,6 @@
1481114839
<file src="tests/classes/Setup/ConfigGeneratorTest.php">
1481214840
<MixedAssignment>
1481314841
<code>$result</code>
14814-
<code>$result</code>
1481514842
</MixedAssignment>
1481614843
</file>
1481714844
<file src="tests/classes/Setup/FormProcessingTest.php">
@@ -14827,6 +14854,9 @@
1482714854
<code><![CDATA[$_SESSION['messages']['type']]]></code>
1482814855
<code><![CDATA[$_SESSION['messages']['type']['123']]]></code>
1482914856
</MixedArrayAccess>
14857+
<TypeDoesNotContainType>
14858+
<code>assertSame</code>
14859+
</TypeDoesNotContainType>
1483014860
</file>
1483114861
<file src="tests/classes/SqlQueryFormTest.php">
1483214862
<DeprecatedMethod>
@@ -14853,9 +14883,6 @@
1485314883
<code>Config::getInstance()</code>
1485414884
<code>Config::getInstance()</code>
1485514885
</DeprecatedMethod>
14856-
<MixedAssignment>
14857-
<code>$result</code>
14858-
</MixedAssignment>
1485914886
<PossiblyUnusedMethod>
1486014887
<code>dataProviderCountQueryResults</code>
1486114888
</PossiblyUnusedMethod>
@@ -14934,7 +14961,6 @@
1493414961
<MixedAssignment>
1493514962
<code>$isDefineProperty</code>
1493614963
<code>$sql</code>
14937-
<code>$sql</code>
1493814964
</MixedAssignment>
1493914965
<PossiblyUnusedMethod>
1494014966
<code>dataValidateName</code>

tests/classes/Advisory/AdvisorTest.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ protected function setUp(): void
3535
public function testAdvisorBytime(float $time, string $expected): void
3636
{
3737
$result = Advisor::byTime($time, 2);
38-
self::assertEquals($expected, $result);
38+
self::assertSame($expected, $result);
3939
}
4040

4141
/** @return mixed[][] */
@@ -69,7 +69,7 @@ public function testAddRule(array $rule, array $expected, string|null $error): v
6969
$advisor->addRule('fired', $rule);
7070
$runResult = $advisor->getRunResult();
7171
if ($error !== null) {
72-
self::assertEquals([$error], $runResult['errors']);
72+
self::assertSame([$error], $runResult['errors']);
7373
}
7474

7575
if ($runResult['fired'] === [] && $expected === []) {

0 commit comments

Comments
 (0)