Files
sub2api/backend/internal/service/kiro_websearch_test.go
T
2026-04-30 14:02:05 +08:00

29 lines
1.1 KiB
Go

//go:build unit
package service
import (
"encoding/json"
"testing"
"github.com/stretchr/testify/require"
"github.com/tidwall/gjson"
)
func TestBuildKiroWebSearchMCPRequest_UsesUnderscoredMetaKeys(t *testing.T) {
req := buildKiroWebSearchMCPRequest("golang concurrency")
body, err := json.Marshal(req)
require.NoError(t, err)
require.Equal(t, "tools/call", gjson.GetBytes(body, "method").String())
require.Equal(t, "web_search", gjson.GetBytes(body, "params.name").String())
require.Equal(t, "golang concurrency", gjson.GetBytes(body, "params.arguments.query").String())
require.True(t, gjson.GetBytes(body, "params.arguments._meta._isValid").Bool())
require.Equal(t, "query", gjson.GetBytes(body, "params.arguments._meta._activePath.0").String())
require.Equal(t, "query", gjson.GetBytes(body, "params.arguments._meta._completedPaths.0.0").String())
require.False(t, gjson.GetBytes(body, "params.arguments._meta.isValid").Exists())
require.False(t, gjson.GetBytes(body, "params.arguments._meta.activePath").Exists())
require.False(t, gjson.GetBytes(body, "params.arguments._meta.completedPaths").Exists())
}