Slide 17
Slide 17 text
enum SupportLanguages: String, CaseIterable {
case en = "en"
case ja = "ja"
var bundle: Bundle? {
guard let path = Bundle.main.path(forResource: rawValue, ofType: "lproj") else {
return nil
}
return Bundle(path: path)
}
}
final class LinkLocalizeSampleTests: XCTestCase {
func test_HelpページのURLが全言語で想定通りに返ってくる() throws {
let localizationValue = ExternalStaticLinks.helpPage.localizationValue
for lang in SupportLanguages.allCases {
let urlString = String(localized: localizationValue, bundle: lang.bundle)
switch lang {
case .en:
XCTAssertEqual(urlString, "https://sites.google.com/view/url-l18n-demo/help-english")
case .ja:
XCTAssertEqual(urlString, "https://sites.google.com/view/url-l18n-demo/help-japanese")
}
XCTAssertNotNil(URL(string: urlString))
}
}
}