[FrameworkBundle] Added unit-tests for GlobalVariables::getUser() #12013
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Tests added should explain that
getUser()
should returnnull
when a string is found as user. If this is not correct, a PR should be made. However, this would result in a huge BC break due to people using{% if app.user %}
which would returnnull
if an anonymous token was found. If this suddenly returns a string, this check will fail.While at it, I have also added
getUser()
tests to verify the unhappy flow is working. These tests uncovered that if$container->get('security.token_storage')
fails, it will throw an exception rather than returnnull
. This issue is now fixed.List of changes
testGetUser
has been refactored to be tested with multiple variations of return types to verify the return type to work as the code tells.get('security.token_storage')
is now only executed ifhas('security.token_storage')
returns true@fabpot I think this PR should be merged before 2.6, because it fixes an uncaught exception bug in my previous PR which splits the security context