Files

62 lines
1.7 KiB
Go

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)
}