test(clawdiskit): cover BonjourEscapes decoding

This commit is contained in:
Peter Steinberger
2025-12-13 11:10:30 +00:00
parent 3a6ab81549
commit 5b608718bb
3 changed files with 32 additions and 0 deletions

1
.gitignore vendored
View File

@@ -6,6 +6,7 @@ coverage
.pnpm-store
**/.DS_Store
apps/macos/.build/
apps/shared/ClawdisKit/.build/
bin/clawdis-mac
apps/macos/.build-local/
apps/macos/.swiftpm/

View File

@@ -18,4 +18,7 @@ let package = Package(
swiftSettings: [
.enableUpcomingFeature("StrictConcurrency"),
]),
.testTarget(
name: "ClawdisKitTests",
dependencies: ["ClawdisKit"]),
])

View File

@@ -0,0 +1,28 @@
import ClawdisKit
import XCTest
final class BonjourEscapesTests: XCTestCase {
func testDecodePassThrough() {
XCTAssertEqual(BonjourEscapes.decode("hello"), "hello")
XCTAssertEqual(BonjourEscapes.decode(""), "")
}
func testDecodeSpaces() {
XCTAssertEqual(BonjourEscapes.decode("Clawdis\\032Gateway"), "Clawdis Gateway")
}
func testDecodeMultipleEscapes() {
XCTAssertEqual(
BonjourEscapes.decode("A\\038B\\047C\\032D"),
"A&B/C D")
}
func testDecodeIgnoresInvalidEscapeSequences() {
XCTAssertEqual(BonjourEscapes.decode("Hello\\03World"), "Hello\\03World")
XCTAssertEqual(BonjourEscapes.decode("Hello\\XYZWorld"), "Hello\\XYZWorld")
}
func testDecodeUsesDecimalUnicodeScalarValue() {
XCTAssertEqual(BonjourEscapes.decode("Hello\\065World"), "HelloAWorld")
}
}