Skip to content

Commit 2fdfea3

Browse files
authored
Remove / prefix for exploded archive HREFs (#432)
1 parent 57d81ec commit 2fdfea3

File tree

2 files changed

+15
-15
lines changed

2 files changed

+15
-15
lines changed

Sources/Shared/Toolkit/Archive/ExplodedArchive.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ final class ExplodedArchive: Archive, Loggable {
6161
}
6262

6363
return ArchiveEntry(
64-
path: url.path.removingPrefix(root.path).addingPrefix("/"),
64+
path: url.path.removingPrefix(root.path),
6565
length: UInt64(length),
6666
compressedLength: nil
6767
)

Tests/SharedTests/Toolkit/Archive/ExplodedArchiveTests.swift

+14-14
Original file line numberDiff line numberDiff line change
@@ -24,15 +24,15 @@ class ExplodedArchiveTests: XCTestCase {
2424

2525
func testGetNonExistingEntry() throws {
2626
let archive = try ExplodedArchive.make(file: fixtures.url(for: "exploded")).get()
27-
XCTAssertNil(archive.entry(at: "/unknown"))
27+
XCTAssertNil(archive.entry(at: "unknown"))
2828
}
2929

3030
func testGetFileEntry() throws {
3131
let archive = try ExplodedArchive.make(file: fixtures.url(for: "exploded")).get()
3232
XCTAssertEqual(
33-
archive.entry(at: "/A folder/wasteland-cover.jpg"),
33+
archive.entry(at: "A folder/wasteland-cover.jpg"),
3434
ArchiveEntry(
35-
path: "/A folder/wasteland-cover.jpg",
35+
path: "A folder/wasteland-cover.jpg",
3636
length: 103_477,
3737
compressedLength: nil
3838
)
@@ -41,21 +41,21 @@ class ExplodedArchiveTests: XCTestCase {
4141

4242
func testGetDirectoryEntryReturnsNil() throws {
4343
let archive = try ExplodedArchive.make(file: fixtures.url(for: "exploded")).get()
44-
XCTAssertNil(archive.entry(at: "/A folder"))
45-
XCTAssertNil(archive.entry(at: "/A folder/"))
44+
XCTAssertNil(archive.entry(at: "A folder"))
45+
XCTAssertNil(archive.entry(at: "A folder/"))
4646
}
4747

4848
func testGetEntries() throws {
4949
let archive = try ExplodedArchive.make(file: fixtures.url(for: "exploded")).get()
5050
// The entries are sorted by path.
5151
XCTAssertEqual(archive.entries, [
52-
ArchiveEntry(path: "/.hidden", length: 0, compressedLength: nil),
53-
ArchiveEntry(path: "/A folder/Sub.folder%/file-compressed.txt", length: 29609, compressedLength: nil),
54-
ArchiveEntry(path: "/A folder/Sub.folder%/file.txt", length: 20, compressedLength: nil),
55-
ArchiveEntry(path: "/A folder/wasteland-cover.jpg", length: 103_477, compressedLength: nil),
56-
ArchiveEntry(path: "/root.txt", length: 0, compressedLength: nil),
57-
ArchiveEntry(path: "/uncompressed.jpg", length: 279_551, compressedLength: nil),
58-
ArchiveEntry(path: "/uncompressed.txt", length: 30, compressedLength: nil),
52+
ArchiveEntry(path: ".hidden", length: 0, compressedLength: nil),
53+
ArchiveEntry(path: "A folder/Sub.folder%/file-compressed.txt", length: 29609, compressedLength: nil),
54+
ArchiveEntry(path: "A folder/Sub.folder%/file.txt", length: 20, compressedLength: nil),
55+
ArchiveEntry(path: "A folder/wasteland-cover.jpg", length: 103_477, compressedLength: nil),
56+
ArchiveEntry(path: "root.txt", length: 0, compressedLength: nil),
57+
ArchiveEntry(path: "uncompressed.jpg", length: 279_551, compressedLength: nil),
58+
ArchiveEntry(path: "uncompressed.txt", length: 30, compressedLength: nil),
5959
])
6060
}
6161

@@ -66,7 +66,7 @@ class ExplodedArchiveTests: XCTestCase {
6666

6767
func testReadFullEntry() throws {
6868
let archive = try ExplodedArchive.make(file: fixtures.url(for: "exploded")).get()
69-
let entry = try XCTUnwrap(archive.readEntry(at: "/A folder/Sub.folder%/file.txt"))
69+
let entry = try XCTUnwrap(archive.readEntry(at: "A folder/Sub.folder%/file.txt"))
7070
let data = try entry.read().get()
7171
XCTAssertEqual(
7272
String(data: data, encoding: .utf8),
@@ -76,7 +76,7 @@ class ExplodedArchiveTests: XCTestCase {
7676

7777
func testReadRange() throws {
7878
let archive = try ExplodedArchive.make(file: fixtures.url(for: "exploded")).get()
79-
let entry = try XCTUnwrap(archive.readEntry(at: "/A folder/Sub.folder%/file.txt"))
79+
let entry = try XCTUnwrap(archive.readEntry(at: "A folder/Sub.folder%/file.txt"))
8080
let data = try entry.read(range: 14 ..< 20).get()
8181
XCTAssertEqual(
8282
String(data: data, encoding: .utf8),

0 commit comments

Comments
 (0)