mirror of
https://github.com/hanzoai/bot.git
synced 2026-11-01 07:38:30 +00:00
Complete rename of all OpenClaw/OPENCLAW/openclaw references to Hanzo Bot/BOT/bot naming convention: - Env vars: OPENCLAW_* → BOT_* (18 patterns) - Config: ~/.openclaw/ → ~/.bot/, openclaw.json → bot.json - Packages: @openclaw/* → @hanzo/bot-* - Domains: openclaw.ai → hanzo.bot - Mobile: OpenClawKit → BotKit, bundle IDs ai.openclaw → ai.hanzo.bot - mDNS: _openclaw-gw._tcp → _bot-gw._tcp - Docker: CMD hanzo-bot.mjs, BOT_PREFER_PNPM, BOT_DOCKER_APT_PACKAGES - CI: docker-release.yml adds :latest tag on main branch
39 lines
1.3 KiB
Swift
39 lines
1.3 KiB
Swift
import HanzoBotProtocol
|
|
import Foundation
|
|
import Testing
|
|
|
|
@testable import HanzoBot
|
|
|
|
@Suite struct AnyCodableEncodingTests {
|
|
@Test func encodesSwiftArrayAndDictionaryValues() throws {
|
|
let payload: [String: Any] = [
|
|
"tags": ["node", "ios"],
|
|
"meta": ["count": 2],
|
|
"null": NSNull(),
|
|
]
|
|
|
|
let data = try JSONEncoder().encode(HanzoBotProtocol.AnyCodable(payload))
|
|
let obj = try #require(JSONSerialization.jsonObject(with: data) as? [String: Any])
|
|
|
|
#expect(obj["tags"] as? [String] == ["node", "ios"])
|
|
#expect((obj["meta"] as? [String: Any])?["count"] as? Int == 2)
|
|
#expect(obj["null"] is NSNull)
|
|
}
|
|
|
|
@Test func protocolAnyCodableEncodesPrimitiveArrays() throws {
|
|
let payload: [String: Any] = [
|
|
"items": [1, "two", NSNull(), ["ok": true]],
|
|
]
|
|
|
|
let data = try JSONEncoder().encode(HanzoBotProtocol.AnyCodable(payload))
|
|
let obj = try #require(JSONSerialization.jsonObject(with: data) as? [String: Any])
|
|
|
|
let items = try #require(obj["items"] as? [Any])
|
|
#expect(items.count == 4)
|
|
#expect(items[0] as? Int == 1)
|
|
#expect(items[1] as? String == "two")
|
|
#expect(items[2] is NSNull)
|
|
#expect((items[3] as? [String: Any])?["ok"] as? Bool == true)
|
|
}
|
|
}
|