Bugfix for reverse routing when using F.Option #3533
Merged
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.
Using latest 2.4-SNAPSHOT or latest 2.3-SNAPSHOT with following routes:
In a template having reverse routes for them:
Gives me the following routes:
Which is wrong! Correct would be:
Only when using
F.Optionreverse routing is "broken" - it works fine with any other type (Long,java.lang.Long,java.util.UUID,Int,java.lang.Integerand even with ScalaOption).The cause for this bug is that in
target/scala-2.11/src_managed/main/routes_reverseRouting.scalaScala code like this gets generated:But
F.Optiondoes not have anequals(andhashCode) method, so all of the above conditions will always befalse!This PR simply adds the equals/hashCode methods (including tests) to
F.Optionwhich as a consequence fixes the above reverse routing bug.