本地化测试不再切换全局语言,避免与并行的测试互相影响
This commit is contained in:
1 parent
5e16e65233
commit
9af1aaaf27
1 file changed
+14
-10
@@ -1,19 +1,23 @@
|
||||
import Testing
|
||||
@testable import Localization
|
||||
|
||||
@Suite(.serialized) struct LocalizationTests {
|
||||
// 不切换全局语言:其他测试套件并行运行,依赖中文原文
|
||||
@Suite struct LocalizationTests {
|
||||
@Test func translatesExactAndTemplates() {
|
||||
L10n.configure(.english)
|
||||
defer { L10n.configure(.chinese) }
|
||||
#expect(tr("内存") == "Memory")
|
||||
#expect(tr("12 个进程") == "12 processes")
|
||||
#expect(tr("OpenStats") == "OpenStats")
|
||||
L10n.configure(.chinese)
|
||||
#expect(tr("内存") == "内存")
|
||||
let table = Translations.shared
|
||||
#expect(table.translate("内存") == "Memory")
|
||||
#expect(table.translate("12 个进程") == "12 processes")
|
||||
#expect(table.translate("1 个进程") == "1 process")
|
||||
#expect(table.translate("不存在的文案") == nil)
|
||||
}
|
||||
|
||||
@Test func resolvesSystemLanguage() {
|
||||
#expect(AppLanguage.chinese.resolved == .chinese)
|
||||
@Test func translatesCapturedChinese() {
|
||||
// 插进来的中文也会再翻一次
|
||||
#expect(Translations.shared.translate("设置 · 关于") == "Settings · About")
|
||||
}
|
||||
|
||||
@Test func defaultsToChinese() {
|
||||
#expect(tr("内存") == "内存")
|
||||
#expect(AppLanguage.english.resolved == .english)
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user