public async Task Should_ReturnTeamObject_When_PassValidTeamId() { // Arrange IRepository <Team> repository = new Repository <Team>(_fixture.Context); var handler = new GetTeamHandler(repository, _mapper, _logger); var query = new GetTeamQuery(teamId: 1, companyId: 1, userId: 1); // Act var tcs = new CancellationToken(); var result = await handler.Handle(query, tcs); // Assert Assert.Equal(1, result.TeamId); Assert.Equal(1, result.CompanyId); Assert.NotNull(result.TeamMembers); }
public async Task Should_ThrowException_When_TeamIdDoesNotBelongsToCompany() { // Arrange IRepository <Team> repository = new Repository <Team>(_fixture.Context); var handler = new GetTeamHandler(repository, _mapper, _logger); var query = new GetTeamQuery(teamId: 1, companyId: 2, userId: 1); // Act var tcs = new CancellationToken(); var exception = await Assert.ThrowsAsync <VacationTrackingException>(async() => { await handler.Handle(query, tcs); }); // Assert Assert.NotNull(exception); Assert.Equal(404, exception.Code); }
public async Task Should_ReturnOnlyActiveMember_When_TeamHasDisabledMember() { // Arrange var user = new User() { UserName = "******", CompanyId = 1, CreatedAt = DateTime.Now, CreatedBy = -1, AccountType = AccountType.Member, Status = UserStatus.Disabled, FullName = "Test User", Email = "*****@*****.**", UserId = 10 }; var teamMember = new TeamMember() { TeamId = 1, UserId = 10, IsApprover = true, IsMember = false }; _fixture.Context.Users.Add(user); _fixture.Context.TeamMembers.Add(teamMember); _fixture.Context.SaveChanges(); IRepository <Team> repository = new Repository <Team>(_fixture.Context); var handler = new GetTeamHandler(repository, _mapper, _logger); var query = new GetTeamQuery(teamId: 1, companyId: 1, userId: 1); // Act var tcs = new CancellationToken(); var result = await handler.Handle(query, tcs); // Assert Assert.All(result.TeamMembers, item => Assert.NotEqual(10, item.UserId)); }