Exemplo n.º 1
0
        private IEnumerable <BurndownNode> GetMetricNodes(Sprint latestSprint, IReadOnlyCollection <Card> sprintCards)
        {
            var today        = Calendar.GetCurrentUtcDateTime();
            var iterationDay = latestSprint.BeginsAt;

            while (latestSprint.ContainsDate(iterationDay) && iterationDay <= today)
            {
                yield return(new BurndownNode(
                                 iterationDay,
                                 sprintCards.Count(card => !card.ClosedAt.HasValue || card.ClosedAt > iterationDay)));

                iterationDay = iterationDay.AddDays(1);
            }
        }
Exemplo n.º 2
0
        public IEnumerable <Sprint> GetProjectSprints(int projectId)
        {
            var project = GetProject(projectId);
            var iterationSprntBeginingDay = project.BeginSprintsAt;
            var today = Calendar.GetCurrentUtcDateTime();

            while (iterationSprntBeginingDay <= today)
            {
                yield return(new Sprint(
                                 id: iterationSprntBeginingDay.DayOfYear,
                                 beginAt: iterationSprntBeginingDay,
                                 length: project.SprintLength));

                iterationSprntBeginingDay = iterationSprntBeginingDay.AddDays(project.SprintLength);
            }
        }
Exemplo n.º 3
0
        private IEnumerable <VelocityNode> GetMetricNodes(
            Sprint latestSprint,
            IReadOnlyCollection <Swimlane> swimlanes,
            IReadOnlyCollection <Card> sprintCards)
        {
            var today        = Calendar.GetCurrentUtcDateTime();
            var iterationDay = latestSprint.BeginsAt;

            while (latestSprint.ContainsDate(iterationDay) && iterationDay <= today)
            {
                yield return(new VelocityNode(
                                 iterationDay,
                                 swimlanes.ToDictionary(
                                     keySelector: swimlane => swimlane,
                                     elementSelector: swimlane => sprintCards
                                     .Where(card => card.ClosedAt <= iterationDay)
                                     .Count(card => card.Labels.Contains(swimlane.MappedAlias)))));

                iterationDay = iterationDay.AddDays(1);
            }
        }