public List<string> DownloadJournals(JournalTocsFetchMode action = JournalTocsFetchMode.Update) { _logger.Info("Downloading journals..."); var result = new List<string>(); using (var webClient = _webClientFactory.Create()) { webClient.Encoding = _encoding; var fetch = true; do { _logger.Info($"\t...downloading batch #{_resumptionToken + 1}..."); var batch = webClient.DownloadString($"{_settings.RequestUrl}&action={action.ToString().ToLowerInvariant()}&resumptionToken={_resumptionToken}"); if (!batch.Contains(EndOfBatchesNotice) || !batch.Contains(Notice)) { result.Add(batch.Replace("&", "&")); _resumptionToken++; } else fetch = false; } while (fetch); _logger.Info("Finised downloading journals."); return result; } }
public void DownloadJournals_uses_the_given_Action_to_fetch_journals(JournalTocsFetchMode action) { var sut = CreateClient(); _webClient.Setup(x => x.DownloadString(It.IsAny<string>())).Returns(GetJournalTocsNoMoreItemsNotice()); sut.DownloadJournals(action); _webClient.Verify(x => x.DownloadString($"{_settings.RequestUrl}&action={action.ToString().ToLowerInvariant()}&resumptionToken=0"), Times.Once); }
public void DownloadJournals_uses_the_given_Action_to_fetch_journals(JournalTocsFetchMode action) { var sut = CreateClient(); _webClient.Setup(x => x.DownloadString(It.IsAny <string>())).Returns(GetJournalTocsNoMoreItemsNotice()); sut.DownloadJournals(action); _webClient.Verify(x => x.DownloadString($"{_settings.AllJournalsRequestUrl}&action={action.ToString().ToLowerInvariant()}&resumptionToken=0"), Times.Once); }
public List <string> DownloadJournals(JournalTocsFetchMode action = JournalTocsFetchMode.Update) { _logger.Info("Downloading journals..."); var result = new List <string>(); using (var webClient = _webClientFactory.Create()) { webClient.Encoding = _encoding; var fetch = true; do { _logger.Info($"\t...downloading batch #{_resumptionToken + 1}..."); var batch = webClient.DownloadString($"{_settings.AllJournalsRequestUrl}&action={action.ToString().ToLowerInvariant()}&resumptionToken={_resumptionToken}"); if (!batch.Contains(EndOfBatchesNotice) || !batch.Contains(Notice)) { result.Add(batch.Replace("&", "&")); _resumptionToken++; } else { fetch = false; } } while (fetch); _logger.Info("Finised downloading journals."); return(result); } }