public async Task GetProjectGroupsAsync_ProjectNotFound_NotFoundError() { // Arrange var cxn = new SqlConnectionWrapperMock(); var repository = new SqlGroupRepository(cxn.Object); var projectId = 1; var tabularData = new TabularData { Pagination = new Pagination { Limit = 10, Offset = 0 }, Sorting = new Sorting { Order = SortOrder.Asc, Sort = "name" } }; int errorCode = 50016; // there are no project for this projectId Group[] projectGroups = { }; cxn.SetupQueryAsync("GetAvailableGroupsForProject", new Dictionary <string, object> { { "projectId", projectId } }, projectGroups, new Dictionary <string, object> { { "ErrorCode", errorCode } }); // Act await repository.GetProjectGroupsAsync(projectId, tabularData); }
public async Task GetProjectGroupsAsync_GroupsFound_NoErrors() { // Arrange var cxn = new SqlConnectionWrapperMock(); var repository = new SqlGroupRepository(cxn.Object); var projectId = 100; int errorCode = 0; Group[] projectGroups = { new Group() { Name = "Group1" }, new Group() { Name = "Group2" }, new Group() { Name = "Group3" } }; var tabularData = new TabularData { Pagination = new Pagination { Limit = 10, Offset = 0 }, Sorting = new Sorting { Order = SortOrder.Asc, Sort = "name" } }; cxn.SetupQueryAsync("GetAvailableGroupsForProject", new Dictionary <string, object> { { "projectId", projectId } }, projectGroups, new Dictionary <string, object> { { "ErrorCode", errorCode } }); // Act await repository.GetProjectGroupsAsync(projectId, tabularData, SortingHelper.SortProjectGroups); // Assert cxn.Verify(); }