Matthias Richerzhagen (e0ff89aa) at 02 Jun 14:07
prepare the 2.3.5 maintenance release
Matthias Richerzhagen (5730f997) at 02 Jun 13:37
Fix deprecation about optional parameter order in LocaleListener
... and 4 more commits
Das Tool hab ich auch benutzt. Anschließend aber die Formatierung wieder näher an die Vorversion gebracht.
Das ist ein Copy-Paste. Ich habe die Test-Methode testGuardAuthentication
in testGuardAuthenticationWithoutHidingUserNotFound
dupliziert, einmal mit hide_user_not_found = default = true
und einmal mit hide_user_not_found = false
.
War nötig, damit ein Test nicht fehlschlägt. Durch eine Änderung in Symfony hat sich die Ausgabe geändert, wenn hide_user_not_found
nicht im erwarteten Zustand war.
Die Datei habe ich für JARDS in das neue Format konvertiert, weil er mir das vorgeschlagen hat. Da gibts ein Tool für. Aber wenn du keine Warnung bekommen hast, musst du das vermutlich nicht machen.
Das hast du woher? :D
So wie ich gelesen habe gibts da auch keine bessere Lösung, oder? Also das kann irgendwie auch vorher schon nicht funktioniert haben, ohne etwas zu übergeben. Und wenn man was übergibt, wird $defaultLocale
überschrieben.
Warum dies?
Laut der isInstance
-Docu verhält es sicht genauso wie instanceof
und is_a
. Also prüft nicht auf den exakten Typ, sondern ob die Klasse identisch ODER Unterklasse ist.
Ich habe das so verstanden, dass wenn da null
zurück kommt, dann ist kein Type-Hint gesetzt, also soll die Funktion für alle Typen von Exceptions aufgerufen werden. Entspricht dem if ($expectedException->getClass() &&
im alten Code.
Hier müsste doch auch false
zurück gegeben werden, falls der Typ nicht determiniert werden kann? So sicherheitshalber?
Bei isInstance
würde aber auf den exakten Typ geprüft und dein letzter Punkt wäre nicht gegeben, oder?
Also zeigt dein Code anderes Verhalten?
Micro-Optimierung in_array
linear durch die Liste laufen.
Wenn $expectedException
eine RuntimeException
ist, aber $exception
eine InvalidArgumentException
müsste auch false
rauskommen.
Wenn $expectedException
einfach nur Exception
ist würde aber sowohl für RuntimeException
als auch für InvalidArgumentException
true
zurückgegeben werden.
Wieso hier das array_flip und dann das prüfen auf keys?
Jain. Wenn der Typ von $exception
zu keinem der Typen aus $expectedException
passt, gibt die Methode false
zurück.