| 1234567891011121314151617181920212223242526272829303132333435 |
- package helper
- import (
- "bytes"
- "io"
- "net/http"
- "net/http/httptest"
- "testing"
- "github.com/QuantumNous/new-api/common"
- relaycommon "github.com/QuantumNous/new-api/relay/common"
- "github.com/gin-gonic/gin"
- "github.com/stretchr/testify/require"
- )
- func TestResolveIncomingBillingExprRequestInput(t *testing.T) {
- gin.SetMode(gin.TestMode)
- recorder := httptest.NewRecorder()
- ctx, _ := gin.CreateTestContext(recorder)
- ctx.Request = httptest.NewRequest(http.MethodPost, "/v1/chat/completions", nil)
- ctx.Request.Header.Set("Content-Type", "application/json")
- body := []byte(`{"service_tier":"fast"}`)
- ctx.Request.Body = io.NopCloser(bytes.NewReader(body))
- ctx.Set(common.KeyRequestBody, body)
- info := &relaycommon.RelayInfo{
- RequestHeaders: map[string]string{"Content-Type": "application/json"},
- }
- input, err := ResolveIncomingBillingExprRequestInput(ctx, info)
- require.NoError(t, err)
- require.Equal(t, body, input.Body)
- require.Equal(t, "application/json", input.Headers["Content-Type"])
- }
|