public void ThrowsIfMatchNotFound() { var repository = Repository.CreatePopulatedRepository(); var service = new MatchService(repository, null); var match = repository.GetUnresolvedMatchesByBoardId(1).First(); Assert.Throws<ServiceException>(() => service.RejectMatch(match.Board.BoardId, 9999, match.Loser.Name)); }
public void ThrowsIfNotSubmitterOrLoserOrAdmin() { var repository = Repository.CreatePopulatedRepository(); var service = new MatchService(repository, null); var match = repository.GetUnresolvedMatchesByBoardId(1).First(); var profile = new UserProfile {UserName = "******", UserId = 999}; var nonParticipant = new Competitor { CompetitorId = 999, Name = "Joe Shmoe", Rating = 1500, ProfileUserId = 999}; repository.Add(profile); repository.Add(nonParticipant); repository.CommitChanges(); Assert.Throws<ServiceException>(() => service.RejectMatch(match.Board.BoardId, match.MatchId, nonParticipant.Name)); }
public void ThrowsIfResolved() { var repository = Repository.CreatePopulatedRepository(); var service = new MatchService(repository, null); var match = repository.Matches.First(x => x.Board.BoardId == 1 && x.Resolved.HasValue); Assert.Throws<ServiceException>(() => service.RejectMatch(match.Board.BoardId, match.MatchId, match.Loser.Name)); }
public void LoserCanReject() { var repository = Repository.CreatePopulatedRepository(); var service = new MatchService(repository, new Mock<IMailService>().Object); var match = repository.GetUnresolvedMatchesByBoardId(1).First(); Assert.DoesNotThrow(() => service.RejectMatch(match.Board.BoardId, 1, match.Loser.Profile.UserName)); }