public void Test_For_Search_Projects(string searchText, bool exactMatch) { // Arrange var tasksList = new Models.ViewModels.Task[] { new Models.ViewModels.Task() { ProjectId = 1, ProjectName = "TestProject-1", TaskOwnerId = Guid.NewGuid(), Priority = 10, TaskId = 10, TaskName = "TestTask1" }, new Models.ViewModels.Task() { ProjectId = 2, ProjectName = "TestProject-2", TaskOwnerId = Guid.NewGuid(), Priority = 5, TaskId = 11, TaskName = "TestTask2" }, new Models.ViewModels.Task() { ProjectId = 3, ProjectName = "TestProject-3", TaskOwnerId = Guid.NewGuid(), Priority = 15, TaskId = 9, TaskName = "TestTask3" }, new Models.ViewModels.Task() { ProjectId = 4, ProjectName = "TestProject-4", TaskOwnerId = Guid.NewGuid(), Priority = 20, TaskId = 7, TaskName = "TestTask4" }, new Models.ViewModels.Task() { ProjectId = 5, ProjectName = "TestProject-5", TaskOwnerId = Guid.NewGuid(), Priority = 30, TaskId = 5, TaskName = "TestTask5", ParentTaskName = "TestParentTask1", ParentTaskId = 200 }, new Models.ViewModels.Task() { ProjectId = 5, ProjectName = "TestProject-5", TaskOwnerId = Guid.NewGuid(), Priority = 30, TaskId = 5, TaskName = "TestTask6", ParentTaskName = "TestParentTask1", ParentTaskId = 200 }, new Models.ViewModels.Task() { ProjectId = 5, ProjectName = "TestProject-5", TaskOwnerId = Guid.NewGuid(), Priority = 30, TaskId = 5, TaskName = "TestTask7", ParentTaskName = "TestParentTask2", ParentTaskId = 202 }, }.AsEnumerable(); IEnumerable <Models.ViewModels.Task> expectedResult; if (exactMatch) { expectedResult = tasksList.Where(p => p.ProjectName.ToLower().Equals(searchText.ToLower())); } else { expectedResult = tasksList; } mockTaskRepo.Setup(repo => repo.Search(It.IsAny <System.Linq.Expressions.Expression <Func <Models.DataModels.Task, bool> > >())).Returns(expectedResult.AsDataModel()); // Act var actualResult = tasksLogicTest.Search(searchText, exactMatch); // Assert Assert.NotNull(actualResult); Assert.Equal(expectedResult.Count(), actualResult.Count()); }
public void Test_For_GetUserProjectTasks() { // Arrange Guid testUserGuid = Guid.NewGuid(); int testProjectId = 10; var tasksList = new Models.ViewModels.Task[] { new Models.ViewModels.Task() { ProjectId = 10, ProjectName = "TestProject-10", TaskOwnerId = testUserGuid, Priority = 10, TaskId = 10, TaskName = "TestTask1" }, new Models.ViewModels.Task() { ProjectId = 2, ProjectName = "TestProject-2", TaskOwnerId = Guid.NewGuid(), Priority = 5, TaskId = 11, TaskName = "TestTask2" }, new Models.ViewModels.Task() { ProjectId = 10, ProjectName = "TestProject-10", TaskOwnerId = testUserGuid, Priority = 15, TaskId = 9, TaskName = "TestTask3" }, new Models.ViewModels.Task() { ProjectId = 4, ProjectName = "TestProject-4", TaskOwnerId = Guid.NewGuid(), Priority = 20, TaskId = 7, TaskName = "TestTask4" }, new Models.ViewModels.Task() { ProjectId = 5, ProjectName = "TestProject-5", TaskOwnerId = testUserGuid, Priority = 30, TaskId = 5, TaskName = "TestTask5", ParentTaskName = "TestParentTask1", ParentTaskId = 200 }, new Models.ViewModels.Task() { ProjectId = 10, ProjectName = "TestProject-10", TaskOwnerId = testUserGuid, Priority = 30, TaskId = 5, TaskName = "TestTask6", ParentTaskName = "TestParentTask1", ParentTaskId = 200 }, new Models.ViewModels.Task() { ProjectId = 5, ProjectName = "TestProject-5", TaskOwnerId = testUserGuid, Priority = 30, TaskId = 5, TaskName = "TestTask7", ParentTaskName = "TestParentTask2", ParentTaskId = 202 }, }.AsEnumerable(); IEnumerable <Models.ViewModels.Task> expectedResult; expectedResult = tasksList.Where(p => p.TaskOwnerId == testUserGuid && p.ProjectId == testProjectId); mockTaskRepo.Setup(repo => repo.Search(It.IsAny <System.Linq.Expressions.Expression <Func <Models.DataModels.Task, bool> > >())).Returns(expectedResult.AsDataModel()); // Act var actualResult = tasksLogicTest.GetUserProjectTasks("TestUser1", testProjectId); // Assert Assert.Equal(expectedResult.Count(), actualResult.Count()); }
public void Test_Get_User_Project_Tasks() { // Arrange string testUserId = "User1Test"; int testProjectId = 100; var testUserGuid = Guid.NewGuid(); var mockedTaskList = new Models.ViewModels.Task[] { new Models.ViewModels.Task() { TaskId = 1, TaskName = "TestTask-1", Priority = 5, TaskOwnerId = testUserGuid, OwnerFullName = "User1Test", ProjectId = 100 }, new Models.ViewModels.Task() { TaskId = 2, TaskName = "TestTask-2", Priority = 15, TaskOwnerId = testUserGuid, OwnerFullName = "User1Test", ProjectId = 100 }, new Models.ViewModels.Task() { TaskId = 16, TaskName = "TestTask-16", Priority = 25, TaskOwnerId = testUserGuid, OwnerFullName = "User1Test", ProjectId = 200 }, new Models.ViewModels.Task() { TaskId = 20, TaskName = "TestTask-20", Priority = 10, TaskOwnerId = testUserGuid, OwnerFullName = "User1Test", ProjectId = 250 }, }; var expectedTasksResult = mockedTaskList.Where(p => p.ProjectId == testProjectId); mockTaskLogic.Setup(api => api.GetUserProjectTasks(testUserId, testProjectId)).Returns(expectedTasksResult); // Act var actualResult = mockController.GetAllTasksForUserByProject(testUserId, testProjectId); var actualData = (OkObjectResult)actualResult; // Assert Assert.Equal(StatusCodes.Status200OK, actualData.StatusCode); Assert.Equal(expectedTasksResult.Count(), (actualData.Value as IEnumerable <Models.ViewModels.Task>).Count()); }