public void GetProjectsOfUser_ThrowsNotFoundExceptionIfRequestedUserDoesNotExist() { _userRepoMock.Setup(r => r.ExistsWithId("no-user")).ReturnsAsync(false); UserBl bl = new UserBl(_userRepoMock.Object, _mapper, _puRepoMock.Object); Assert.ThrowsAsync <NotFoundResponseException>(async() => await bl.GetProjectsOfUser("user", "no-user")).Wait(); }
public void GetProjectsOfUser_ForTheSameUser_CallsOnceGetProjectsFromRepo() { _userRepoMock.Setup(r => r.ExistsWithId(user1.Id)).ReturnsAsync(true); _puRepoMock.Setup(r => r.GetProjectsOfUser(user1.Id)).ReturnsAsync(projectsForUser1); UserBl bl = new UserBl(_userRepoMock.Object, _mapper, _puRepoMock.Object); var projs = bl.GetProjectsOfUser(user1.Id, user1.Id).Result; _puRepoMock.Verify(r => r.GetProjectsOfUser(user1.Id), Times.Once); }
public void GetProjectsOfUser_ForTwoUsers_ReturnsEmptyResultIfNoCommonProjects() { _userRepoMock.Setup(r => r.ExistsWithId(user3.Id)).ReturnsAsync(true); _puRepoMock.Setup(r => r.GetProjectsOfUser(user1.Id)).ReturnsAsync(projectsForUser1); _puRepoMock.Setup(r => r.GetProjectsOfUser(user3.Id)).ReturnsAsync(projectsForUser3); UserBl bl = new UserBl(_userRepoMock.Object, _mapper, _puRepoMock.Object); var projs = bl.GetProjectsOfUser(user1.Id, user3.Id).Result.ToList(); Assert.Empty(projs); }
public void GetProjectsOfUser_ForTwoUsers_ReturnsCommonProjects() { _userRepoMock.Setup(r => r.ExistsWithId(user2.Id)).ReturnsAsync(true); _puRepoMock.Setup(r => r.GetProjectsOfUser(user1.Id)).ReturnsAsync(projectsForUser1); _puRepoMock.Setup(r => r.GetProjectsOfUser(user2.Id)).ReturnsAsync(projectsForUser2); UserBl bl = new UserBl(_userRepoMock.Object, _mapper, _puRepoMock.Object); var projs = bl.GetProjectsOfUser(user1.Id, user2.Id).Result.ToList(); foreach (var pd in projs) { Assert.True(projectsForUser1.Any(p => p.Id == pd.Id) && projectsForUser2.Any(p => p.Id == pd.Id)); } }
public void GetProjectsOfUser_ForTheSameUser_ReturnsAllItsProjects() { _userRepoMock.Setup(r => r.ExistsWithId(user1.Id)).ReturnsAsync(true); _puRepoMock.Setup(r => r.GetProjectsOfUser(user1.Id)).ReturnsAsync(projectsForUser1); UserBl bl = new UserBl(_userRepoMock.Object, _mapper, _puRepoMock.Object); var projs = bl.GetProjectsOfUser(user1.Id, user1.Id).Result.ToList(); Assert.Equal(projectsForUser1.Count(), projs.Count()); for (int i = 0; i < projectsForUser1.Count(); ++i) { Assert.Equal(projectsForUser1[i].Id, projs[i].Id); } }