public void WhenIRunTheReceiveAddToDatabaseProcess()
        {
            Assert.IsTrue(StaticVariables.StaticEmailHelper.ConnectToEmailServer(), "Could not connect to email server");
            FullEmailListForRetrieveDto emails = StaticVariables.StaticEmailHelper.RetrieveEmailBatch(100).GetAwaiter().GetResult();

            //Any emails to be saved to database
            CRUDEnums.ActionResult actionResult = StaticVariables.StaticEmailAlertDal.Put(emails.Emails.ToList()).GetAwaiter().GetResult();
            Assert.AreEqual(CRUDEnums.ActionResult.Success, actionResult, "Error adding to database");
        }
        private async Task <FullEmailListForRetrieveDto> retrieveEmailRequest()
        {
            FullEmailListForRetrieveDto emails   = null;
            HttpResponseMessage         response = await _client.GetAsync(
                $"api/email");

            response.EnsureSuccessStatusCode();
            if (response.IsSuccessStatusCode)
            {
                emails = await response.Content.ReadAsAsync <FullEmailListForRetrieveDto>();
            }
            return(emails);
        }
Exemple #3
0
        public void Sync()
        {
            _logger.Information("Attempting Highlight Sync");
            //Retrieve Emails from mailbox
            _emailHelper = new EmailConnectionHelper(_communicationApi);
            if (!_emailHelper.ConnectToEmailServer())
            {
                _logger.Error("Could not connect to email server");
                return;
            }

            FullEmailListForRetrieveDto emails = _emailHelper.RetrieveEmailBatch(_batchSize).GetAwaiter().GetResult();

            _logger.Information($"{emails.Emails.Count()} Retrieved");
            if (emails.Emails.Count() == 0)
            {
                return;
            }

            _emailAlertsDal = new EmailAlertsDal(_configuration, _logger);

            List <FullEmailModel> validEmails = saveAndValidateExtendedEmails(emails.Emails).ToList();

            if (validEmails.Count == 0)
            {
                _logger.Information("No valid emails to parse");
                return;
            }

            List <EmailForExtendedDto> validatedExtended = validateExtension(validEmails).ToList();

            if (validatedExtended.Count() == 0)
            {
                _logger.Information("All emails failed parse");
                return;
            }

            if (!createRatingMarkers(validatedExtended))
            {
                _logger.Information("Failed to create rating markers");
                return;
            }

            _logger.Information("Completed Highlight Sync");
        }
        public void ThenNewEmailsAreReceievedFromMyEmailApi(int numOfEmails)
        {
            FullEmailListForRetrieveDto emails = StaticVariables.EmailConnectionHelper.RetrieveEmailBatch(100).GetAwaiter().GetResult();

            Assert.AreEqual(numOfEmails, emails.Emails.Count());
        }