public void Process_FormatReturnsNoMessage_DoesNotSendMessage() { var mockMF = new Mock<IMessageFormatter>(); var mockMD = new Mock<IMessageDelivery>(); var sub = new EmailEventHandler(mockMF.Object, mockMD.Object); var mockAcct = new MockUserAccount(); var mockEvt = new Mock<UserAccountEvent>(); mockEvt.Object.Account = mockAcct.Object; sub.Process(mockEvt.Object); mockMD.Verify(x => x.Send(It.IsAny<Message>()), Times.Never()); }
public void Process_FormatReturnsNoMessage_DoesNotSendMessage() { var mockMF = new Mock <IMessageFormatter>(); var mockMD = new Mock <IMessageDelivery>(); var sub = new EmailEventHandler(mockMF.Object, mockMD.Object); var mockAcct = new MockUserAccount(); var mockEvt = new Mock <UserAccountEvent>(); mockEvt.Object.Account = mockAcct.Object; sub.Process(mockEvt.Object); mockMD.Verify(x => x.Send(It.IsAny <Message>()), Times.Never()); }
public void Process_FormatReturnsMessage_SendsMessage() { var msg = new Message(); var mockMF = new Mock<IMessageFormatter>(); var mockMD = new Mock<IMessageDelivery>(); mockMF.Setup(x => x.Format(It.IsAny<UserAccountEvent>())).Returns(msg); var sub = new EmailEventHandler(mockMF.Object, mockMD.Object); var mockAcct = new MockUserAccount(); var mockEvt = new Mock<UserAccountEvent>(); mockEvt.Object.Account = mockAcct.Object; sub.Process(mockEvt.Object); mockMD.Verify(x => x.Send(msg)); }
public void Process_ExplicitEmailParam_UsesExplicitEmail() { var msg = new Message(); var mockMF = new Mock<IMessageFormatter>(); var mockMD = new Mock<IMessageDelivery>(); mockMF.Setup(x => x.Format(It.IsAny<UserAccountEvent>())).Returns(msg); var sub = new EmailEventHandler(mockMF.Object, mockMD.Object); var mockAcct = new MockUserAccount(); mockAcct.Object.Email = "foo"; var mockEvt = new Mock<UserAccountEvent>(); mockEvt.Object.Account = mockAcct.Object; sub.Process(mockEvt.Object, "bar"); Assert.AreEqual("bar", msg.To); }
public void Process_FormatReturnsMessage_SendsMessage() { var msg = new Message(); var mockMF = new Mock <IMessageFormatter>(); var mockMD = new Mock <IMessageDelivery>(); mockMF.Setup(x => x.Format(It.IsAny <UserAccountEvent>())).Returns(msg); var sub = new EmailEventHandler(mockMF.Object, mockMD.Object); var mockAcct = new MockUserAccount(); var mockEvt = new Mock <UserAccountEvent>(); mockEvt.Object.Account = mockAcct.Object; sub.Process(mockEvt.Object); mockMD.Verify(x => x.Send(msg)); }
public void Process_ExplicitEmailParam_UsesExplicitEmail() { var msg = new Message(); var mockMF = new Mock <IMessageFormatter>(); var mockMD = new Mock <IMessageDelivery>(); mockMF.Setup(x => x.Format(It.IsAny <UserAccountEvent>())).Returns(msg); var sub = new EmailEventHandler(mockMF.Object, mockMD.Object); var mockAcct = new MockUserAccount(); mockAcct.Object.Email = "foo"; var mockEvt = new Mock <UserAccountEvent>(); mockEvt.Object.Account = mockAcct.Object; sub.Process(mockEvt.Object, "bar"); Assert.AreEqual("bar", msg.To); }
public async Task SendTest() { // Arrange var smtpClientMock = new Mock <SmtpClient>(); smtpClientMock.Setup(m => m.DisconnectAsync(It.IsAny <bool>(), It.IsAny <CancellationToken>())).Returns(Task.FromResult(true)); smtpClientMock.Setup(m => m.SendAsync(It.IsAny <MimeMessage>(), It.IsAny <CancellationToken>(), It.IsAny <ITransferProgress>())).Returns(Task.FromResult(true)); var mailboxTestTo = new EmailAddress("TestRecipient", "*****@*****.**"); var mailboxTestFrom = new EmailAddress("TestSender", "*****@*****.**"); var subjectTest = "Test Subject"; var contentTest = "Test Content"; var emailMessage = new EmailEvent(mailboxTestFrom, mailboxTestTo, subjectTest, contentTest, true); var emailService = new EmailEventHandler(smtpClientMock.Object); // Act await emailService.ConsumeAsync(emailMessage); // Assert smtpClientMock.Verify(m => m.DisconnectAsync(It.Is <bool>(p => true), It.IsAny <CancellationToken>()), Times.Once); smtpClientMock.Verify(m => m.SendAsync(It.Is <MimeMessage>(p => p.Subject == subjectTest && p.HtmlBody == contentTest && p.To[0].Name == mailboxTestTo.Name && p.From[0].Name == mailboxTestFrom.Name), It.IsAny <CancellationToken>(), It.IsAny <ITransferProgress>()), Times.Once); }
/// <summary> /// Initialize SFDC Adapter /// </summary> /// <param name="agentDetails">Agent Details</param> /// <param name="tServer">T-Server Protocol</param> /// <param name="configProtocol">Config Server Protocol</param> private void InitializeSFDCIntegration(ISFDCListener subscirber, IAgentDetails agentDetails, IConfService confService) { try { _logger.Info("InitializeSFDCIntegration : Initializing Common Properties for SFDC Popup"); Settings.GeneralConfigs = ReadConfiguration.GetInstance().ReadGeneralConfigurations(agentDetails.MyApplication, agentDetails.AgentGroups, agentDetails.Person); if (Settings.GeneralConfigs != null) { Settings.SFDCOptions = Pointel.Salesforce.Adapter.Configurations.ReadProperties.GetInstance().GetSFDCGeneralProperties(Settings.GeneralConfigs); if (Settings.SFDCOptions != null) { if (Settings.SFDCOptions.EnableSFDCIntegration) { // Initializing Common Properties in Settings Settings.Initialize(subscirber, agentDetails, confService); //Start SFDC Server if (Settings.SFDCOptions.SFDCPopupChannels != null && Settings.SFDCOptions.SFDCConnectPort != 0) { SFDCHttpServer.GetInstance().StartListener(Environment.CurrentDirectory + @"\Files", Settings.SFDCOptions.SFDCConnectPort); if (Settings.IsVoiceEnabled) { _voicePopup = new VoiceEventHandler(); } if (Settings.IsChatEnabled) { _chatPopup = new ChatEventHandler(); } if (Settings.IsEmailEnabled) { _emailPopup = new EmailEventHandler(); } //PopupBrowser if (Settings.SFDCOptions.SFDCPopupContainer != null) { if (Settings.SFDCOptions.SFDCPopupContainer.Equals("browser")) { if (Settings.SFDCOptions.SFDCLoginURL != null) { this._logger.Info("Lauching SFDC URL : " + PopupURL(Settings.SFDCOptions.SFDCLoginURL, Settings.SFDCOptions.SFDCPopupBrowserName, Settings.SFDCOptions.EnableAddressbar, Settings.SFDCOptions.EnableStatusbar)); } else { this._logger.Info("SFDC Login URL is null. "); } } else { Settings.SFDCListener.ReceiveSFDCWindow(new SFDCPopupWindow(Settings.SFDCOptions.SFDCLoginURL)); } } else { this._logger.Info("SFDC Popup Container is null. "); } if (!Settings.SFDCListener.IsSFDCConnected && Settings.SFDCOptions.AlertSFDCConnectionStatus) { Settings.SFDCListener.SFDCConnectionStatus(LogMode.Error, Settings.SFDCOptions.SFDCConnectionFailureMessage); } } else { this._logger.Info("SFDC Popup Aborted, because either popup channel or port number is empty "); this._logger.Info("SFDC Popup Channels : " + Settings.SFDCOptions.SFDCPopupChannels); this._logger.Info("SFDC Port Number : " + Settings.SFDCOptions.SFDCConnectPort); } } else { _logger.Info("InitializeSFDCIntegration : SFDC Integration Disabled"); } } else { _logger.Info("InitializeSFDCIntegration : SFDC General Config object is null..."); } } else { _logger.Info("InitializeSFDCIntegration : SFDC popup can not be started because SFDC General Configuration has is found."); } } catch (Exception generalException) { _logger.Error("InitializeSFDCIntegration : Error Occurred while start SFDC Popup " + generalException.ToString()); } }
public void ctor_NullFormatter_Throws() { var mockMF = new Mock <IMessageFormatter>(); var mockMD = new Mock <IMessageDelivery>(); var sub = new EmailEventHandler(null, mockMD.Object); }
public void ctor_NullDelivery_Throws() { var mockMF = new Mock<IMessageFormatter>(); var mockMD = new Mock<IMessageDelivery>(); var sub = new EmailEventHandler(mockMF.Object, null); }
private void OnEmailOpen(object var) { string email = (string)var; EmailEventHandler?.Invoke(email); }