Errors in path matching in paths with repeated substrings #39
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.
I ran into an issue where I was expecting #/world/world/1,2 to be matched by my route #/world/:region/:coord and it wasn't. I tracked this down to the string substitution block in the 'match' method. I ended up reimplementing this block using a simple regexp and a loop through the string.
I've updated the unit tests to add a failing test case that is fixed by this change. I'm not particular about the exact implementation, just the result. I've also created a couple of fiddles to demonstrate the problem, and the fix in action:
Using original path.js: http://jsfiddle.net/sfoster/35Dxv/
Using the patched path.js http://jsfiddle.net/sfoster/UMPy2/