| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- package handler
- import (
- "testing"
- "github.com/Wei-Shaw/sub2api/internal/service"
- "github.com/gin-gonic/gin"
- "github.com/stretchr/testify/require"
- )
- func TestSeedOpenAIForwardImageIntentHint(t *testing.T) {
- gin.SetMode(gin.TestMode)
- tests := []struct {
- name string
- channelMapped bool
- imageIntent bool
- wantHint bool
- }{
- {name: "seed true", imageIntent: true, wantHint: true},
- {name: "seed false", imageIntent: false, wantHint: true},
- {name: "mapped body stays unknown", channelMapped: true, imageIntent: true},
- }
- for _, tt := range tests {
- t.Run(tt.name, func(t *testing.T) {
- c := &gin.Context{}
- service.SetOpenAIClientTransport(c, service.OpenAIClientTransportHTTP)
- seedOpenAIForwardImageIntentHint(c, tt.channelMapped, tt.imageIntent)
- var hintValues []bool
- for _, value := range c.Keys {
- if hint, ok := value.(bool); ok {
- hintValues = append(hintValues, hint)
- }
- }
- if !tt.wantHint {
- require.Empty(t, hintValues)
- return
- }
- require.Equal(t, []bool{tt.imageIntent}, hintValues)
- })
- }
- }
|