Files
hakorune/tests/development/test_p2p_phase2_communication.hako

76 lines
2.8 KiB
Plaintext
Raw Permalink Normal View History

// 🌐 P2PBox Phase 2: P2P通信テスト
// 目標: 同プロセス内P2P通信・ハンドラ登録・メッセージ送受信確認
local console
console = new ConsoleBox()
console.log("🌐 Phase 2: P2P通信テスト開始")
// 2.1 同プロセス内P2P通信セットアップ
console.log("\n🔗 2.1 同プロセス内P2P通信セットアップ")
local node_a
local node_b
node_a = new P2PBox("alice", "inprocess")
node_b = new P2PBox("bob", "inprocess")
console.log("✅ ノード作成完了")
console.log("Alice ID: " + node_a.getNodeId())
console.log("Bob ID: " + node_b.getNodeId())
// 2.2 ハンドラ登録・メッセージ受信テスト
console.log("\n📥 2.2 メッセージハンドラ登録テスト")
// 受信カウンタ初期化
local receivedCount
receivedCount = 0
// Bobにメッセージハンドラ登録chatメッセージ用
console.log("Bob用chatハンドラ登録中...")
// 注意: ハンドラ登録のAPIを確認する必要あり
// 想定されるAPI: node_b.on("chat", handler_function)
// しかし、現在の実装でfunction型がサポートされているかチェックが必要
console.log("⚠️ ハンドラ登録API確認が必要")
console.log("予想API: node_b.on(\"chat\", handler_function)")
// 2.3 基本メッセージ送信テスト(ハンドラなし版)
console.log("\n📤 2.3 基本メッセージ送信テスト")
local msg
msg = new IntentBox("greeting", "Hello from Alice!")
console.log("送信メッセージ作成:")
console.log("Intent名: " + msg.getName())
console.log("Payload: " + msg.getPayload())
// メッセージ送信現在のsend APIを確認
console.log("\n📡 メッセージ送信実行...")
// 送信API確認が必要
console.log("⚠️ 送信API確認が必要")
console.log("予想API: node_a.send(\"bob\", msg)")
// 2.4 到達可能性テスト
console.log("\n🔍 2.4 ノード到達可能性テスト")
// 到達可能性チェックisReachableメソッドがあるかテスト
console.log("Alice → Bob 到達可能性チェック...")
console.log("⚠️ isReachableAPI確認が必要")
console.log("予想API: node_a.isReachable(\"bob\")")
// 2.5 Phase 2テスト結果
console.log("\n📊 Phase 2テスト結果統計")
console.log("✅ ノード作成: 成功")
console.log("✅ IntentBox作成: 成功")
console.log("⚠️ ハンドラ登録: API確認要")
console.log("⚠️ メッセージ送信: API確認要")
console.log("⚠️ 到達可能性チェック: API確認要")
console.log("\n🎯 Phase 2次のステップ:")
console.log("1. P2PBox.on() ハンドラ登録API確認")
console.log("2. P2PBox.send() メッセージ送信API確認")
console.log("3. P2PBox.isReachable() 到達可能性API確認")
console.log("4. Function型サポートの確認")
console.log("\n🚧 Phase 2: API確認段階完了")