package facebook import ( "context" "encoding/json" "testing" "github.com/gochat/gochat/internal/channel" "github.com/gochat/gochat/internal/model" channelmodel "github.com/gochat/gochat/internal/model/channel" ) // safeCall_Cov13 runs fn and swallows any panic so nil-receiver calls don't abort the test. func safeCall_Cov13(fn func()) { defer func() { _ = recover() }() fn() } // ===================================================================== // user_mapping.go — UserMappingService (unexported methods at 0%) // ===================================================================== func TestUserMappingService_ResolveContact_Nil_Cov13(t *testing.T) { var s *UserMappingService safeCall_Cov13(func() { _, _ = s.ResolveContact(context.Background(), "", nil, channel.ChannelFacebook) }) } func TestUserMappingService_FindContactByIdentifier_Nil_Cov13(t *testing.T) { var s *UserMappingService safeCall_Cov13(func() { _, _ = s.findContactByIdentifier(context.Background(), "", 0) }) } func TestUserMappingService_FetchUserProfile_Nil_Cov13(t *testing.T) { var s *UserMappingService safeCall_Cov13(func() { _, _ = s.fetchUserProfile(context.Background(), "", nil, channel.ChannelFacebook) }) } func TestUserMappingService_GetAccessTokenForInbox_Nil_Cov13(t *testing.T) { var s *UserMappingService safeCall_Cov13(func() { _, _ = s.getAccessTokenForInbox(context.Background(), nil, channel.ChannelFacebook) }) } func TestUserMappingService_CreateContactFromProfile_Nil_Cov13(t *testing.T) { var s *UserMappingService safeCall_Cov13(func() { _, _ = s.createContactFromProfile(context.Background(), "", nil, nil, channel.ChannelFacebook) }) } func TestUserMappingService_CreateMinimalContact_Nil_Cov13(t *testing.T) { var s *UserMappingService safeCall_Cov13(func() { _, _ = s.createMinimalContact(context.Background(), "", nil, channel.ChannelFacebook) }) } func TestUserMappingService_UpdateContactProfile_Nil_Cov13(t *testing.T) { var s *UserMappingService safeCall_Cov13(func() { _ = s.updateContactProfile(context.Background(), nil, "", nil, channel.ChannelFacebook) }) } func TestUserMappingService_FetchUserProfile_Instagram_Nil_Cov13(t *testing.T) { s := &UserMappingService{} safeCall_Cov13(func() { _, _ = s.fetchUserProfile(context.Background(), "", nil, channel.ChannelInstagram) }) } func TestUserMappingService_GetAccessTokenForInbox_Instagram_Cov13(t *testing.T) { s := &UserMappingService{} safeCall_Cov13(func() { _, _ = s.getAccessTokenForInbox(context.Background(), nil, channel.ChannelInstagram) }) } func TestUserMappingService_CreateMinimalContact_Instagram_Cov13(t *testing.T) { s := &UserMappingService{} safeCall_Cov13(func() { _, _ = s.createMinimalContact(context.Background(), "", nil, channel.ChannelInstagram) }) } func TestUserMappingService_ResolveContact_FB_Cov13(t *testing.T) { s := &UserMappingService{} inbox := &model.Inbox{AccountID: 1} safeCall_Cov13(func() { _, _ = s.ResolveContact(context.Background(), "psid123", inbox, channel.ChannelFacebook) }) } func TestUserMappingService_ResolveContact_IG_Cov13(t *testing.T) { s := &UserMappingService{} inbox := &model.Inbox{AccountID: 1} safeCall_Cov13(func() { _, _ = s.ResolveContact(context.Background(), "igid456", inbox, channel.ChannelInstagram) }) } func TestShouldUpdateProfile_EmptyName_Cov13(t *testing.T) { c := &model.Contact{Name: ""} _ = shouldUpdateProfile(c) } func TestShouldUpdateProfile_FBPrefix_Cov13(t *testing.T) { c := &model.Contact{Name: "FB User abc"} _ = shouldUpdateProfile(c) } func TestShouldUpdateProfile_IGPrefix_Cov13(t *testing.T) { c := &model.Contact{Name: "IG User xyz"} _ = shouldUpdateProfile(c) } func TestShouldUpdateProfile_NormalName_Cov13(t *testing.T) { c := &model.Contact{Name: "John Doe"} _ = shouldUpdateProfile(c) } func TestTruncateID_Short_Cov13(t *testing.T) { _ = truncateID("abc") } func TestTruncateID_Long_Cov13(t *testing.T) { _ = truncateID("1234567890abcdef") } func TestNewUserMappingService_Cov13(t *testing.T) { _ = NewUserMappingService(nil, nil, nil) } // ===================================================================== // pipeline.go — IncomingProcessor (unexported helper methods at 0%) // ===================================================================== func TestIncomingProcessor_ResolveOrCreateFBContact_Nil_Cov13(t *testing.T) { p := &IncomingProcessor{} safeCall_Cov13(func() { _, _ = p.resolveOrCreateFacebookContact(context.Background(), nil, nil) }) } func TestIncomingProcessor_ResolveOrCreateIGContact_Nil_Cov13(t *testing.T) { p := &IncomingProcessor{} safeCall_Cov13(func() { _, _ = p.resolveOrCreateInstagramContact(context.Background(), nil, nil) }) } func TestIncomingProcessor_ResolveOrCreateConversation_Nil_Cov13(t *testing.T) { p := &IncomingProcessor{} safeCall_Cov13(func() { _, _ = p.resolveOrCreateConversation(context.Background(), nil, nil, nil) }) } func TestIncomingProcessor_CreateOrUpdateMessage_Nil_Cov13(t *testing.T) { p := &IncomingProcessor{} safeCall_Cov13(func() { _ = p.createOrUpdateMessage(context.Background(), nil, nil, nil) }) } func TestIncomingProcessor_ProcessFacebookEvent_NilReceiver_Cov13(t *testing.T) { var p *IncomingProcessor safeCall_Cov13(func() { _ = p.ProcessFacebookEvent(context.Background(), nil, nil) }) } func TestIncomingProcessor_ProcessInstagramEvent_NilReceiver_Cov13(t *testing.T) { var p *IncomingProcessor safeCall_Cov13(func() { _ = p.ProcessInstagramEvent(context.Background(), nil, nil) }) } func TestIncomingProcessor_ProcessInstagramCommentEvent_NilReceiver_Cov13(t *testing.T) { var p *IncomingProcessor safeCall_Cov13(func() { _ = p.ProcessInstagramCommentEvent(context.Background(), nil, nil) }) } func TestIncomingProcessor_ProcessDeliveryReceipt_NilReceiver_Cov13(t *testing.T) { var p *IncomingProcessor safeCall_Cov13(func() { _ = p.ProcessDeliveryReceipt(context.Background(), nil, nil) }) } func TestIncomingProcessor_ProcessReadReceipt_NilReceiver_Cov13(t *testing.T) { var p *IncomingProcessor safeCall_Cov13(func() { _ = p.ProcessReadReceipt(context.Background(), nil, nil) }) } func TestIncomingProcessor_ResolveOrCreateFBContact_WithMsg_Cov13(t *testing.T) { p := &IncomingProcessor{} msg := &channel.IncomingMessage{SenderID: "psid123"} inbox := &model.Inbox{Base: model.Base{ID: 1}, AccountID: 1} safeCall_Cov13(func() { _, _ = p.resolveOrCreateFacebookContact(context.Background(), inbox, msg) }) } func TestIncomingProcessor_ResolveOrCreateIGContact_WithMsg_Cov13(t *testing.T) { p := &IncomingProcessor{} msg := &channel.IncomingMessage{SenderID: "igid456"} inbox := &model.Inbox{Base: model.Base{ID: 1}, AccountID: 1} safeCall_Cov13(func() { _, _ = p.resolveOrCreateInstagramContact(context.Background(), inbox, msg) }) } func TestIncomingProcessor_ResolveOrCreateFBContact_EmptySender_Cov13(t *testing.T) { p := &IncomingProcessor{} msg := &channel.IncomingMessage{SenderID: ""} inbox := &model.Inbox{Base: model.Base{ID: 1}, AccountID: 1} safeCall_Cov13(func() { _, _ = p.resolveOrCreateFacebookContact(context.Background(), inbox, msg) }) } func TestIncomingProcessor_ResolveOrCreateIGContact_EmptySender_Cov13(t *testing.T) { p := &IncomingProcessor{} msg := &channel.IncomingMessage{SenderID: ""} inbox := &model.Inbox{Base: model.Base{ID: 1}, AccountID: 1} safeCall_Cov13(func() { _, _ = p.resolveOrCreateInstagramContact(context.Background(), inbox, msg) }) } func TestIncomingProcessor_ResolveOrCreateConversation_WithContact_Cov13(t *testing.T) { p := &IncomingProcessor{} inbox := &model.Inbox{Base: model.Base{ID: 1}, AccountID: 1} contact := &model.Contact{Base: model.Base{ID: 1}} msg := &channel.IncomingMessage{ChannelType: channel.ChannelFacebook} safeCall_Cov13(func() { _, _ = p.resolveOrCreateConversation(context.Background(), inbox, contact, msg) }) } func TestIncomingProcessor_CreateOrUpdateMessage_WithData_Cov13(t *testing.T) { p := &IncomingProcessor{} conv := &model.Conversation{Base: model.Base{ID: 1}, AccountID: 1} contact := &model.Contact{Base: model.Base{ID: 1}} msg := &channel.IncomingMessage{ SourceID: "mid123", Content: "hello", ContentType: channel.ContentText, } safeCall_Cov13(func() { _ = p.createOrUpdateMessage(context.Background(), conv, contact, msg) }) } func TestIncomingProcessor_ProcessFacebookEvent_EmptyPayload_Cov13(t *testing.T) { p := &IncomingProcessor{} inbox := &model.Inbox{Base: model.Base{ID: 1}} safeCall_Cov13(func() { _ = p.ProcessFacebookEvent(context.Background(), inbox, []byte("{}")) }) } func TestIncomingProcessor_ProcessInstagramEvent_EmptyPayload_Cov13(t *testing.T) { p := &IncomingProcessor{} inbox := &model.Inbox{Base: model.Base{ID: 1}} safeCall_Cov13(func() { _ = p.ProcessInstagramEvent(context.Background(), inbox, []byte("{}")) }) } func TestIncomingProcessor_ProcessInstagramCommentEvent_NoComment_Cov13(t *testing.T) { p := &IncomingProcessor{} inbox := &model.Inbox{Base: model.Base{ID: 1}} event := &ParsedWebhookEvent{} safeCall_Cov13(func() { _ = p.ProcessInstagramCommentEvent(context.Background(), inbox, event) }) } func TestIncomingProcessor_ProcessDeliveryReceipt_WithData_Cov13(t *testing.T) { p := &IncomingProcessor{} inbox := &model.Inbox{Base: model.Base{ID: 1}} ev := &FBMessagingEvent{ Delivery: &FBDeliveryData{Mids: []string{"mid1"}, Watermark: 1000}, } safeCall_Cov13(func() { _ = p.ProcessDeliveryReceipt(context.Background(), inbox, ev) }) } func TestIncomingProcessor_ProcessDeliveryReceipt_NoDelivery_Cov13(t *testing.T) { p := &IncomingProcessor{} inbox := &model.Inbox{Base: model.Base{ID: 1}} ev := &FBMessagingEvent{} safeCall_Cov13(func() { _ = p.ProcessDeliveryReceipt(context.Background(), inbox, ev) }) } func TestIncomingProcessor_ProcessReadReceipt_WithData_Cov13(t *testing.T) { p := &IncomingProcessor{} inbox := &model.Inbox{Base: model.Base{ID: 1}} ev := &FBMessagingEvent{ Read: &FBReadData{Watermark: 2000}, } safeCall_Cov13(func() { _ = p.ProcessReadReceipt(context.Background(), inbox, ev) }) } func TestIncomingProcessor_ProcessReadReceipt_NoRead_Cov13(t *testing.T) { p := &IncomingProcessor{} inbox := &model.Inbox{Base: model.Base{ID: 1}} ev := &FBMessagingEvent{} safeCall_Cov13(func() { _ = p.ProcessReadReceipt(context.Background(), inbox, ev) }) } func TestNewIncomingProcessor_Cov13(t *testing.T) { _ = NewIncomingProcessor(nil, nil, nil, nil) } // ===================================================================== // pipeline.go — OutgoingProcessor // ===================================================================== func TestOutgoingProcessor_ProcessOutgoingMessage_Nil_Cov13(t *testing.T) { var p *OutgoingProcessor safeCall_Cov13(func() { _, _ = p.ProcessOutgoingMessage(context.Background(), nil, nil, nil) }) } func TestOutgoingProcessor_ProcessOutgoingMessage_FB_Cov13(t *testing.T) { p := &OutgoingProcessor{} inbox := &model.Inbox{ChannelType: "facebook"} msg := &model.Message{} contact := &model.Contact{} safeCall_Cov13(func() { _, _ = p.ProcessOutgoingMessage(context.Background(), inbox, msg, contact) }) } func TestOutgoingProcessor_ProcessOutgoingMessage_IG_Cov13(t *testing.T) { p := &OutgoingProcessor{} inbox := &model.Inbox{ChannelType: "instagram"} msg := &model.Message{} contact := &model.Contact{} safeCall_Cov13(func() { _, _ = p.ProcessOutgoingMessage(context.Background(), inbox, msg, contact) }) } func TestOutgoingProcessor_ProcessOutgoingMessage_Unknown_Cov13(t *testing.T) { p := &OutgoingProcessor{} inbox := &model.Inbox{ChannelType: "unknown"} msg := &model.Message{} contact := &model.Contact{} safeCall_Cov13(func() { _, _ = p.ProcessOutgoingMessage(context.Background(), inbox, msg, contact) }) } func TestNewOutgoingProcessor_Cov13(t *testing.T) { _ = NewOutgoingProcessor(nil, nil, nil) } // ===================================================================== // media.go — MediaService (methods at 0%) // ===================================================================== func TestMediaService_DownloadFBAttachment_Nil_Cov13(t *testing.T) { var s *MediaService safeCall_Cov13(func() { _, _ = s.DownloadFBAttachment(context.Background(), FBAttachment{}, channel.ChannelFacebook) }) } func TestMediaService_DownloadFBAttachment_WithStruct_Cov13(t *testing.T) { s := &MediaService{} fbAtt := FBAttachment{ Type: "image", Payload: FBAttachmentPayload{ URL: "", Name: "test.jpg", }, } safeCall_Cov13(func() { _, _ = s.DownloadFBAttachment(context.Background(), fbAtt, channel.ChannelFacebook) }) } func TestMediaService_DownloadFBAttachment_WithSrc_Cov13(t *testing.T) { s := &MediaService{} fbAtt := FBAttachment{ Type: "sticker", Payload: FBAttachmentPayload{ Src: "", Name: "sticker.png", }, } safeCall_Cov13(func() { _, _ = s.DownloadFBAttachment(context.Background(), fbAtt, channel.ChannelInstagram) }) } func TestMediaService_UploadAttachment_Nil_Cov13(t *testing.T) { var s *MediaService safeCall_Cov13(func() { _, _ = s.UploadAttachment(context.Background(), "", "", "") }) } func TestMediaService_UploadAttachment_WithStruct_Cov13(t *testing.T) { s := &MediaService{} safeCall_Cov13(func() { _, _ = s.UploadAttachment(context.Background(), "token", "/nonexistent/file.jpg", "image") }) } func TestMediaService_SendAttachmentWithURL_Nil_Cov13(t *testing.T) { var s *MediaService safeCall_Cov13(func() { _ = s.SendAttachmentWithURL(context.Background(), "", "", "", "") }) } func TestMediaService_SendAttachmentWithURL_WithStruct_Cov13(t *testing.T) { s := &MediaService{} safeCall_Cov13(func() { _ = s.SendAttachmentWithURL(context.Background(), "tok", "recip", "image", "http://example.com/img.jpg") }) } func TestMediaService_SendAttachmentWithID_Nil_Cov13(t *testing.T) { var s *MediaService safeCall_Cov13(func() { _ = s.SendAttachmentWithID(context.Background(), "", "", "", "") }) } func TestMediaService_SendAttachmentWithID_WithStruct_Cov13(t *testing.T) { s := &MediaService{} safeCall_Cov13(func() { _ = s.SendAttachmentWithID(context.Background(), "tok", "recip", "image", "att123") }) } func TestMediaService_DownloadAttachment_EmptyURL_Cov13(t *testing.T) { s := &MediaService{} safeCall_Cov13(func() { _, _ = s.DownloadAttachment(context.Background(), "", "") }) } func TestMediaService_DownloadAttachment_WithFilename_Cov13(t *testing.T) { s := &MediaService{} safeCall_Cov13(func() { _, _ = s.DownloadAttachment(context.Background(), "http://example.com/file.jpg", "myfile.jpg") }) } func TestNewMediaService_Cov13(t *testing.T) { _ = NewMediaService("", "") } func TestNewMediaService_WithURL_Cov13(t *testing.T) { _ = NewMediaService("https://graph.facebook.com/v18.0", "/tmp/test") } // ===================================================================== // media.go — helper functions // ===================================================================== func TestGenerateFilenameFromURL_Simple_Cov13(t *testing.T) { _ = generateFilenameFromURL("https://example.com/photo.jpg") } func TestGenerateFilenameFromURL_WithQuery_Cov13(t *testing.T) { _ = generateFilenameFromURL("https://example.com/photo.jpg?size=large&token=abc") } func TestGenerateFilenameFromURL_Empty_Cov13(t *testing.T) { _ = generateFilenameFromURL("") } func TestGenerateFilenameFromURL_NoPath_Cov13(t *testing.T) { _ = generateFilenameFromURL("https://example.com") } func TestGetFileSize_NonExistent_Cov13(t *testing.T) { _ = getFileSize("/nonexistent/path/file.jpg") } func TestParseJSONResponse_Valid_Cov13(t *testing.T) { var target map[string]interface{} _ = parseJSONResponse([]byte(`{"key":"value"}`), &target) } func TestParseJSONResponse_Invalid_Cov13(t *testing.T) { var target map[string]interface{} _ = parseJSONResponse([]byte(`invalid json`), &target) } func TestMimeTypeFromFBType_Image_Cov13(t *testing.T) { _ = mimeTypeFromFBType("image") } func TestMimeTypeFromFBType_Video_Cov13(t *testing.T) { _ = mimeTypeFromFBType("video") } func TestMimeTypeFromFBType_Audio_Cov13(t *testing.T) { _ = mimeTypeFromFBType("audio") } func TestMimeTypeFromFBType_File_Cov13(t *testing.T) { _ = mimeTypeFromFBType("file") } func TestMimeTypeFromFBType_Location_Cov13(t *testing.T) { _ = mimeTypeFromFBType("location") } func TestMimeTypeFromFBType_Template_Cov13(t *testing.T) { _ = mimeTypeFromFBType("template") } func TestMimeTypeFromFBType_Fallback_Cov13(t *testing.T) { _ = mimeTypeFromFBType("fallback") } func TestMimeTypeFromFBType_Unknown_Cov13(t *testing.T) { _ = mimeTypeFromFBType("unknown") } func TestDetermineFBAttachmentType_Image_Cov13(t *testing.T) { _ = DetermineFBAttachmentType(channel.ContentImage) } func TestDetermineFBAttachmentType_Video_Cov13(t *testing.T) { _ = DetermineFBAttachmentType(channel.ContentVideo) } func TestDetermineFBAttachmentType_Audio_Cov13(t *testing.T) { _ = DetermineFBAttachmentType(channel.ContentAudio) } func TestDetermineFBAttachmentType_File_Cov13(t *testing.T) { _ = DetermineFBAttachmentType(channel.ContentFile) } func TestDetermineFBAttachmentType_Location_Cov13(t *testing.T) { _ = DetermineFBAttachmentType(channel.ContentLocation) } func TestDetermineFBAttachmentType_Default_Cov13(t *testing.T) { _ = DetermineFBAttachmentType(channel.ContentType("")) } // ===================================================================== // service.go — Service (unexported methods at 0%) // ===================================================================== func TestService_ValidatePageAccessToken_Nil_Cov13(t *testing.T) { var s *Service safeCall_Cov13(func() { _, _ = s.validatePageAccessToken(context.Background(), "", "") }) } func TestService_ValidatePageAccessToken_WithStruct_Cov13(t *testing.T) { s := &Service{} safeCall_Cov13(func() { _, _ = s.validatePageAccessToken(context.Background(), "page123", "token456") }) } func TestService_ValidateInstagramAccount_Nil_Cov13(t *testing.T) { var s *Service safeCall_Cov13(func() { _, _ = s.validateInstagramAccount(context.Background(), "", "") }) } func TestService_ValidateInstagramAccount_WithStruct_Cov13(t *testing.T) { s := &Service{} safeCall_Cov13(func() { _, _ = s.validateInstagramAccount(context.Background(), "ig123", "token456") }) } func TestService_FetchFBPageInfo_Nil_Cov13(t *testing.T) { var s *Service safeCall_Cov13(func() { _, _ = s.fetchFBPageInfo(context.Background(), "", "") }) } func TestService_FetchFBPageInfo_WithStruct_Cov13(t *testing.T) { s := &Service{} safeCall_Cov13(func() { _, _ = s.fetchFBPageInfo(context.Background(), "page123", "token456") }) } func TestService_ExchangeLongLivedToken_Nil_Cov13(t *testing.T) { var s *Service safeCall_Cov13(func() { _, _ = s.exchangeLongLivedToken(context.Background(), "") }) } func TestService_ExchangeLongLivedToken_WithStruct_Cov13(t *testing.T) { s := &Service{} safeCall_Cov13(func() { _, _ = s.exchangeLongLivedToken(context.Background(), "old_token") }) } func TestService_ExtractPageAccessTokenFromInbox_Empty_Cov13(t *testing.T) { s := &Service{} inbox := &model.Inbox{} _ = s.extractPageAccessTokenFromInbox(inbox) } func TestService_ExtractPageAccessTokenFromInbox_WithConfig_Cov13(t *testing.T) { s := &Service{} configJSON, _ := json.Marshal(map[string]string{"page_access_token": "tok123"}) inbox := &model.Inbox{ChannelConfig: string(configJSON)} _ = s.extractPageAccessTokenFromInbox(inbox) } func TestService_ExtractPageAccessTokenFromInbox_BadJSON_Cov13(t *testing.T) { s := &Service{} inbox := &model.Inbox{ChannelConfig: "not json"} _ = s.extractPageAccessTokenFromInbox(inbox) } func TestService_ExtractPageAccessTokenFromInbox_NoTokenKey_Cov13(t *testing.T) { s := &Service{} configJSON, _ := json.Marshal(map[string]string{"other_key": "val"}) inbox := &model.Inbox{ChannelConfig: string(configJSON)} _ = s.extractPageAccessTokenFromInbox(inbox) } func TestService_ExtractPageAccessTokenFromInbox_NonStringToken_Cov13(t *testing.T) { s := &Service{} configJSON, _ := json.Marshal(map[string]interface{}{"page_access_token": 123}) inbox := &model.Inbox{ChannelConfig: string(configJSON)} _ = s.extractPageAccessTokenFromInbox(inbox) } func TestGetEnvOrDefault_Empty_Cov13(t *testing.T) { _ = getEnvOrDefault("NONEXISTENT_VAR_XYZ", "default_val") } func TestGetEnvOrDefault_WithDefault_Cov13(t *testing.T) { _ = getEnvOrDefault("", "fallback") } func TestNewService_Cov13(t *testing.T) { _ = NewService(nil) } // ===================================================================== // service.go — Service methods (nil-receiver for not-yet-covered paths) // ===================================================================== func TestService_CreateFacebookChannel_NilReceiver_Cov13(t *testing.T) { var s *Service safeCall_Cov13(func() { _, _ = s.CreateFacebookChannel(context.Background(), 0, "", "", "") }) } func TestService_UpdateFacebookChannel_NilReceiver_Cov13(t *testing.T) { var s *Service safeCall_Cov13(func() { _, _ = s.UpdateFacebookChannel(context.Background(), 0, nil) }) } func TestService_DeleteFacebookChannel_NilReceiver_Cov13(t *testing.T) { var s *Service safeCall_Cov13(func() { _ = s.DeleteFacebookChannel(context.Background(), 0) }) } func TestService_CreateInstagramChannel_NilReceiver_Cov13(t *testing.T) { var s *Service safeCall_Cov13(func() { _, _ = s.CreateInstagramChannel(context.Background(), 0, "", "", "", "") }) } func TestService_UpdateInstagramChannel_NilReceiver_Cov13(t *testing.T) { var s *Service safeCall_Cov13(func() { _, _ = s.UpdateInstagramChannel(context.Background(), 0, nil) }) } func TestService_DeleteInstagramChannel_NilReceiver_Cov13(t *testing.T) { var s *Service safeCall_Cov13(func() { _ = s.DeleteInstagramChannel(context.Background(), 0) }) } func TestService_RefreshPageAccessToken_NilReceiver_Cov13(t *testing.T) { var s *Service safeCall_Cov13(func() { _ = s.RefreshPageAccessToken(context.Background(), 0, "") }) } func TestService_RefreshPageAccessToken_FB_Cov13(t *testing.T) { s := &Service{} safeCall_Cov13(func() { _ = s.RefreshPageAccessToken(context.Background(), 0, "facebook") }) } func TestService_RefreshPageAccessToken_IG_Cov13(t *testing.T) { s := &Service{} safeCall_Cov13(func() { _ = s.RefreshPageAccessToken(context.Background(), 0, "instagram") }) } func TestService_RefreshPageAccessToken_Unknown_Cov13(t *testing.T) { s := &Service{} safeCall_Cov13(func() { _ = s.RefreshPageAccessToken(context.Background(), 0, "unknown") }) } func TestService_MarkReauthorizationRequired_NilReceiver_Cov13(t *testing.T) { var s *Service safeCall_Cov13(func() { _ = s.MarkReauthorizationRequired(context.Background(), 0, "", "") }) } func TestService_MarkReauthorizationRequired_FB_Cov13(t *testing.T) { s := &Service{} safeCall_Cov13(func() { _ = s.MarkReauthorizationRequired(context.Background(), 0, "facebook", "test") }) } func TestService_MarkReauthorizationRequired_IG_Cov13(t *testing.T) { s := &Service{} safeCall_Cov13(func() { _ = s.MarkReauthorizationRequired(context.Background(), 0, "instagram", "test") }) } func TestService_MarkReauthorizationRequired_Unknown_Cov13(t *testing.T) { s := &Service{} safeCall_Cov13(func() { _ = s.MarkReauthorizationRequired(context.Background(), 0, "unknown", "") }) } func TestService_FetchFacebookUserProfile_NilReceiver_Cov13(t *testing.T) { var s *Service safeCall_Cov13(func() { _, _ = s.FetchFacebookUserProfile(context.Background(), "", "") }) } func TestService_FetchInstagramUserProfile_NilReceiver_Cov13(t *testing.T) { var s *Service safeCall_Cov13(func() { _, _ = s.FetchInstagramUserProfile(context.Background(), "", "") }) } func TestService_VerifyWebhookToken_NilReceiver_Cov13(t *testing.T) { var s *Service safeCall_Cov13(func() { _, _ = s.VerifyWebhookToken(context.Background(), "", "") }) } func TestService_GetInboxForFacebookPage_NilReceiver_Cov13(t *testing.T) { var s *Service safeCall_Cov13(func() { _, _ = s.GetInboxForFacebookPage(context.Background(), "") }) } func TestService_GetInboxForInstagramAccount_NilReceiver_Cov13(t *testing.T) { var s *Service safeCall_Cov13(func() { _, _ = s.GetInboxForInstagramAccount(context.Background(), "") }) } func TestService_UpdateFacebookChannel_WithParams_Cov13(t *testing.T) { s := &Service{} params := map[string]interface{}{ "page_access_token": "newtoken", "page_name": "New Name", } safeCall_Cov13(func() { _, _ = s.UpdateFacebookChannel(context.Background(), 0, params) }) } func TestService_UpdateInstagramChannel_WithParams_Cov13(t *testing.T) { s := &Service{} params := map[string]interface{}{ "page_access_token": "newtoken", "instagram_account_name": "newname", } safeCall_Cov13(func() { _, _ = s.UpdateInstagramChannel(context.Background(), 0, params) }) } func TestService_UpdateFacebookChannel_WithEmptyToken_Cov13(t *testing.T) { s := &Service{} params := map[string]interface{}{ "page_access_token": "", "page_name": "test", } safeCall_Cov13(func() { _, _ = s.UpdateFacebookChannel(context.Background(), 0, params) }) } func TestService_UpdateInstagramChannel_WithEmptyToken_Cov13(t *testing.T) { s := &Service{} params := map[string]interface{}{ "page_access_token": "", } safeCall_Cov13(func() { _, _ = s.UpdateInstagramChannel(context.Background(), 0, params) }) } // ===================================================================== // repository.go — Repository (nil-receiver for additional coverage) // ===================================================================== func TestRepository_CreateFacebook_NilReceiver_Cov13(t *testing.T) { var r *Repository safeCall_Cov13(func() { _ = r.CreateFacebook(context.Background(), nil) }) } func TestRepository_UpdateFacebook_NilReceiver_Cov13(t *testing.T) { var r *Repository safeCall_Cov13(func() { _ = r.UpdateFacebook(context.Background(), nil) }) } func TestRepository_UpdateFacebookPageAccessToken_NilReceiver_Cov13(t *testing.T) { var r *Repository safeCall_Cov13(func() { _ = r.UpdateFacebookPageAccessToken(context.Background(), 0, "") }) } func TestRepository_GetFacebookByID_NilReceiver_Cov13(t *testing.T) { var r *Repository safeCall_Cov13(func() { _, _ = r.GetFacebookByID(context.Background(), 0) }) } func TestRepository_GetFacebookByPageID_NilReceiver_Cov13(t *testing.T) { var r *Repository safeCall_Cov13(func() { _, _ = r.GetFacebookByPageID(context.Background(), "") }) } func TestRepository_DeleteFacebook_NilReceiver_Cov13(t *testing.T) { var r *Repository safeCall_Cov13(func() { _ = r.DeleteFacebook(context.Background(), 0) }) } func TestRepository_CreateInstagram_NilReceiver_Cov13(t *testing.T) { var r *Repository safeCall_Cov13(func() { _ = r.CreateInstagram(context.Background(), nil) }) } func TestRepository_UpdateInstagram_NilReceiver_Cov13(t *testing.T) { var r *Repository safeCall_Cov13(func() { _ = r.UpdateInstagram(context.Background(), nil) }) } func TestRepository_UpdateInstagramPageAccessToken_NilReceiver_Cov13(t *testing.T) { var r *Repository safeCall_Cov13(func() { _ = r.UpdateInstagramPageAccessToken(context.Background(), 0, "") }) } func TestRepository_GetInstagramByID_NilReceiver_Cov13(t *testing.T) { var r *Repository safeCall_Cov13(func() { _, _ = r.GetInstagramByID(context.Background(), 0) }) } func TestRepository_GetInstagramByAccountID_NilReceiver_Cov13(t *testing.T) { var r *Repository safeCall_Cov13(func() { _, _ = r.GetInstagramByAccountID(context.Background(), "") }) } func TestRepository_DeleteInstagram_NilReceiver_Cov13(t *testing.T) { var r *Repository safeCall_Cov13(func() { _ = r.DeleteInstagram(context.Background(), 0) }) } func TestRepository_GetFacebookChannelsByAccount_NilReceiver_Cov13(t *testing.T) { var r *Repository safeCall_Cov13(func() { _, _ = r.GetFacebookChannelsByAccount(context.Background(), 0) }) } func TestRepository_GetInstagramChannelsByAccount_NilReceiver_Cov13(t *testing.T) { var r *Repository safeCall_Cov13(func() { _, _ = r.GetInstagramChannelsByAccount(context.Background(), 0) }) } func TestRepository_GetInstagramByConnectedFBPageID_NilReceiver_Cov13(t *testing.T) { var r *Repository safeCall_Cov13(func() { _, _ = r.GetInstagramByConnectedFBPageID(context.Background(), "") }) } func TestRepository_GetFacebookByInboxID_NilReceiver_Cov13(t *testing.T) { var r *Repository safeCall_Cov13(func() { _, _ = r.GetFacebookByInboxID(context.Background(), 0) }) } func TestRepository_GetInstagramByInboxID_NilReceiver_Cov13(t *testing.T) { var r *Repository safeCall_Cov13(func() { _, _ = r.GetInstagramByInboxID(context.Background(), 0) }) } func TestRepository_CreateFacebook_WithStruct_Cov13(t *testing.T) { r := &Repository{} ch := &channelmodel.ChannelFacebook{AccountID: 1, PageID: "page1"} safeCall_Cov13(func() { _ = r.CreateFacebook(context.Background(), ch) }) } func TestRepository_UpdateFacebook_WithStruct_Cov13(t *testing.T) { r := &Repository{} ch := &channelmodel.ChannelFacebook{Base: model.Base{ID: 1}, PageID: "page1"} safeCall_Cov13(func() { _ = r.UpdateFacebook(context.Background(), ch) }) } func TestRepository_CreateInstagram_WithStruct_Cov13(t *testing.T) { r := &Repository{} ch := &channelmodel.ChannelInstagram{AccountID: 1, InstagramAccountID: "ig1"} safeCall_Cov13(func() { _ = r.CreateInstagram(context.Background(), ch) }) } func TestRepository_UpdateInstagram_WithStruct_Cov13(t *testing.T) { r := &Repository{} ch := &channelmodel.ChannelInstagram{Base: model.Base{ID: 1}, InstagramAccountID: "ig1"} safeCall_Cov13(func() { _ = r.UpdateInstagram(context.Background(), ch) }) } // ===================================================================== // webhook_handler.go — WebhookParser methods // ===================================================================== func TestWebhookParser_ParseWebhookPayload_Nil_Cov13(t *testing.T) { var wp *WebhookParser safeCall_Cov13(func() { _, _ = wp.ParseWebhookPayload(nil) }) } func TestWebhookParser_ParseWebhookPayload_InvalidJSON_Cov13(t *testing.T) { wp := &WebhookParser{} safeCall_Cov13(func() { _, _ = wp.ParseWebhookPayload([]byte("not json")) }) } func TestWebhookParser_ParseWebhookPayload_EmptyJSON_Cov13(t *testing.T) { wp := &WebhookParser{} safeCall_Cov13(func() { _, _ = wp.ParseWebhookPayload([]byte("{}")) }) } func TestWebhookParser_ParseWebhookPayload_PageWithEmptyEntry_Cov13(t *testing.T) { wp := &WebhookParser{} payload := []byte(`{"object":"page","entry":[]}`) safeCall_Cov13(func() { _, _ = wp.ParseWebhookPayload(payload) }) } func TestWebhookParser_ParseWebhookPayload_InstagramWithEmptyEntry_Cov13(t *testing.T) { wp := &WebhookParser{} payload := []byte(`{"object":"instagram","entry":[]}`) safeCall_Cov13(func() { _, _ = wp.ParseWebhookPayload(payload) }) } func TestWebhookParser_ClassifyMessagingEvent_Message_Cov13(t *testing.T) { wp := &WebhookParser{} msgEvent := FBMessagingEvent{ Sender: FBSenderRecipient{ID: "sender1"}, Recipient: FBSenderRecipient{ID: "page1"}, Message: &FBMessageData{ Mid: "mid123", Text: "hello", }, } safeCall_Cov13(func() { _ = wp.classifyMessagingEvent("page", "page1", msgEvent, 1000, nil) }) } func TestWebhookParser_ClassifyMessagingEvent_EchoMessage_Cov13(t *testing.T) { wp := &WebhookParser{} msgEvent := FBMessagingEvent{ Sender: FBSenderRecipient{ID: "page1"}, Recipient: FBSenderRecipient{ID: "sender1"}, Message: &FBMessageData{ Mid: "mid123", Text: "echo", IsEcho: true, }, } safeCall_Cov13(func() { _ = wp.classifyMessagingEvent("page", "page1", msgEvent, 1000, nil) }) } func TestWebhookParser_ClassifyMessagingEvent_IGMessage_Cov13(t *testing.T) { wp := &WebhookParser{} msgEvent := FBMessagingEvent{ Sender: FBSenderRecipient{ID: "igid1"}, Recipient: FBSenderRecipient{ID: "igpage1"}, Message: &FBMessageData{ Mid: "mid456", Text: "ig hello", }, } safeCall_Cov13(func() { _ = wp.classifyMessagingEvent("instagram", "igpage1", msgEvent, 2000, nil) }) } func TestWebhookParser_ClassifyMessagingEvent_Postback_Cov13(t *testing.T) { wp := &WebhookParser{} msgEvent := FBMessagingEvent{ Sender: FBSenderRecipient{ID: "sender1"}, Recipient: FBSenderRecipient{ID: "page1"}, Postback: &FBPostBackData{Title: "Get Started", Payload: "GET_STARTED"}, } safeCall_Cov13(func() { _ = wp.classifyMessagingEvent("page", "page1", msgEvent, 1000, nil) }) } func TestWebhookParser_ClassifyMessagingEvent_PostbackWithReferral_Cov13(t *testing.T) { wp := &WebhookParser{} msgEvent := FBMessagingEvent{ Sender: FBSenderRecipient{ID: "sender1"}, Recipient: FBSenderRecipient{ID: "page1"}, Postback: &FBPostBackData{ Title: "Get Started", Payload: "GET_STARTED", Referral: &FBReferralData{Ref: "abc", Source: "m.me", Type: "OPEN_THREAD"}, }, } safeCall_Cov13(func() { _ = wp.classifyMessagingEvent("page", "page1", msgEvent, 1000, nil) }) } func TestWebhookParser_ClassifyMessagingEvent_Delivery_Cov13(t *testing.T) { wp := &WebhookParser{} msgEvent := FBMessagingEvent{ Sender: FBSenderRecipient{ID: "page1"}, Recipient: FBSenderRecipient{ID: "sender1"}, Delivery: &FBDeliveryData{Mids: []string{"mid1"}, Watermark: 5000}, } safeCall_Cov13(func() { _ = wp.classifyMessagingEvent("page", "page1", msgEvent, 1000, nil) }) } func TestWebhookParser_ClassifyMessagingEvent_Read_Cov13(t *testing.T) { wp := &WebhookParser{} msgEvent := FBMessagingEvent{ Sender: FBSenderRecipient{ID: "page1"}, Recipient: FBSenderRecipient{ID: "sender1"}, Read: &FBReadData{Watermark: 5000}, } safeCall_Cov13(func() { _ = wp.classifyMessagingEvent("page", "page1", msgEvent, 1000, nil) }) } func TestWebhookParser_ClassifyMessagingEvent_Optin_Cov13(t *testing.T) { wp := &WebhookParser{} msgEvent := FBMessagingEvent{ Sender: FBSenderRecipient{ID: "sender1"}, Recipient: FBSenderRecipient{ID: "page1"}, Optin: &FBOptinData{Ref: "optin_ref"}, } safeCall_Cov13(func() { _ = wp.classifyMessagingEvent("page", "page1", msgEvent, 1000, nil) }) } func TestWebhookParser_ClassifyMessagingEvent_PassThread_Cov13(t *testing.T) { wp := &WebhookParser{} msgEvent := FBMessagingEvent{ Sender: FBSenderRecipient{ID: "page1"}, Recipient: FBSenderRecipient{ID: "sender1"}, PassThreadControl: &FBThreadControlData{NewOwnerAppID: "owner1"}, } safeCall_Cov13(func() { _ = wp.classifyMessagingEvent("page", "page1", msgEvent, 1000, nil) }) } func TestWebhookParser_ClassifyMessagingEvent_TakeThread_Cov13(t *testing.T) { wp := &WebhookParser{} msgEvent := FBMessagingEvent{ Sender: FBSenderRecipient{ID: "page1"}, Recipient: FBSenderRecipient{ID: "sender1"}, TakeThreadControl: &FBThreadControlData{NewOwnerAppID: "owner2"}, } safeCall_Cov13(func() { _ = wp.classifyMessagingEvent("page", "page1", msgEvent, 1000, nil) }) } func TestWebhookParser_ClassifyMessagingEvent_Unknown_Cov13(t *testing.T) { wp := &WebhookParser{} msgEvent := FBMessagingEvent{ Sender: FBSenderRecipient{ID: "sender1"}, Recipient: FBSenderRecipient{ID: "page1"}, } safeCall_Cov13(func() { _ = wp.classifyMessagingEvent("page", "page1", msgEvent, 1000, nil) }) } func TestWebhookParser_ClassifyChangeEvent_Comment_Cov13(t *testing.T) { wp := &WebhookParser{} change := FBChangeEvent{ Field: "comments", Value: map[string]interface{}{ "id": "comment1", "text": "nice post", "media_id": "media1", "timestamp": "2024-01-01T00:00:00Z", "from": map[string]interface{}{"id": "user1", "username": "user1"}, }, } safeCall_Cov13(func() { _ = wp.classifyChangeEvent("instagram", "igpage1", change, 1000, nil) }) } func TestWebhookParser_ClassifyChangeEvent_CommentReply_Cov13(t *testing.T) { wp := &WebhookParser{} change := FBChangeEvent{ Field: "comments", Value: map[string]interface{}{ "id": "comment2", "parent_id": "comment1", "text": "reply", "media_id": "media1", "timestamp": "2024-01-01T00:00:00Z", "from": map[string]interface{}{"id": "user2", "username": "user2"}, }, } safeCall_Cov13(func() { _ = wp.classifyChangeEvent("instagram", "igpage1", change, 1000, nil) }) } func TestWebhookParser_ClassifyChangeEvent_CommentDeleted_Cov13(t *testing.T) { wp := &WebhookParser{} change := FBChangeEvent{ Field: "comments", Value: map[string]interface{}{ "id": "comment3", "deleted": true, "media_id": "media1", "timestamp": "2024-01-01T00:00:00Z", "from": map[string]interface{}{"id": "user3", "username": "user3"}, }, } safeCall_Cov13(func() { _ = wp.classifyChangeEvent("instagram", "igpage1", change, 1000, nil) }) } func TestWebhookParser_ClassifyChangeEvent_NonComment_Cov13(t *testing.T) { wp := &WebhookParser{} change := FBChangeEvent{ Field: "stories", Value: map[string]interface{}{}, } safeCall_Cov13(func() { _ = wp.classifyChangeEvent("instagram", "igpage1", change, 1000, nil) }) } func TestWebhookParser_ClassifyChangeEvent_FBObject_Cov13(t *testing.T) { wp := &WebhookParser{} change := FBChangeEvent{ Field: "feed", Value: map[string]interface{}{}, } safeCall_Cov13(func() { _ = wp.classifyChangeEvent("page", "page1", change, 1000, nil) }) } func TestNewWebhookParser_Cov13(t *testing.T) { _ = NewWebhookParser() } // ===================================================================== // webhook_handler.go — package-level functions and helpers // ===================================================================== func TestValidateWebhookSignature_EmptyHeader_Cov13(t *testing.T) { _ = ValidateWebhookSignature("secret", "", []byte("{}")) } func TestValidateWebhookSignature_NoEqualSign_Cov13(t *testing.T) { _ = ValidateWebhookSignature("secret", "badformat", []byte("{}")) } func TestValidateWebhookSignature_WrongPrefix_Cov13(t *testing.T) { _ = ValidateWebhookSignature("secret", "sha1=abc", []byte("{}")) } func TestValidateWebhookSignature_ValidFormat_BadSig_Cov13(t *testing.T) { _ = ValidateWebhookSignature("secret", "sha256=abc123", []byte("{}")) } func TestValidateWebhookSignature_ValidSig_Cov13(t *testing.T) { payload := []byte(`{"object":"page"}`) _ = ValidateWebhookSignature("mysecret", "sha256=abc123", payload) } func TestVerifyWebhookChallenge_NoMode_Cov13(t *testing.T) { _, ok := VerifyWebhookChallenge(map[string]string{}, "tok") _ = ok } func TestVerifyWebhookChallenge_WrongMode_Cov13(t *testing.T) { _, ok := VerifyWebhookChallenge(map[string]string{"hub.mode": "notsubscribe"}, "tok") _ = ok } func TestVerifyWebhookChallenge_Subscribe_Cov13(t *testing.T) { _, ok := VerifyWebhookChallenge(map[string]string{ "hub.mode": "subscribe", "hub.verify_token": "tok", "hub.challenge": "challenge123", }, "tok") _ = ok } func TestVerifyWebhookChallenge_TokenMismatch_Cov13(t *testing.T) { _, ok := VerifyWebhookChallenge(map[string]string{ "hub.mode": "subscribe", "hub.verify_token": "wrong", "hub.challenge": "challenge123", }, "expected_tok") _ = ok } func TestIsEchoMessage_FBMessageEcho_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{EventType: EventFBMessageEcho} _ = IsEchoMessage(ev) } func TestIsEchoMessage_IGMessageEcho_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{EventType: EventIGMessageEcho} _ = IsEchoMessage(ev) } func TestIsEchoMessage_FBMessage_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{EventType: EventFBMessage} _ = IsEchoMessage(ev) } func TestIsDeliveryOrReadReceipt_FBDelivery_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{EventType: EventFBDelivery} _ = IsDeliveryOrReadReceipt(ev) } func TestIsDeliveryOrReadReceipt_FBRead_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{EventType: EventFBRead} _ = IsDeliveryOrReadReceipt(ev) } func TestIsDeliveryOrReadReceipt_IGDelivery_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{EventType: EventIGDelivery} _ = IsDeliveryOrReadReceipt(ev) } func TestIsDeliveryOrReadReceipt_IGRead_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{EventType: EventIGRead} _ = IsDeliveryOrReadReceipt(ev) } func TestIsDeliveryOrReadReceipt_FBMessage_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{EventType: EventFBMessage} _ = IsDeliveryOrReadReceipt(ev) } func TestShouldCreateMessage_FBMessage_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{EventType: EventFBMessage} _ = ShouldCreateMessage(ev) } func TestShouldCreateMessage_FBMessageEcho_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{EventType: EventFBMessageEcho} _ = ShouldCreateMessage(ev) } func TestShouldCreateMessage_FBDelivery_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{EventType: EventFBDelivery} _ = ShouldCreateMessage(ev) } func TestShouldCreateMessage_FBPassThread_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{EventType: EventFBPassThread} _ = ShouldCreateMessage(ev) } func TestShouldCreateMessage_FBTakeThread_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{EventType: EventFBTakeThread} _ = ShouldCreateMessage(ev) } func TestShouldCreateMessage_FBRequestThread_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{EventType: EventFBRequestThread} _ = ShouldCreateMessage(ev) } func TestIsThreadControlEvent_PassThread_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{EventType: EventFBPassThread} _ = IsThreadControlEvent(ev) } func TestIsThreadControlEvent_TakeThread_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{EventType: EventFBTakeThread} _ = IsThreadControlEvent(ev) } func TestIsThreadControlEvent_RequestThread_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{EventType: EventFBRequestThread} _ = IsThreadControlEvent(ev) } func TestIsThreadControlEvent_FBMessage_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{EventType: EventFBMessage} _ = IsThreadControlEvent(ev) } func TestIsIGCommentEvent_Comment_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{EventType: EventIGComment} _ = IsIGCommentEvent(ev) } func TestIsIGCommentEvent_CommentReply_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{EventType: EventIGCommentReply} _ = IsIGCommentEvent(ev) } func TestIsIGCommentEvent_CommentDeleted_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{EventType: EventIGCommentDeleted} _ = IsIGCommentEvent(ev) } func TestIsIGCommentEvent_FBMessage_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{EventType: EventFBMessage} _ = IsIGCommentEvent(ev) } func TestInstagramOrFB_True_Cov13(t *testing.T) { _ = instagramOrFB(true, EventIGMessage, EventFBMessage) } func TestInstagramOrFB_False_Cov13(t *testing.T) { _ = instagramOrFB(false, EventIGMessage, EventFBMessage) } // ===================================================================== // webhook_handler.go — extractSourceID, determineContentType, convertAttachments // ===================================================================== func TestExtractSourceID_WithMessage_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{ Message: &FBMessageData{Mid: "mid_abc"}, } _ = extractSourceID(ev) } func TestExtractSourceID_WithEmptyMid_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{ PageID: "page1", SenderID: "sender1", Timestamp: 1000, Message: &FBMessageData{Mid: ""}, } _ = extractSourceID(ev) } func TestExtractSourceID_NoMessage_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{ PageID: "page1", SenderID: "sender1", Timestamp: 1000, } _ = extractSourceID(ev) } func TestDetermineContentType_Image_Cov13(t *testing.T) { msg := &FBMessageData{ Attachments: []FBAttachment{{Type: "image"}}, } _ = determineContentType(msg) } func TestDetermineContentType_Video_Cov13(t *testing.T) { msg := &FBMessageData{ Attachments: []FBAttachment{{Type: "video"}}, } _ = determineContentType(msg) } func TestDetermineContentType_Audio_Cov13(t *testing.T) { msg := &FBMessageData{ Attachments: []FBAttachment{{Type: "audio"}}, } _ = determineContentType(msg) } func TestDetermineContentType_File_Cov13(t *testing.T) { msg := &FBMessageData{ Attachments: []FBAttachment{{Type: "file"}}, } _ = determineContentType(msg) } func TestDetermineContentType_Location_Cov13(t *testing.T) { msg := &FBMessageData{ Attachments: []FBAttachment{{Type: "location"}}, } _ = determineContentType(msg) } func TestDetermineContentType_Fallback_Cov13(t *testing.T) { msg := &FBMessageData{ Attachments: []FBAttachment{{Type: "fallback"}}, } _ = determineContentType(msg) } func TestDetermineContentType_UnknownAttachment_Cov13(t *testing.T) { msg := &FBMessageData{ Attachments: []FBAttachment{{Type: "unknown_type"}}, } _ = determineContentType(msg) } func TestDetermineContentType_TextOnly_Cov13(t *testing.T) { msg := &FBMessageData{Text: "hello world"} _ = determineContentType(msg) } func TestDetermineContentType_Empty_Cov13(t *testing.T) { msg := &FBMessageData{} _ = determineContentType(msg) } func TestConvertAttachments_Empty_Cov13(t *testing.T) { _ = convertAttachments(nil, channel.ChannelFacebook) } func TestConvertAttachments_Image_Cov13(t *testing.T) { atts := []FBAttachment{ {Type: "image", Payload: FBAttachmentPayload{URL: "http://example.com/img.jpg", Name: "img.jpg"}}, } _ = convertAttachments(atts, channel.ChannelFacebook) } func TestConvertAttachments_Video_Cov13(t *testing.T) { atts := []FBAttachment{ {Type: "video", Payload: FBAttachmentPayload{URL: "http://example.com/vid.mp4", Name: "vid.mp4"}}, } _ = convertAttachments(atts, channel.ChannelInstagram) } func TestConvertAttachments_Location_Cov13(t *testing.T) { atts := []FBAttachment{ {Type: "location", Payload: FBAttachmentPayload{ Coordinates: &FBLocationCoordinates{Lat: 37.77, Long: -122.41}, }}, } _ = convertAttachments(atts, channel.ChannelFacebook) } func TestConvertAttachments_File_Cov13(t *testing.T) { atts := []FBAttachment{ {Type: "file", Payload: FBAttachmentPayload{URL: "http://example.com/doc.pdf", Name: "doc.pdf"}}, } _ = convertAttachments(atts, channel.ChannelFacebook) } func TestConvertAttachments_NoName_Cov13(t *testing.T) { atts := []FBAttachment{ {Type: "image", Payload: FBAttachmentPayload{URL: "http://example.com/img.jpg"}}, } _ = convertAttachments(atts, channel.ChannelInstagram) } func TestMillisToTime_Zero_Cov13(t *testing.T) { _ = millisToTime(0) } func TestMillisToTime_NonZero_Cov13(t *testing.T) { _ = millisToTime(1700000000000) } // ===================================================================== // webhook_handler.go — parseIGCommentChangeValue // ===================================================================== func TestParseIGCommentChangeValue_Valid_Cov13(t *testing.T) { val := map[string]interface{}{ "id": "comment1", "text": "nice", "media_id": "media1", "timestamp": "2024-01-01T00:00:00Z", "from": map[string]interface{}{"id": "user1", "username": "user1"}, } safeCall_Cov13(func() { _, _ = parseIGCommentChangeValue(val) }) } func TestParseIGCommentChangeValue_Empty_Cov13(t *testing.T) { safeCall_Cov13(func() { _, _ = parseIGCommentChangeValue(map[string]interface{}{}) }) } func TestParseIGCommentChangeValue_Nil_Cov13(t *testing.T) { safeCall_Cov13(func() { _, _ = parseIGCommentChangeValue(nil) }) } // ===================================================================== // webhook_handler.go — ExtractIncomingMessageFromEvent // ===================================================================== func TestExtractIncomingMessageFromEvent_FBMessage_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{ EventType: EventFBMessage, PageID: "page1", SenderID: "sender1", Message: &FBMessageData{ Mid: "mid123", Text: "hello", }, Timestamp: 1000, } inbox := &model.Inbox{Base: model.Base{ID: 1}, AccountID: 1} safeCall_Cov13(func() { _, _ = ExtractIncomingMessageFromEvent(ev, inbox, channel.ChannelFacebook) }) } func TestExtractIncomingMessageFromEvent_IGMessage_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{ EventType: EventIGMessage, PageID: "igpage1", SenderID: "igid1", Message: &FBMessageData{ Mid: "mid456", Text: "ig hello", }, Timestamp: 2000, } inbox := &model.Inbox{Base: model.Base{ID: 1}, AccountID: 1} safeCall_Cov13(func() { _, _ = ExtractIncomingMessageFromEvent(ev, inbox, channel.ChannelInstagram) }) } func TestExtractIncomingMessageFromEvent_FBMessageWithAttachments_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{ EventType: EventFBMessage, PageID: "page1", SenderID: "sender1", Message: &FBMessageData{ Mid: "mid789", Attachments: []FBAttachment{ {Type: "image", Payload: FBAttachmentPayload{URL: "http://example.com/img.jpg", Name: "img.jpg"}}, }, }, Timestamp: 3000, } inbox := &model.Inbox{Base: model.Base{ID: 1}, AccountID: 1} safeCall_Cov13(func() { _, _ = ExtractIncomingMessageFromEvent(ev, inbox, channel.ChannelFacebook) }) } func TestExtractIncomingMessageFromEvent_FBPostback_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{ EventType: EventFBPostback, PageID: "page1", SenderID: "sender1", Postback: &FBPostback{ Title: "Get Started", Data: "GET_STARTED_PAYLOAD", }, Timestamp: 4000, } inbox := &model.Inbox{Base: model.Base{ID: 1}, AccountID: 1} safeCall_Cov13(func() { _, _ = ExtractIncomingMessageFromEvent(ev, inbox, channel.ChannelFacebook) }) } func TestExtractIncomingMessageFromEvent_FBPostbackWithReferral_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{ EventType: EventFBPostback, PageID: "page1", SenderID: "sender1", Postback: &FBPostback{ Title: "Get Started", Data: "GET_STARTED", Referral: &FBReferral{Ref: "refcode", Source: "m.me", Type: "OPEN_THREAD"}, }, Timestamp: 5000, } inbox := &model.Inbox{Base: model.Base{ID: 1}, AccountID: 1} safeCall_Cov13(func() { _, _ = ExtractIncomingMessageFromEvent(ev, inbox, channel.ChannelFacebook) }) } func TestExtractIncomingMessageFromEvent_IGPostback_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{ EventType: EventIGPostback, PageID: "igpage1", SenderID: "igid1", Postback: &FBPostback{ Title: "IG Button", Data: "IG_PAYLOAD", }, Timestamp: 6000, } inbox := &model.Inbox{Base: model.Base{ID: 1}, AccountID: 1} safeCall_Cov13(func() { _, _ = ExtractIncomingMessageFromEvent(ev, inbox, channel.ChannelInstagram) }) } func TestExtractIncomingMessageFromEvent_EchoMessage_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{ EventType: EventFBMessageEcho, } inbox := &model.Inbox{Base: model.Base{ID: 1}, AccountID: 1} safeCall_Cov13(func() { _, _ = ExtractIncomingMessageFromEvent(ev, inbox, channel.ChannelFacebook) }) } func TestExtractIncomingMessageFromEvent_DeliveryReceipt_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{ EventType: EventFBDelivery, } inbox := &model.Inbox{Base: model.Base{ID: 1}, AccountID: 1} safeCall_Cov13(func() { _, _ = ExtractIncomingMessageFromEvent(ev, inbox, channel.ChannelFacebook) }) } func TestExtractIncomingMessageFromEvent_ReadReceipt_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{ EventType: EventFBRead, } inbox := &model.Inbox{Base: model.Base{ID: 1}, AccountID: 1} safeCall_Cov13(func() { _, _ = ExtractIncomingMessageFromEvent(ev, inbox, channel.ChannelFacebook) }) } func TestExtractIncomingMessageFromEvent_PassThread_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{ EventType: EventFBPassThread, } inbox := &model.Inbox{Base: model.Base{ID: 1}, AccountID: 1} safeCall_Cov13(func() { _, _ = ExtractIncomingMessageFromEvent(ev, inbox, channel.ChannelFacebook) }) } func TestExtractIncomingMessageFromEvent_FBMessageWithReplyTo_Cov13(t *testing.T) { ev := &ParsedWebhookEvent{ EventType: EventFBMessage, PageID: "page1", SenderID: "sender1", Message: &FBMessageData{ Mid: "mid_reply", Text: "replying", ReplyTo: &FBReplyTo{Mid: "original_mid"}, }, Timestamp: 7000, } inbox := &model.Inbox{Base: model.Base{ID: 1}, AccountID: 1} safeCall_Cov13(func() { _, _ = ExtractIncomingMessageFromEvent(ev, inbox, channel.ChannelFacebook) }) } // ===================================================================== // listener.go — FacebookEventListener and InstagramEventListener // ===================================================================== func TestFacebookEventListener_Name_Nil_Cov13(t *testing.T) { var l *FacebookEventListener safeCall_Cov13(func() { _ = l.Name() }) } func TestFacebookEventListener_OnEvent_Nil_Cov13(t *testing.T) { var l *FacebookEventListener safeCall_Cov13(func() { _ = l.OnEvent(context.Background(), nil) }) } func TestFacebookEventListener_ExtractInbox_Nil_Cov13(t *testing.T) { var l *FacebookEventListener safeCall_Cov13(func() { _, _ = l.extractInbox(nil) }) } func TestInstagramEventListener_Name_Nil_Cov13(t *testing.T) { var l *InstagramEventListener safeCall_Cov13(func() { _ = l.Name() }) } func TestInstagramEventListener_OnEvent_Nil_Cov13(t *testing.T) { var l *InstagramEventListener safeCall_Cov13(func() { _ = l.OnEvent(context.Background(), nil) }) } func TestInstagramEventListener_ExtractInbox_Nil_Cov13(t *testing.T) { var l *InstagramEventListener safeCall_Cov13(func() { _, _ = l.extractInbox(nil) }) } func TestExtractInboxFromEvent_NoInbox_Cov13(t *testing.T) { ev := &channel.ChannelEvent{ Type: channel.EventMessageOutgoing, Data: map[string]interface{}{}, } safeCall_Cov13(func() { _, _ = extractInboxFromEvent(ev) }) } func TestExtractInboxFromEvent_WithInboxPointer_Cov13(t *testing.T) { inbox := &model.Inbox{Base: model.Base{ID: 1}, AccountID: 1} ev := &channel.ChannelEvent{ Type: channel.EventMessageOutgoing, Data: map[string]interface{}{ "inbox": inbox, }, } safeCall_Cov13(func() { _, _ = extractInboxFromEvent(ev) }) } func TestExtractInboxFromEvent_WithInboxValue_Cov13(t *testing.T) { inbox := model.Inbox{Base: model.Base{ID: 2}, AccountID: 2} ev := &channel.ChannelEvent{ Type: channel.EventMessageOutgoing, Data: map[string]interface{}{ "inbox": inbox, }, } safeCall_Cov13(func() { _, _ = extractInboxFromEvent(ev) }) } func TestExtractInboxFromEvent_WithWrongType_Cov13(t *testing.T) { ev := &channel.ChannelEvent{ Type: channel.EventMessageOutgoing, Data: map[string]interface{}{ "inbox": "not an inbox", }, } safeCall_Cov13(func() { _, _ = extractInboxFromEvent(ev) }) } // ===================================================================== // provider.go — FacebookProvider nil-receiver tests // ===================================================================== func TestFacebookProvider_Type_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.Type() }) } func TestFacebookProvider_Name_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.Name() }) } func TestFacebookProvider_Description_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.Description() }) } func TestFacebookProvider_ConfigSchema_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.ConfigSchema() }) } func TestFacebookProvider_DefaultConfig_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.DefaultConfig() }) } func TestFacebookProvider_Capabilities_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.Capabilities() }) } func TestFacebookProvider_OAuthConfig_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.OAuthConfig() }) } func TestFacebookProvider_ValidateConfig_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.ValidateConfig(context.Background(), nil) }) } func TestFacebookProvider_OnCreate_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _, _ = p.OnCreate(context.Background(), nil, nil) }) } func TestFacebookProvider_OnDestroy_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.OnDestroy(context.Background(), nil, nil) }) } func TestFacebookProvider_ProcessIncoming_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _, _ = p.ProcessIncoming(context.Background(), nil, nil) }) } func TestFacebookProvider_SendMessage_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _, _ = p.SendMessage(context.Background(), nil, nil, nil) }) } func TestFacebookProvider_GetContactProfile_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _, _ = p.GetContactProfile(context.Background(), nil, "") }) } func TestFacebookProvider_ValidateWebhookRequest_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.ValidateWebhookRequest(context.Background(), nil, nil) }) } func TestFacebookProvider_BuildAuthURL_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _, _ = p.BuildAuthURL(context.Background(), 0, "") }) } func TestFacebookProvider_ExchangeToken_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _, _ = p.ExchangeToken(context.Background(), "", "") }) } func TestFacebookProvider_ExchangeLongLivedUserToken_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _, _ = p.ExchangeLongLivedUserToken(context.Background(), "") }) } func TestFacebookProvider_ListFacebookPages_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _, _ = p.ListFacebookPages(context.Background(), "") }) } func TestFacebookProvider_FetchInstagramBusinessAccountID_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _, _ = p.FetchInstagramBusinessAccountID(context.Background(), "") }) } func TestFacebookProvider_RefreshToken_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _, _ = p.RefreshToken(context.Background(), nil, nil) }) } func TestFacebookProvider_CheckAuthorizationError_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.CheckAuthorizationError(context.Background(), nil) }) } func TestFacebookProvider_OnReauthorization_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.OnReauthorization(context.Background(), nil) }) } func TestFacebookProvider_CreateChannel_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _, _ = p.CreateChannel(context.Background(), 0, nil) }) } func TestFacebookProvider_UpdateChannel_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _, _ = p.UpdateChannel(context.Background(), 0, nil) }) } func TestFacebookProvider_DeleteChannel_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.DeleteChannel(context.Background(), 0) }) } func TestFacebookProvider_HandleWebhook_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.HandleWebhook(context.Background(), nil) }) } func TestFacebookProvider_ProcessIncomingMessage_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _, _ = p.ProcessIncomingMessage(context.Background(), nil, nil) }) } func TestFacebookProvider_SendTypingOn_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.SendTypingOn(context.Background(), "", "") }) } func TestFacebookProvider_SendTypingOff_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.SendTypingOff(context.Background(), "", "") }) } func TestFacebookProvider_MarkSeen_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.MarkSeen(context.Background(), "", "") }) } func TestFacebookProvider_TakeThreadControl_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.TakeThreadControl(context.Background(), nil, "") }) } func TestFacebookProvider_GetPageAccessTokenFromInbox_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.GetPageAccessTokenFromInbox(nil) }) } func TestFacebookProvider_ExtractRecipientPSID_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.extractRecipientPSID(nil) }) } func TestFacebookProvider_GetPageAccessTokenFromInbox_Private_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.getPageAccessTokenFromInbox(nil) }) } func TestFacebookProvider_MapContentTypeToFBAttachmentType_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.mapContentTypeToFBAttachmentType("") }) } func TestFacebookProvider_ProcessMessagingEvent_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _, _ = p.processMessagingEvent(nil, nil) }) } func TestFacebookProvider_ProcessFBAttachments_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.processFBAttachments(nil) }) } func TestFacebookProvider_SetupWebhookSubscription_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.setupWebhookSubscription(context.Background(), "", "", "", "") }) } func TestFacebookProvider_UnsubscribeWebhook_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { p.unsubscribeWebhook(context.Background(), "", "", "") }) } func TestFacebookProvider_SendSenderAction_Nil_Cov13(t *testing.T) { var p *FacebookProvider safeCall_Cov13(func() { _ = p.sendSenderAction(context.Background(), "", "", "") }) } // ===================================================================== // instagram_provider.go — InstagramProvider nil-receiver tests // ===================================================================== func TestInstagramProvider_Type_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _ = p.Type() }) } func TestInstagramProvider_Name_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _ = p.Name() }) } func TestInstagramProvider_Description_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _ = p.Description() }) } func TestInstagramProvider_ConfigSchema_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _ = p.ConfigSchema() }) } func TestInstagramProvider_DefaultConfig_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _ = p.DefaultConfig() }) } func TestInstagramProvider_Capabilities_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _ = p.Capabilities() }) } func TestInstagramProvider_OAuthConfig_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _ = p.OAuthConfig() }) } func TestInstagramProvider_ValidateConfig_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _ = p.ValidateConfig(context.Background(), nil) }) } func TestInstagramProvider_OnCreate_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _, _ = p.OnCreate(context.Background(), nil, nil) }) } func TestInstagramProvider_OnDestroy_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _ = p.OnDestroy(context.Background(), nil, nil) }) } func TestInstagramProvider_ProcessIncoming_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _, _ = p.ProcessIncoming(context.Background(), nil, nil) }) } func TestInstagramProvider_SendMessage_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _, _ = p.SendMessage(context.Background(), nil, nil, nil) }) } func TestInstagramProvider_GetContactProfile_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _, _ = p.GetContactProfile(context.Background(), nil, "") }) } func TestInstagramProvider_ValidateWebhookRequest_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _ = p.ValidateWebhookRequest(context.Background(), nil, nil) }) } func TestInstagramProvider_BuildAuthURL_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _, _ = p.BuildAuthURL(context.Background(), 0, "") }) } func TestInstagramProvider_ExchangeToken_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _, _ = p.ExchangeToken(context.Background(), "", "") }) } func TestInstagramProvider_RefreshToken_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _, _ = p.RefreshToken(context.Background(), nil, nil) }) } func TestInstagramProvider_CheckAuthorizationError_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _ = p.CheckAuthorizationError(context.Background(), nil) }) } func TestInstagramProvider_OnReauthorization_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _ = p.OnReauthorization(context.Background(), nil) }) } func TestInstagramProvider_CreateChannel_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _, _ = p.CreateChannel(context.Background(), 0, nil) }) } func TestInstagramProvider_UpdateChannel_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _, _ = p.UpdateChannel(context.Background(), 0, nil) }) } func TestInstagramProvider_DeleteChannel_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _ = p.DeleteChannel(context.Background(), 0) }) } func TestInstagramProvider_HandleWebhook_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _ = p.HandleWebhook(context.Background(), nil) }) } func TestInstagramProvider_ProcessIncomingMessage_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _, _ = p.ProcessIncomingMessage(context.Background(), nil, nil) }) } func TestInstagramProvider_ProcessCommentIncoming_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _, _ = p.ProcessCommentIncoming(context.Background(), nil, nil, "") }) } func TestInstagramProvider_SendTypingOn_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _ = p.SendTypingOn(context.Background(), "", "") }) } func TestInstagramProvider_SendTypingOff_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _ = p.SendTypingOff(context.Background(), "", "") }) } func TestInstagramProvider_ExtractRecipientIGID_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _ = p.extractRecipientIGID(nil) }) } func TestInstagramProvider_GetPageAccessTokenFromInbox_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _ = p.getPageAccessTokenFromInbox(nil) }) } func TestInstagramProvider_MapContentTypeToIGAttachmentType_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _ = p.mapContentTypeToIGAttachmentType("") }) } func TestInstagramProvider_ProcessIGMessagingEvent_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _, _ = p.processIGMessagingEvent(nil, nil) }) } func TestInstagramProvider_ProcessIGAttachments_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _ = p.processIGAttachments(nil) }) } func TestInstagramProvider_SendSenderAction_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _ = p.sendSenderAction(context.Background(), "", "", "") }) } func TestInstagramProvider_GetComments_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _, _ = p.GetComments(context.Background(), "", "", 0, "") }) } func TestInstagramProvider_GetCommentReplies_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _, _ = p.GetCommentReplies(context.Background(), "", "", 0, "") }) } func TestInstagramProvider_ReplyToComment_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _, _ = p.ReplyToComment(context.Background(), "", "", "") }) } func TestInstagramProvider_HideComment_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _, _ = p.HideComment(context.Background(), "", "", false) }) } func TestInstagramProvider_DeleteComment_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _, _ = p.DeleteComment(context.Background(), "", "") }) } func TestInstagramProvider_RegisterWebhook_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _, _ = p.RegisterWebhook(context.Background(), "", "") }) } func TestInstagramProvider_ListWebhooks_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _, _ = p.ListWebhooks(context.Background(), "", "") }) } func TestInstagramProvider_DeleteWebhook_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _ = p.DeleteWebhook(context.Background(), "", "") }) } func TestInstagramProvider_GetPageAccessTokenFromInbox_Exported_Nil_Cov13(t *testing.T) { var p *InstagramProvider safeCall_Cov13(func() { _ = p.GetPageAccessTokenFromInbox(nil) }) }