Add Simplified Chinese (zh) localization (#901)
* feat: add Simplified Chinese (zh) localization - Add complete values-zh/strings.xml (921 strings, all keys covered) - Translate 107 hardcoded UI strings across 34 Kotlin files - Add 简体中文 option to in-app language picker - Terminology aligned with official Hermes dashboard zh translations * fix: resource-ize hardcoded Chinese strings per review Address Hy4ri's review on PR #901: - Move 104 hardcoded Chinese UI strings to string resources (English in values/strings.xml, Chinese in values-zh/strings.xml) referenced via stringResource() - SystemViewModel labels -> @StringRes + AndroidViewModel with resource-based toast templates - Make TodoTaskCardTest assertion locale-agnostic via getString() - Update cookie tests to assert new host-agnostic session cookie behavior (WiFi/Tailscale switch-safe) - Session cookie mirroring to WILDCARD bucket survives host switches * style: apply ktlintFormat per review --------- Co-authored-by: hermes-i18n <hermes-i18n@localhost>
This commit is contained in:
1 parent
0a5eb7a5b0
commit
fdbd98af3e
46 files changed
+1420
-133
No files matched your search
@@ -1,5 +1,7 @@
|
||||
package com.m57.hermescontrol.ui.system
|
||||
|
||||
import android.app.Application
|
||||
import io.mockk.mockk
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.ExperimentalCoroutinesApi
|
||||
import kotlinx.coroutines.test.StandardTestDispatcher
|
||||
@@ -14,6 +16,7 @@ import org.junit.Test
|
||||
@OptIn(ExperimentalCoroutinesApi::class)
|
||||
class SystemViewModelTest {
|
||||
private val testDispatcher = StandardTestDispatcher()
|
||||
private val mockApp = mockk<Application>(relaxed = true)
|
||||
|
||||
@Before
|
||||
fun setup() {
|
||||
@@ -27,7 +30,7 @@ class SystemViewModelTest {
|
||||
|
||||
@Test
|
||||
fun `openUpdateConfirm sets updateConfirmOpen to true`() {
|
||||
val viewModel = SystemViewModel()
|
||||
val viewModel = SystemViewModel(mockApp)
|
||||
|
||||
assertFalse(viewModel.uiState.value.updateConfirmOpen)
|
||||
|
||||
@@ -38,7 +41,7 @@ class SystemViewModelTest {
|
||||
|
||||
@Test
|
||||
fun `closeUpdateConfirm sets updateConfirmOpen to false`() {
|
||||
val viewModel = SystemViewModel()
|
||||
val viewModel = SystemViewModel(mockApp)
|
||||
|
||||
// First open it
|
||||
viewModel.openUpdateConfirm()
|
||||
|
||||
Reference in new issue
Block a user