package v1 import ( "testing" "github.com/gochat/gochat/internal/service" "github.com/stretchr/testify/require" ) func TestApplyCreateInboxForm_All_Cov29c(t *testing.T) { req := &service.CreateInboxRequest{} values := map[string][]string{ "name": {"TestInbox"}, "channel_type": {"web_widget"}, "enabled": {"true"}, "enable_auto_assignment": {"true"}, "greeting_enabled": {"true"}, "greeting_message": {"Hello"}, "channel[website_token]": {"token123"}, "csat_config[enabled]": {"true"}, } applyCreateInboxForm(req, values) require.Equal(t, "TestInbox", req.Name) require.Equal(t, "web_widget", req.ChannelType) require.True(t, req.Enabled) require.True(t, req.EnableAutoAssignment) } func TestApplyUpdateInboxForm_All_Cov29c(t *testing.T) { req := &service.UpdateInboxRequest{} values := map[string][]string{ "name": {"UpdatedInbox"}, "enabled": {"false"}, "greeting_enabled": {"false"}, "channel[foo]": {"bar"}, } applyUpdateInboxForm(req, values) require.Equal(t, "UpdatedInbox", req.Name) } func TestInboxFormValue_All_Cov29c(t *testing.T) { require.Equal(t, "first", inboxFormValue([]string{"first", "second"})) require.Equal(t, "", inboxFormValue([]string{})) require.Equal(t, "", inboxFormValue(nil)) } func TestInboxBool_All_Cov29c(t *testing.T) { require.True(t, inboxBool("true")) require.True(t, inboxBool("1")) require.False(t, inboxBool("false")) require.False(t, inboxBool("")) } func TestInboxBoolPtr_All_Cov29c(t *testing.T) { v := inboxBoolPtr("true") require.NotNil(t, v) require.True(t, *v) v2 := inboxBoolPtr("false") require.NotNil(t, v2) require.False(t, *v2) }