mirror of
https://github.com/hanzoai/bot.git
synced 2026-10-30 17:24:26 +00:00
Comprehensive rename of all openclaw references to hanzo-bot equivalents: - Package: openclaw → @hanzo/bot - Binary: openclaw → hanzo-bot - Types: OpenClaw* → Bot* - Env vars: OPENCLAW_* → BOT_* - Android: ai.openclaw.android → ai.hanzo.bot.android - iOS/macOS: ai.openclaw.* → ai.hanzo.* - Swift modules: OpenClaw* → Bot* - Plugins: openclaw.plugin.json → bot.plugin.json - Paths: .openclaw/ → .hanzo/bot/ - URLs: github.com/openclaw → github.com/hanzoai
43 lines
1.3 KiB
Swift
43 lines
1.3 KiB
Swift
import Foundation
|
|
import Testing
|
|
@testable import HanzoBot
|
|
|
|
@Suite struct HealthStoreStateTests {
|
|
@Test @MainActor func linkedChannelProbeFailureDegradesState() async throws {
|
|
let snap = HealthSnapshot(
|
|
ok: true,
|
|
ts: 0,
|
|
durationMs: 1,
|
|
channels: [
|
|
"whatsapp": .init(
|
|
configured: true,
|
|
linked: true,
|
|
authAgeMs: 1,
|
|
probe: .init(
|
|
ok: false,
|
|
status: 503,
|
|
error: "gateway connect failed",
|
|
elapsedMs: 12,
|
|
bot: nil,
|
|
webhook: nil),
|
|
lastProbeAt: 0),
|
|
],
|
|
channelOrder: ["whatsapp"],
|
|
channelLabels: ["whatsapp": "WhatsApp"],
|
|
heartbeatSeconds: 60,
|
|
sessions: .init(path: "/tmp/sessions.json", count: 0, recent: []))
|
|
|
|
let store = HealthStore.shared
|
|
store.__setSnapshotForTest(snap, lastError: nil)
|
|
|
|
switch store.state {
|
|
case let .degraded(message):
|
|
#expect(!message.isEmpty)
|
|
default:
|
|
Issue.record("Expected degraded state when probe fails for linked channel")
|
|
}
|
|
|
|
#expect(store.summaryLine.contains("probe degraded"))
|
|
}
|
|
}
|