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
82 lines
2.6 KiB
Swift
82 lines
2.6 KiB
Swift
import BotKit
|
|
import SwiftUI
|
|
import Testing
|
|
import UIKit
|
|
@testable import HanzoBot
|
|
|
|
@Suite struct SwiftUIRenderSmokeTests {
|
|
@MainActor private static func host(_ view: some View) -> UIWindow {
|
|
let window = UIWindow(frame: UIScreen.main.bounds)
|
|
window.rootViewController = UIHostingController(rootView: view)
|
|
window.makeKeyAndVisible()
|
|
window.rootViewController?.view.setNeedsLayout()
|
|
window.rootViewController?.view.layoutIfNeeded()
|
|
return window
|
|
}
|
|
|
|
@Test @MainActor func statusPillConnectingBuildsAViewHierarchy() {
|
|
let root = StatusPill(gateway: .connecting, voiceWakeEnabled: true, brighten: true) {}
|
|
_ = Self.host(root)
|
|
}
|
|
|
|
@Test @MainActor func statusPillDisconnectedBuildsAViewHierarchy() {
|
|
let root = StatusPill(gateway: .disconnected, voiceWakeEnabled: false) {}
|
|
_ = Self.host(root)
|
|
}
|
|
|
|
@Test @MainActor func settingsTabBuildsAViewHierarchy() {
|
|
let appModel = NodeAppModel()
|
|
let gatewayController = GatewayConnectionController(appModel: appModel, startDiscovery: false)
|
|
|
|
let root = SettingsTab()
|
|
.environment(appModel)
|
|
.environment(appModel.voiceWake)
|
|
.environment(gatewayController)
|
|
|
|
_ = Self.host(root)
|
|
}
|
|
|
|
@Test @MainActor func rootTabsBuildAViewHierarchy() {
|
|
let appModel = NodeAppModel()
|
|
let gatewayController = GatewayConnectionController(appModel: appModel, startDiscovery: false)
|
|
|
|
let root = RootTabs()
|
|
.environment(appModel)
|
|
.environment(appModel.voiceWake)
|
|
.environment(gatewayController)
|
|
|
|
_ = Self.host(root)
|
|
}
|
|
|
|
@Test @MainActor func voiceTabBuildsAViewHierarchy() {
|
|
let appModel = NodeAppModel()
|
|
|
|
let root = VoiceTab()
|
|
.environment(appModel)
|
|
.environment(appModel.voiceWake)
|
|
|
|
_ = Self.host(root)
|
|
}
|
|
|
|
@Test @MainActor func voiceWakeWordsViewBuildsAViewHierarchy() {
|
|
let appModel = NodeAppModel()
|
|
let root = NavigationStack { VoiceWakeWordsSettingsView() }
|
|
.environment(appModel)
|
|
_ = Self.host(root)
|
|
}
|
|
|
|
@Test @MainActor func chatSheetBuildsAViewHierarchy() {
|
|
let appModel = NodeAppModel()
|
|
let gateway = GatewayNodeSession()
|
|
let root = ChatSheet(gateway: gateway, sessionKey: "test")
|
|
.environment(appModel)
|
|
.environment(appModel.voiceWake)
|
|
_ = Self.host(root)
|
|
}
|
|
|
|
@Test @MainActor func voiceWakeToastBuildsAViewHierarchy() {
|
|
let root = VoiceWakeToast(command: "hanzo-bot: do something")
|
|
_ = Self.host(root)
|
|
}
|
|
}
|