fix(path): handle lone slash (#1713)
This commit is contained in:
		@@ -171,6 +171,10 @@ describe("transforms", () => {
 | 
				
			|||||||
    assert.strictEqual(path.joinSegments("/a", "b/"), "/a/b/")
 | 
					    assert.strictEqual(path.joinSegments("/a", "b/"), "/a/b/")
 | 
				
			||||||
    assert.strictEqual(path.joinSegments("/a/", "b/"), "/a/b/")
 | 
					    assert.strictEqual(path.joinSegments("/a/", "b/"), "/a/b/")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    // lone slash
 | 
				
			||||||
 | 
					    assert.strictEqual(path.joinSegments("/a/", "b", "/"), "/a/b/")
 | 
				
			||||||
 | 
					    assert.strictEqual(path.joinSegments("a/", "b" + "/"), "a/b/")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    // works with protocol specifiers
 | 
					    // works with protocol specifiers
 | 
				
			||||||
    assert.strictEqual(path.joinSegments("https://example.com", "a"), "https://example.com/a")
 | 
					    assert.strictEqual(path.joinSegments("https://example.com", "a"), "https://example.com/a")
 | 
				
			||||||
    assert.strictEqual(path.joinSegments("https://example.com/", "a"), "https://example.com/a")
 | 
					    assert.strictEqual(path.joinSegments("https://example.com/", "a"), "https://example.com/a")
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -188,7 +188,7 @@ export function joinSegments(...args: string[]): string {
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  let joined = args
 | 
					  let joined = args
 | 
				
			||||||
    .filter((segment) => segment !== "")
 | 
					    .filter((segment) => segment !== "" && segment !== "/")
 | 
				
			||||||
    .map((segment) => stripSlashes(segment))
 | 
					    .map((segment) => stripSlashes(segment))
 | 
				
			||||||
    .join("/")
 | 
					    .join("/")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user