Files
gochat/backend/internal/handler/widget/coverage5_test.go
T

89 lines
2.6 KiB
Go

package widget
import (
"net/http"
"net/http/httptest"
"testing"
"github.com/gin-gonic/gin"
"github.com/gochat/gochat/internal/service"
"github.com/stretchr/testify/assert"
)
func TestWidgetEnabledFeatures_Custom_Cov5(t *testing.T) {
config := service.WebWidgetConfig{SelectedFeatureFlags: []string{"custom_flag"}}
result := widgetEnabledFeatures(config)
assert.Equal(t, []string{"custom_flag"}, result)
}
func TestWidgetEnabledFeatures_Default_Cov5(t *testing.T) {
config := service.WebWidgetConfig{}
result := widgetEnabledFeatures(config)
assert.Equal(t, []string{"attachments", "emoji_picker", "end_conversation"}, result)
}
func TestWidgetEnabledFeatures_Empty_Cov5(t *testing.T) {
config := service.WebWidgetConfig{SelectedFeatureFlags: []string{}}
result := widgetEnabledFeatures(config)
assert.Equal(t, []string{"attachments", "emoji_picker", "end_conversation"}, result)
}
func TestListCampaigns_NoToken_Cov5(t *testing.T) {
gin.SetMode(gin.TestMode)
w := httptest.NewRecorder()
c, _ := gin.CreateTestContext(w)
c.Request = httptest.NewRequest("GET", "/widget/campaigns", nil)
h := NewHandler(nil)
h.ListCampaigns(c)
assert.Equal(t, http.StatusBadRequest, w.Code)
}
func TestListCampaigns_WithToken_NilService_Cov5(t *testing.T) {
gin.SetMode(gin.TestMode)
w := httptest.NewRecorder()
c, _ := gin.CreateTestContext(w)
c.Request = httptest.NewRequest("GET", "/widget/campaigns?website_token=test", nil)
h := NewHandler(nil)
defer func() { _ = recover() }()
h.ListCampaigns(c)
}
func TestGetFileUploadStatus_NoToken_Cov5(t *testing.T) {
gin.SetMode(gin.TestMode)
w := httptest.NewRecorder()
c, _ := gin.CreateTestContext(w)
c.Request = httptest.NewRequest("GET", "/widget/file_upload/status", nil)
h := NewHandler(nil)
defer func() { _ = recover() }()
h.GetFileUploadStatus(c)
}
func TestGetThemeConfig_NoToken_Cov5(t *testing.T) {
gin.SetMode(gin.TestMode)
w := httptest.NewRecorder()
c, _ := gin.CreateTestContext(w)
c.Request = httptest.NewRequest("GET", "/widget/theme_config", nil)
h := NewHandler(nil)
defer func() { _ = recover() }()
h.GetThemeConfig(c)
}
func TestGetConversations_NoToken_Cov5(t *testing.T) {
gin.SetMode(gin.TestMode)
w := httptest.NewRecorder()
c, _ := gin.CreateTestContext(w)
c.Request = httptest.NewRequest("GET", "/widget/conversations", nil)
h := NewHandler(nil)
defer func() { _ = recover() }()
h.GetConversations(c)
}
func TestBindWidgetSendMessageRequest_Empty_Cov5(t *testing.T) {
gin.SetMode(gin.TestMode)
w := httptest.NewRecorder()
c, _ := gin.CreateTestContext(w)
c.Request = httptest.NewRequest("POST", "/widget/messages", nil)
defer func() { _ = recover() }()
bindWidgetSendMessageRequest(c)
}