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

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")
}
}