Переглянути джерело

Fix ** not matching single path element

Michael Enger 4 роки тому
батько
коміт
24ad9df6ac

+ 0 - 1
Xcode/Sources/HttpRouter.swift

@@ -158,7 +158,6 @@ open class HttpRouter {
                 }
 
                 let startStarNodeKeys = startStarNode.nodes.keys
-                currentIndex += 1
                 while currentIndex < count, let pathToken = pattern[currentIndex].removingPercentEncoding {
                     currentIndex += 1
                     if startStarNodeKeys.contains(pathToken) {

+ 2 - 0
Xcode/Tests/SwifterTestsHttpRouter.swift

@@ -82,7 +82,9 @@ class SwifterTestsHttpRouter: XCTestCase {
         XCTAssertNil(router.route(nil, path: "/"))
         XCTAssertNil(router.route(nil, path: "/a"))
         XCTAssertNotNil(router.route(nil, path: "/a/b/c/d/e/f/g"))
+        XCTAssertNotNil(router.route(nil, path: "/a/b/e/f/g"))
         XCTAssertNil(router.route(nil, path: "/a/e/f/g"))
+        XCTAssertNil(router.route(nil, path: "/a/b/c/f/g"))
     }
 
     func testHttpRouterMultiplePathSegmentWildcardTail() {