public void Delete_Test() { ParentTask pTask = new ParentTask(); pTask.ParentId = 1; pTask.TaskName = "ABCD"; var ptasks = new List <ParentTask>(); ptasks.Add(pTask); var t = ptasks.AsQueryable(); //var mockSet = new Mock<DbSet<Task_Table>>(); var mockSet = new Mock <DbSet <ParentTask> >(); mockSet.As <IQueryable <ParentTask> >().Setup(m => m.Provider).Returns(t.Provider); mockSet.As <IQueryable <ParentTask> >().Setup(m => m.Expression).Returns(t.Expression); mockSet.As <IQueryable <ParentTask> >().Setup(m => m.ElementType).Returns(t.ElementType); mockSet.As <IQueryable <ParentTask> >().Setup(m => m.GetEnumerator()).Returns(t.GetEnumerator()); var mockTaskMangerContext = new Mock <ProjectmanagerContext>(); mockTaskMangerContext.Setup(c => c.ParentTasks).Returns(mockSet.Object); mockTaskMangerContext.Setup(c => c.Set <ParentTask>()).Returns(mockSet.Object); mockTaskMangerContext.Setup(c => c.Set <ParentTask>().Remove(pTask)); mockTaskMangerContext.Setup(p => p.SaveChanges()); var objTestTaskrepo = new ProjectManagerRepository <ParentTask>(mockTaskMangerContext.Object); objTestTaskrepo.Delete(pTask); mockTaskMangerContext.Verify(mock => mock.Set <ParentTask>().Remove(pTask), Times.Once()); }
public async Task <IHttpActionResult> Delete(int id) { ProjectManager projectManager = await projectManagerRepository.FindByCondition(item => item.Id == id).FirstOrDefaultAsync(); if (projectManager == null) { return(Content(HttpStatusCode.NotFound, "Manager not found")); } User user = await userRepository.FindByCondition(item => item.Id == projectManager.UserId).FirstOrDefaultAsync(); if (user == null) { return(Content(HttpStatusCode.NotFound, "User not found")); } projectManagerRepository.Delete(projectManager); userRepository.Delete(user); await db.SaveChangesAsync(); return(Ok()); }