FetchNewComments() публичный Метод

public FetchNewComments ( List projects, TfsConnectionDetails connection, Func getCommentFunc ) : System.Threading.Tasks.Task
projects List
connection TfsConnectionDetails
getCommentFunc Func
Результат System.Threading.Tasks.Task
 public void GivenOldCachedCommentExists_WhenBuildIdHasNotChanged_ThenNewCommentsAreNotRetrieved()
 {
     var commentsCache = new CommentsCache();
     var tfsJsonBuilds = GetTfsJsonBuilds(1, 2);
     commentsCache.FetchNewComments(tfsJsonBuilds, new TfsConnectionDetails(), GetCommentFunc("old comment")).Wait();
     commentsCache.FetchNewComments(tfsJsonBuilds, new TfsConnectionDetails(), GetCommentFunc("new comment")).Wait();
     Assert.AreEqual("old comment", commentsCache.GetCachedCommentForBuild(tfsJsonBuilds[0]));
 }
 public void GivenNoCachedCommentExists_WhenWeAsForComments_ThenTheyAreRetrieved()
 {
     var commentsCache = new CommentsCache();
     var tfsJsonBuilds = GetTfsJsonBuilds(1, 2);
     commentsCache.FetchNewComments(tfsJsonBuilds, new TfsConnectionDetails(), GetCommentFunc("some comment")).Wait();
     Assert.AreEqual("some comment", commentsCache.GetCachedCommentForBuild(tfsJsonBuilds[0]));
 }
        public async Task <IEnumerable <TfsRestBuildStatus> > GetBuildsStatuses(CiEntryPointSetting ciEntryPointSetting, BuildDefinitionSetting[] watchedBuildDefinitions)
        {
            var connection = new TfsConnectionDetails(ciEntryPointSetting);
            var buildDefinitionsByProjectCollection          = watchedBuildDefinitions.GroupBy(bd => bd.Parent);
            List <TfsRestBuildStatus> resultingBuildStatuses = new List <TfsRestBuildStatus>();

            foreach (var buildDefinitionGroup in buildDefinitionsByProjectCollection)
            {
                var projectCollection = buildDefinitionGroup.Key;
                var buildQueryParams  = GetBuildQueryParams(buildDefinitionGroup.ToArray());
                var projects          = await _tfsJsonService.GetBuildsStatuses(connection, buildQueryParams, projectCollection);

                await _commentsCache.FetchNewComments(projects, connection, tfsJsonBuilds => GetComment(tfsJsonBuilds, connection, projectCollection));

                var buildStatuses = projects.Select(i => new TfsRestBuildStatus(i, _commentsCache));
                resultingBuildStatuses.AddRange(buildStatuses);
            }
            return(resultingBuildStatuses);
        }
        private CommentsCache GetCommentsCache(int buildDefinitionId, int buildId, string comment)
        {
            var commentsCache = new CommentsCache();

            var projects = GetTfsJsonBuilds(buildDefinitionId, buildId);
            commentsCache.FetchNewComments(projects, new TfsConnectionDetails(), GetCommentFunc(comment)).Wait();
            return commentsCache;
        }