test(ops): add tests for setOpsEndpointContext and safeUpstreamURL

This commit is contained in:
Ethan0x0000
2026-03-21 23:49:50 +08:00
parent db9021f9c1
commit 7cd3824863
2 changed files with 60 additions and 0 deletions

View File

@@ -274,3 +274,42 @@ func TestNormalizeOpsErrorType(t *testing.T) {
})
}
}
func TestSetOpsEndpointContext_SetsContextKeys(t *testing.T) {
gin.SetMode(gin.TestMode)
rec := httptest.NewRecorder()
c, _ := gin.CreateTestContext(rec)
c.Request = httptest.NewRequest(http.MethodPost, "/v1/messages", nil)
setOpsEndpointContext(c, "claude-3-5-sonnet-20241022", int16(2)) // stream
v, ok := c.Get(opsUpstreamModelKey)
require.True(t, ok)
require.Equal(t, "claude-3-5-sonnet-20241022", v.(string))
rt, ok := c.Get(opsRequestTypeKey)
require.True(t, ok)
require.Equal(t, int16(2), rt.(int16))
}
func TestSetOpsEndpointContext_EmptyModelNotStored(t *testing.T) {
gin.SetMode(gin.TestMode)
rec := httptest.NewRecorder()
c, _ := gin.CreateTestContext(rec)
c.Request = httptest.NewRequest(http.MethodPost, "/v1/messages", nil)
setOpsEndpointContext(c, "", int16(1))
_, ok := c.Get(opsUpstreamModelKey)
require.False(t, ok, "empty upstream model should not be stored")
rt, ok := c.Get(opsRequestTypeKey)
require.True(t, ok)
require.Equal(t, int16(1), rt.(int16))
}
func TestSetOpsEndpointContext_NilContext(t *testing.T) {
require.NotPanics(t, func() {
setOpsEndpointContext(nil, "model", int16(1))
})
}