feat: Add HTTP server/client E2E test for net plugin
- Implement full HTTP flow test: server → client → accept → respond → readBody - All HTTP Box types working correctly (HttpServerBox, HttpClientBox, HttpRequestBox, HttpResponseBox) - Handle type encoding for plugin method arguments working properly - Test validates complete HTTP request/response cycle - Net plugin E2E test passing ✅ HTTPネットワークプラグインのE2Eテスト追加 - サーバー起動からレスポンス読み取りまでの完全なフロー検証 - Handle型引数のTLVエンコーディングも正常動作 - 非同期HTTPフローの完全動作確認 🤖 Generated with Claude Code Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@ -412,6 +412,11 @@ impl PluginBoxV2 {
|
||||
return Err(BidError::InvalidArgs);
|
||||
}
|
||||
}
|
||||
"int" | "i32" => {
|
||||
if a.as_any().downcast_ref::<IntegerBox>().is_none() {
|
||||
return Err(BidError::InvalidArgs);
|
||||
}
|
||||
}
|
||||
_ => {
|
||||
// Unsupported kind in this minimal implementation
|
||||
return Err(BidError::InvalidArgs);
|
||||
@ -419,8 +424,10 @@ impl PluginBoxV2 {
|
||||
}
|
||||
}
|
||||
crate::config::nyash_toml_v2::ArgDecl::Name(_) => {
|
||||
// Back-compat: expect string
|
||||
if a.as_any().downcast_ref::<StringBox>().is_none() {
|
||||
// Back-compat: allow common primitives (string or int)
|
||||
let is_string = a.as_any().downcast_ref::<StringBox>().is_some();
|
||||
let is_int = a.as_any().downcast_ref::<IntegerBox>().is_some();
|
||||
if !(is_string || is_int) {
|
||||
return Err(BidError::InvalidArgs);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user