Updated the Negotiate method in the Localization package to add explicit language requests.

This commit is contained in:
2026-08-30 19:05:52 +02:00
parent 79cfb42fbb
commit 9b16ce3339
3 changed files with 57 additions and 3 deletions
@@ -127,4 +127,44 @@ struct NegotiateTests {
#expect(language == "en")
}
@Test
func `honours a supported requested language over the header`() {
let language = negotiate(
requested: "de",
acceptLanguage: "en"
)
#expect(language == "de")
}
@Test
func `matches a regional requested language by its primary subtag`() {
let language = negotiate(
requested: "de-AT",
acceptLanguage: "en"
)
#expect(language == "de")
}
@Test
func `ignores an unsupported requested language`() {
let language = negotiate(
requested: "fr",
acceptLanguage: "de"
)
#expect(language == "de")
}
@Test
func `ignores an empty requested language`() {
let language = negotiate(
requested: "",
acceptLanguage: "de"
)
#expect(language == "de")
}
}