mirror of
https://github.com/hanzoai/bot.git
synced 2026-10-30 17:24:26 +00:00
Automated rebrand of all openclaw references to hanzo bot: - Package: openclaw -> @hanzo/bot - Binary: openclaw -> hanzo-bot - Config: ~/.openclaw -> ~/.hanzo/bot - Docker: ghcr.io/hanzoai/bot - Env vars: OPENCLAW_* -> BOT_* - Bundle IDs: ai.hanzo.bot.* - Product name: Hanzo Bot
31 lines
1.1 KiB
Swift
31 lines
1.1 KiB
Swift
import Testing
|
|
@testable import Hanzo BotKit
|
|
|
|
@Suite("DeviceAuthPayload")
|
|
struct DeviceAuthPayloadTests {
|
|
@Test("builds canonical v3 payload vector")
|
|
func buildsCanonicalV3PayloadVector() {
|
|
let payload = GatewayDeviceAuthPayload.buildV3(
|
|
deviceId: "dev-1",
|
|
clientId: "openclaw-macos",
|
|
clientMode: "ui",
|
|
role: "operator",
|
|
scopes: ["operator.admin", "operator.read"],
|
|
signedAtMs: 1_700_000_000_000,
|
|
token: "tok-123",
|
|
nonce: "nonce-abc",
|
|
platform: " IOS ",
|
|
deviceFamily: " iPhone ")
|
|
#expect(
|
|
payload
|
|
== "v3|dev-1|openclaw-macos|ui|operator|operator.admin,operator.read|1700000000000|tok-123|nonce-abc|ios|iphone")
|
|
}
|
|
|
|
@Test("normalizes metadata with ASCII-only lowercase")
|
|
func normalizesMetadataWithAsciiLowercase() {
|
|
#expect(GatewayDeviceAuthPayload.normalizeMetadataField(" İOS ") == "İos")
|
|
#expect(GatewayDeviceAuthPayload.normalizeMetadataField(" MAC ") == "mac")
|
|
#expect(GatewayDeviceAuthPayload.normalizeMetadataField(nil) == "")
|
|
}
|
|
}
|