private ExpectedValuesContainer SetupVictoria(TeamMemberViewModel victoria) { var workitemsForVictoria = new WorkItemTestDataContainer(new[] { CreateBug(), CreateTask() }); SetupGetWorkitems(victoria.Id, workitemsForVictoria.WorkItems); SetupClassify(workitemsForVictoria); var expectedValuesForVictoria = new ExpectedValuesContainer(new Dictionary <string, object> { { nameof(AggregatedWorkitemsETAReport.IndividualETAReport.TotalResolved), 0 }, { nameof(AggregatedWorkitemsETAReport.IndividualETAReport.CompletedWithEstimates), workitemsForVictoria.ExpectedDuration }, { nameof(AggregatedWorkitemsETAReport.IndividualETAReport.CompletedWithoutEstimates), 0 }, { nameof(AggregatedWorkitemsETAReport.IndividualETAReport.EstimatedToComplete), workitemsForVictoria.ExpectedEstimatedToComplete }, { nameof(AggregatedWorkitemsETAReport.IndividualETAReport.OriginalEstimated), workitemsForVictoria.ExpectedOriginalEstimate }, { nameof(AggregatedWorkitemsETAReport.IndividualETAReport.WithOriginalEstimate), 0 }, { nameof(AggregatedWorkitemsETAReport.IndividualETAReport.WithoutETA), 0 }, { nameof(AggregatedWorkitemsETAReport.IndividualETAReport.TotalResolvedBugs), 0 }, { nameof(AggregatedWorkitemsETAReport.IndividualETAReport.TotalResolvedTasks), 0 }, { nameof(AggregatedWorkitemsETAReport.IndividualETAReport.MemberEmail), victoria.Email }, { nameof(AggregatedWorkitemsETAReport.IndividualETAReport.MemberName), victoria.DisplayName }, { nameof(AggregatedWorkitemsETAReport.IndividualETAReport.Details), 0 } }); return(expectedValuesForVictoria); }
private ExpectedValuesContainer SetupJim(TeamMemberViewModel jim) { var workitemsForJim = new WorkItemTestDataContainer(new[] { CreateBug().WithNormalLifecycle(jim, 3).WithETA(0, 5, 0), CreateTask().WithNormalLifecycle(jim, 5).WithETA(0, 2, 0) }); SetupGetWorkitems(jim.Id, workitemsForJim.WorkItems); SetupClassify(workitemsForJim); var expectedValuesForJim = new ExpectedValuesContainer(new Dictionary <string, object> { { nameof(AggregatedWorkitemsETAReport.IndividualETAReport.TotalResolved), 2 }, { nameof(AggregatedWorkitemsETAReport.IndividualETAReport.CompletedWithEstimates), workitemsForJim.ExpectedDuration }, { nameof(AggregatedWorkitemsETAReport.IndividualETAReport.CompletedWithoutEstimates), 0 }, { nameof(AggregatedWorkitemsETAReport.IndividualETAReport.EstimatedToComplete), workitemsForJim.ExpectedEstimatedToComplete }, { nameof(AggregatedWorkitemsETAReport.IndividualETAReport.OriginalEstimated), workitemsForJim.ExpectedOriginalEstimate }, { nameof(AggregatedWorkitemsETAReport.IndividualETAReport.WithOriginalEstimate), 0 }, { nameof(AggregatedWorkitemsETAReport.IndividualETAReport.WithoutETA), 0 }, { nameof(AggregatedWorkitemsETAReport.IndividualETAReport.TotalResolvedBugs), 1 }, { nameof(AggregatedWorkitemsETAReport.IndividualETAReport.TotalResolvedTasks), 1 }, { nameof(AggregatedWorkitemsETAReport.IndividualETAReport.MemberEmail), jim.Email }, { nameof(AggregatedWorkitemsETAReport.IndividualETAReport.MemberName), jim.DisplayName }, { nameof(AggregatedWorkitemsETAReport.IndividualETAReport.Details), 2 } }); return(expectedValuesForJim); }
public async Task ShouldCountEstimatedTimeAndDuration() { var emmy = Builder <TeamMemberViewModel> .CreateNew() .Build(); var profile = Builder <ProfileViewModel> .CreateNew() .With(p => p.Members, new[] { emmy.Id }) .Build(); SetupGetProfile(profile); SetupGetTeamMember(new[] { emmy }); var workitemsForEmmy = new WorkItemTestDataContainer(new[] { CreateBug().WithNormalLifecycle(emmy, 3).WithETA(2, 5, 1), CreateTask().WithNormalLifecycle(emmy, 1).WithETA(0, 2, 1), CreateBug().WithNormalLifecycle(emmy, 2).WithETA(0, 7, 0), CreateTask().WithNormalLifecycle(emmy, 5).WithETA(3, 0, 1), CreateBug().WithNormalLifecycle(emmy, 4).WithETA(6, 0, 2), CreateBug().WithNormalLifecycle(emmy, 1), CreateBug().WithNormalLifecycle(emmy, 9) }); SetupGetWorkitems(emmy.Id, workitemsForEmmy.WorkItems); SetupClassify(workitemsForEmmy); await InvokeAndVerify <AggregatedWorkitemsETAReport>(Command, (report, reportId) => { report.IndividualReports.Should().HaveCount(1); var individualReport = report.IndividualReports[0]; individualReport.CompletedWithEstimates.Should().Be(15); individualReport.CompletedWithoutEstimates.Should().Be(10); individualReport.EstimatedToComplete.Should().Be(19); individualReport.OriginalEstimated.Should().Be(11); }); }
public async Task ShouldCountTotalResolvedBugsAndTasks() { var emmy = Builder <TeamMemberViewModel> .CreateNew() .Build(); var profile = Builder <ProfileViewModel> .CreateNew() .With(p => p.Members, new[] { emmy.Id }) .Build(); SetupGetProfile(profile); SetupGetTeamMember(new[] { emmy }); var workitemsForEmmy = new WorkItemTestDataContainer(new[] { CreateBug().WithNormalLifecycle(emmy, 3).WithETA(0, 5, 0), CreateTask().WithNormalLifecycle(emmy, 1), CreateBug().WithNormalLifecycle(emmy, 2), CreateTask().WithNormalLifecycle(emmy, 5), CreateBug().WithNormalLifecycle(emmy, 4).WithETA(0, 7, 0) }); SetupGetWorkitems(emmy.Id, workitemsForEmmy.WorkItems); SetupClassify(workitemsForEmmy); await InvokeAndVerify <AggregatedWorkitemsETAReport>(Command, (report, reportId) => { report.IndividualReports.Should().HaveCount(1); var individualReport = report.IndividualReports[0]; individualReport.TotalResolved.Should().Be(5); individualReport.TotalResolvedBugs.Should().Be(3); individualReport.TotalResolvedTasks.Should().Be(2); }); }
private void SetupClassify(WorkItemTestDataContainer dataContainer) { _classificationContextMock.Setup(c => c.Classify(It.Is <WorkItemViewModel>(w => dataContainer.WorkItems.Any(wi => wi.WorkItemId == w.WorkItemId)), It.IsAny <ClassificationScope>())) .Returns <WorkItemViewModel, ClassificationScope>((wi, _) => dataContainer.ResolutionsById(wi.WorkItemId)); }