diff --git a/tests/test_windows_node_source.py b/tests/test_windows_node_source.py index c98a279..378fa52 100644 --- a/tests/test_windows_node_source.py +++ b/tests/test_windows_node_source.py @@ -85,6 +85,11 @@ class WindowsNodeSourceTests(unittest.TestCase): self.assertIn("ContentWidth = 760", form) self.assertIn("NodeAdapterRegistry.InstalledContracts", form) self.assertIn("CreateCapabilityRow(contract.DisplayName, contract.Capability)", form) + self.assertIn( + 'runtime.Software == "OriginPro" ? "Origin" : runtime.Software', form + ) + self.assertIn('$"{softwareName} {runtime.SoftwareVersion}"', form) + self.assertNotIn('$"Origin {runtime.SoftwareVersion}"', form) self.assertIn('CreateButton("立即重连", 112, primary: true)', form) self.assertIn("ReconnectRequested?.Invoke()", form) self.assertIn("registrationCard.Visible = !registered", form) @@ -205,7 +210,7 @@ class WindowsNodeSourceTests(unittest.TestCase): self.assertIn('startInfo.Environment["PYTHONIOENCODING"] = "utf-8"', runner) form = (PROJECT / "ConfigurationForm.cs").read_text(encoding="utf-8") self.assertIn('Adapter {adapter.AdapterVersion}', form) - self.assertIn('Origin 版本未知', form) + self.assertIn('$"{softwareName} 版本未知"', form) self.assertIn( "&& !jobInbox.HasPendingJobs", connection, diff --git a/windows-node/Zcbot.WindowsNode/ConfigurationForm.cs b/windows-node/Zcbot.WindowsNode/ConfigurationForm.cs index 9e151f1..fdd051d 100644 --- a/windows-node/Zcbot.WindowsNode/ConfigurationForm.cs +++ b/windows-node/Zcbot.WindowsNode/ConfigurationForm.cs @@ -206,9 +206,10 @@ internal sealed class ConfigurationForm : Form private static string FormatAdapterStatus(INodeAdapter adapter) { var runtime = adapter.DetectRuntime(); + var softwareName = runtime.Software == "OriginPro" ? "Origin" : runtime.Software; var softwareVersion = string.IsNullOrWhiteSpace(runtime.SoftwareVersion) - ? "Origin 版本未知" - : $"Origin {runtime.SoftwareVersion}"; + ? $"{softwareName} 版本未知" + : $"{softwareName} {runtime.SoftwareVersion}"; var state = runtime.Health == "ready" ? "可用" : "不可用"; return $"{adapter.DisplayName}:{state} · Adapter {adapter.AdapterVersion} · {softwareVersion}\n" + runtime.Detail;