private void SendReportUsingFilter(string filterString, EventSource source = EventSource.EventLog, string externalEvents = "") { var filterConfig = new FilterConfiguration(filterString, TimeSpan.FromHours(12), 100, "", "Security", eventSource: source, externalEventsXml: externalEvents); var logEventFilter = new LogEventFilter(_eventReader, filterConfig); _radonExecutor = new RadonExecutor(_currentEmailConfig, filterConfig, _mockEventIdentificationStore, logEventFilter); _radonExecutor.SendReport(_radonExecutor.GetLogEvents()); }
public void ShouldUseExternalEventsSourceIfSelected() { var filterConfig = new FilterConfiguration("1=1", TimeSpan.FromHours(12), 100, "", Path.GetRandomFileName(), EventSource.External, "<Events><Event><Message>External event message</Message></Event></Events>"); var mockConfig = MockRepository.GenerateMock <IRadonConfigurationManager>(); mockConfig.Expect(c => c.GetEmailConfig()).Return(_currentEmailConfig); mockConfig.Expect(c => c.GetFilterConfig()).Return(filterConfig); _radonExecutor = new RadonExecutor(mockConfig); _radonExecutor.SendReport(_radonExecutor.GetLogEvents()); Assert.That(_smtpServer.ReceivedEmailCount, Is.EqualTo(1), "An email should have been sent"); var body = SmtpSenderTest.ParseMessageBody(_smtpServer.ReceivedEmail.Single().Body); Assert.That(body, Does.Contain("External event message")); }
public void GetLogEvents_ShouldCallReadEventsAndReturnThem() { var myEvents = new List <LogEvent> { new LogEvent { Message = "oho!!" }, new LogEvent { Message = "vau!" } }; _mockEventReader.Expect(m => m.ReadEvents()).Return(myEvents); var events = _radonExecutor.GetLogEvents(); _mockEventReader.AssertWasCalled(m => m.ReadEvents()); Assert.That(events.Count, Is.EqualTo(2)); Assert.That(events[0].Message, Is.EqualTo("oho!!")); Assert.That(events[1].Message, Is.EqualTo("vau!")); }
public RadonResult ExecuteRadon() { var result = new RadonResult(); var events = _executor.GetLogEvents(); if (events.Any()) { _executor.SendReport(events); _executor.SaveAlreadyReportedEventIdentification(events.First()); result.UserResultMessage = string.Format("Mail sent to {0}", this._executor.EmailConfig.RecipientsAsString); result.Success = true; result.ActionSkipped = false; } else { result.UserResultMessage = "No events. No mail has been sent from FRENDS Radon."; result.Success = true; result.ActionSkipped = true; } result.UnreportedEventsCount = events.Count; return(result); }