/// <summary> /// Creates the search criteria for rejected assessments, optionally applying pagination. /// </summary> /// <param name="baseCriteria">The pagination options.</param> /// <returns>The search criteria for rejected assessments.</returns> private AssessmentSearchCriteria CreateRejectedCriteria(BaseSearchCriteria baseCriteria = null) { var criteria = new AssessmentSearchCriteria(); CopyCriteria(baseCriteria, criteria); if (CurrentUser.Role == Role.Owner) { criteria.ApprovalStatuses = new List <ApprovalStatus> { ApprovalStatus.Rejected }; criteria.SubmitterUsernames = new List <string> { CurrentUser.Username }; } else if (CurrentUser.Role == Role.BUFunctionalApprover || CurrentUser.Role == Role.BURiskManagementApprover || CurrentUser.Role == Role.DivisionalRiskManagementApprover) { criteria.RejecterUsername = CurrentUser.Username; } else if (CurrentUser.Role == Role.Admin) { criteria.ApprovalStatuses = new List <ApprovalStatus> { ApprovalStatus.Rejected }; } return(criteria); }
public void TestSearchAccuracy2() { // arrange var criteria = new AssessmentSearchCriteria { ApprovalStatuses = new List <ApprovalStatus> { ApprovalStatus.Draft, ApprovalStatus.Approved, ApprovalStatus.AwaitingBUFunctionalApproval, ApprovalStatus.AwaitingBURiskManagementApproval }, ApproverUsernames = new List <string> { "CoeusBUFuncApp1", "CoeusDivManager", "CoeusAdminUser" }, BusinessUnitIds = new List <long> { 1, 2, 3 } }; // act SearchResult <Assessment> result = instance.Search(criteria); // assert AssertResult(result); }
public void TestGetCountAccuracy2() { // arrange var criteria = new AssessmentSearchCriteria { ApprovalStatuses = new List <ApprovalStatus> { ApprovalStatus.Draft, ApprovalStatus.Approved, ApprovalStatus.AwaitingBUFunctionalApproval, ApprovalStatus.AwaitingBURiskManagementApproval }, ApproverUsernames = new List <string> { "CoeusBUFuncApp1", "CoeusDivManager", "CoeusAdminUser" }, BusinessUnitIds = new List <long> { 1, 2, 3 } }; // act int result = instance.GetCount(criteria); // assert Assert.AreEqual(2, result, "Count is incorrect."); }
/// <summary> /// Copies the pagination options from <paramref name="baseCriteria"/> to <paramref name="criteria"/>. /// </summary> /// <param name="baseCriteria">The pagination options.</param> /// <param name="criteria">The assessment search criteria.</param> private static void CopyCriteria(BaseSearchCriteria baseCriteria, AssessmentSearchCriteria criteria) { if (baseCriteria != null) { criteria.PageNumber = baseCriteria.PageNumber; criteria.PageSize = baseCriteria.PageSize; criteria.SortBy = baseCriteria.SortBy; criteria.SortType = baseCriteria.SortType; } }
public void TestGetCountAccuracy1() { // arrange var criteria = new AssessmentSearchCriteria { }; // act int result = instance.GetCount(criteria); // assert Assert.AreEqual(10, result, "Count is incorrect."); }
/// <summary> /// Creates the search criteria for awaiting approval assessments, optionally applying pagination. /// </summary> /// <param name="baseCriteria">The pagination options.</param> /// <returns>The search criteria for awaiting approval assessments.</returns> private AssessmentSearchCriteria CreateAwaitingApprovalCriteria(BaseSearchCriteria baseCriteria = null) { var criteria = new AssessmentSearchCriteria(); CopyCriteria(baseCriteria, criteria); if (CurrentUser.Role == Role.Owner) { criteria.SubmitterUsernames = new List <string> { CurrentUser.Username }; criteria.ApprovalStatuses = new List <ApprovalStatus> { ApprovalStatus.AwaitingBUFunctionalApproval, ApprovalStatus.AwaitingBURiskManagementApproval, ApprovalStatus.AwaitingDivisionalRiskManagementApproval }; } else if (CurrentUser.Role == Role.BUFunctionalApprover) { criteria.DepartmentHeaderOrFunctionalAreaOwner = CurrentUser.Username; criteria.ApprovalStatuses = new List <ApprovalStatus> { ApprovalStatus.AwaitingBUFunctionalApproval }; } else if (CurrentUser.Role == Role.BURiskManagementApprover) { criteria.BusinessUnitIds = GetBusinessUnitIds().ToList(); criteria.ApprovalStatuses = new List <ApprovalStatus> { ApprovalStatus.AwaitingBURiskManagementApproval }; } else if (CurrentUser.Role == Role.DivisionalRiskManagementApprover) { criteria.ApprovalStatuses = new List <ApprovalStatus> { ApprovalStatus.AwaitingDivisionalRiskManagementApproval }; } else if (CurrentUser.Role == Role.Admin) { criteria.ApprovalStatuses = new List <ApprovalStatus> { ApprovalStatus.AwaitingBUFunctionalApproval, ApprovalStatus.AwaitingBURiskManagementApproval, ApprovalStatus.AwaitingDivisionalRiskManagementApproval }; } return(criteria); }
public void TestSearchAccuracy1() { // arrange var criteria = new AssessmentSearchCriteria { }; // act SearchResult <Assessment> result = instance.Search(criteria); // assert AssertResult(result); }
public void TestSearchAccuracy6() { // arrange var criteria = new AssessmentSearchCriteria { RejecterUsername = "******" }; // act SearchResult <Assessment> result = instance.Search(criteria); // assert AssertResult(result); }
public void TestGetCountAccuracy6() { // arrange var criteria = new AssessmentSearchCriteria { RejecterUsername = "******" }; // act int result = instance.GetCount(criteria); // assert Assert.AreEqual(1, result, "Count is incorrect."); }
public void TestSearchAccuracy3() { // arrange var criteria = new AssessmentSearchCriteria { BURiskManagementApproverUsername = "******", DivisionRiskManagementApproverUsername = "******", }; // act SearchResult <Assessment> result = instance.Search(criteria); // assert AssertResult(result); }
public void TestGetCountAccuracy7() { // arrange var criteria = new AssessmentSearchCriteria { DepartmentHeaderOrFunctionalAreaOwner = "CoeusBUFuncApp1", Title = "itle1" }; // act int result = instance.GetCount(criteria); // assert Assert.AreEqual(4, result, "Count is incorrect."); }
public void TestSearchAccuracy7() { // arrange var criteria = new AssessmentSearchCriteria { DepartmentHeaderOrFunctionalAreaOwner = "FunctionalAreaOwner4", Title = "itle1" }; // act SearchResult <Assessment> result = instance.Search(criteria); // assert AssertResult(result); }
public void TestGetCountAccuracy3() { // arrange var criteria = new AssessmentSearchCriteria { BURiskManagementApproverUsername = "******", DivisionRiskManagementApproverUsername = "******", }; // act int result = instance.GetCount(criteria); // assert Assert.AreEqual(3, result, "Count is incorrect."); }
public SearchResult <Assessment> Search([FromUri] AssessmentSearchCriteria criteria) { criteria = criteria ?? new AssessmentSearchCriteria(); criteria.ApproverUsernames = GetUsernames(criteria.ApproverRealName); criteria.SubmitterUsernames = GetUsernames(criteria.SubmitterRealName); criteria.DepartmentHeaderOrFunctionalAreaOwner = null; if (CurrentUser.Role == Role.Owner) { criteria.SubmitterUsernames = new List <string> { CurrentUser.Username }; } else if (CurrentUser.Role == Role.BUFunctionalApprover) { criteria.ApprovalStatuses = new List <ApprovalStatus> { ApprovalStatus.AwaitingBUFunctionalApproval, ApprovalStatus.AwaitingBURiskManagementApproval, ApprovalStatus.AwaitingDivisionalRiskManagementApproval, ApprovalStatus.Approved }; criteria.DepartmentHeaderOrFunctionalAreaOwner = CurrentUser.Username; } else if (CurrentUser.Role == Role.BURiskManagementApprover) { criteria.ApprovalStatuses = new List <ApprovalStatus> { ApprovalStatus.AwaitingBURiskManagementApproval, ApprovalStatus.AwaitingDivisionalRiskManagementApproval, ApprovalStatus.Approved }; criteria.BusinessUnitIds = GetBusinessUnitIds().ToList(); } else if (CurrentUser.Role == Role.DivisionalRiskManagementApprover) { criteria.ApprovalStatuses = new List <ApprovalStatus> { ApprovalStatus.AwaitingDivisionalRiskManagementApproval, ApprovalStatus.Approved }; } return(AssessmentService.Search(criteria)); }
public void TestSearchAccuracy4() { // arrange var criteria = new AssessmentSearchCriteria { BUFunctionalApproverUsername = "******", PageNumber = 2, PageSize = 2, SortBy = "ApprovalStatus", SortType = SortType.Descending }; // act SearchResult <Assessment> result = instance.Search(criteria); // assert AssertResult(result); }
public void TestGetCountAccuracy4() { // arrange var criteria = new AssessmentSearchCriteria { BUFunctionalApproverUsername = "******", PageNumber = 2, PageSize = 2, SortBy = "ApprovalStatus", SortType = SortType.Descending }; // act int result = instance.GetCount(criteria); // assert Assert.AreEqual(5, result, "Count is incorrect."); }
/// <summary> /// Creates the search criteria for draft assessments, optionally applying pagination. /// </summary> /// <param name="baseCriteria">The pagination options.</param> /// <returns>The search criteria for draft assessments.</returns> private AssessmentSearchCriteria CreateDraftCriteria(BaseSearchCriteria baseCriteria = null) { var criteria = new AssessmentSearchCriteria(); CopyCriteria(baseCriteria, criteria); criteria.ApprovalStatuses = new List <ApprovalStatus> { ApprovalStatus.Draft }; if (CurrentUser.Role == Role.Owner) { // approvers cannot access this method criteria.SubmitterUsernames = new List <string> { CurrentUser.Username }; } return(criteria); }
public void TestSearchAccuracy5() { // arrange var criteria = new AssessmentSearchCriteria { SubmitDateStart = new DateTime(2016, 3, 1), SubmitDateEnd = new DateTime(2016, 4, 30), SubmitterUsernames = new List <string> { "CoeusOwnerUser1" }, PageNumber = 1, PageSize = 2, SortBy = "SubmitTime", SortType = SortType.Ascending }; // act SearchResult <Assessment> result = instance.Search(criteria); // assert AssertResult(result); }
public void TestGetCountAccuracy5() { // arrange var criteria = new AssessmentSearchCriteria { SubmitDateStart = new DateTime(2016, 3, 1), SubmitDateEnd = new DateTime(2016, 4, 30), SubmitterUsernames = new List <string> { "CoeusOwnerUser1" }, PageNumber = 1, PageSize = 2, SortBy = "SubmitTime", SortType = SortType.Ascending }; // act int result = instance.GetCount(criteria); // assert Assert.AreEqual(4, result, "Count is incorrect."); }
public SearchResult <Assessment> GetRejectedAssessments([FromUri] BaseSearchCriteria criteria) { AssessmentSearchCriteria assessmentCriteria = CreateRejectedCriteria(criteria); return(AssessmentService.Search(assessmentCriteria)); }
public SearchResult <Assessment> GetAwaitingApprovalAssessments([FromUri] BaseSearchCriteria criteria) { AssessmentSearchCriteria assessmentCriteria = CreateAwaitingApprovalCriteria(criteria); return(AssessmentService.Search(assessmentCriteria)); }
public int GetRejectedCount() { AssessmentSearchCriteria criteria = CreateRejectedCriteria(); return(AssessmentService.GetCount(criteria)); }
public int GetAwaitingApprovalCount() { AssessmentSearchCriteria criteria = CreateAwaitingApprovalCriteria(); return(AssessmentService.GetCount(criteria)); }
public int GetDraftCount() { AssessmentSearchCriteria criteria = CreateDraftCriteria(); return(AssessmentService.GetCount(criteria)); }