openclaw / apps /shared /OpenClawKit /Tests /OpenClawKitTests /BridgeInvokeMetadataTests.swift
SaylorTwift's picture
SaylorTwift HF Staff
Add files using upload-large-folder tool
b8370f5 verified
Raw History Blame Contribute Delete
847 Bytes
import Foundation
import Testing
@testable import OpenClawKit
struct BridgeInvokeMetadataTests {
@Test func `outer invoke metadata survives the native bridge`() throws {
let raw = #"{"id":"invoke","command":"system.worker.start","nodeId":"node","paramsJSON":"{\"sessionKey\":\"untrusted\"}","sessionKey":"agent:main:owner","timeoutMs":42000,"idempotencyKey":"attempt","type":"invoke"}"#
let request = try JSONDecoder().decode(BridgeInvokeRequest.self, from: Data(raw.utf8))
let encoded = try JSONEncoder().encode(request)
let actual = try #require(JSONSerialization.jsonObject(with: encoded) as? [String: Any])
#expect(actual["sessionKey"] as? String == "agent:main:owner")
#expect(actual["timeoutMs"] as? Int == 42000)
#expect(actual["idempotencyKey"] as? String == "attempt")
}
}