fix: plugin status toggling & fix tests compilation

This commit is contained in:
Hy4ri committed 2026-06-16 17:38:12 +03:00
1 parent 6152ee42b2
commit f355814842
2 files changed
+13 -4

No files matched your search

@@ -57,7 +57,11 @@ class PluginsViewModel : ViewModel() {
state.copy(
plugins =
state.plugins.map {
if (it.name == plugin.name) it.copy(enabled = targetEnabled) else it
if (it.name == plugin.name) {
it.copy(runtimeStatus = if (targetEnabled) "enabled" else "disabled")
} else {
it
}
},
)
}
@@ -150,7 +154,11 @@ class PluginsViewModel : ViewModel() {
state.copy(
plugins =
state.plugins.map {
if (it.name == name) it.copy(enabled = originalEnabled) else it
if (it.name == name) {
it.copy(runtimeStatus = if (originalEnabled) "enabled" else "disabled")
} else {
it
}
},
toastMessage = errorMsg,
)
@@ -14,6 +14,7 @@ import com.m57.hermescontrol.data.model.KanbanTask
import com.m57.hermescontrol.data.model.LogResponse
import com.m57.hermescontrol.data.model.MessagingPlatform
import com.m57.hermescontrol.data.model.PluginInfo
import com.m57.hermescontrol.data.model.PluginsHubResponse
import com.m57.hermescontrol.data.model.Skill
import com.m57.hermescontrol.data.model.StatusResponse
import com.m57.hermescontrol.data.model.SystemStatsResponse
@@ -793,8 +794,8 @@ class E2eIntegrationTest {
@Test
fun testPluginsManagement_success() =
runTest {
val plugin = PluginInfo("plugin-1", "Desc", "1.0", false, true)
coEvery { mockApiService.getPlugins() } returns Response.success(listOf(plugin))
val plugin = PluginInfo("plugin-1", "Desc", "1.0", null, "disabled")
coEvery { mockApiService.getPlugins() } returns Response.success(PluginsHubResponse(listOf(plugin)))
coEvery { mockApiService.enablePlugin("plugin-1") } returns Response.success(Unit)
val viewModel = PluginsViewModel()