예제 #1
0
 public void ThrowsIfOpponentNotFound()
 {
     var repository = Repository.CreatePopulatedRepository();
     var service = new MatchService(repository, null);
     
     Assert.Throws<ServiceException>(() => service.GenerateMatch(1, "User1", "User3"));
 }
예제 #2
0
        public void ThrowsIfBoardDoesNotExist()
        {
            var repository = Repository.CreatePopulatedRepository();
            var service = new MatchService(repository, null);

            Assert.Throws<ServiceException>(() => service.GenerateMatch(100, "User1", "User3"));
        }
예제 #3
0
        public void ThrowsIfPlayingYourself()
        {
            var repository = Repository.CreatePopulatedRepository();
            var service = new MatchService(repository, null);

            // Can't find board
            Assert.Throws<ServiceException>(() => service.GenerateMatch(1, "User1", "User1"));
        }
예제 #4
0
        public void GeneratesMatch()
        {
            var repository = Repository.CreatePopulatedRepository();
            var service = new MatchService(repository, null);

            var match = service.GenerateMatch(1, "User1", "User2");

            Assert.NotNull(match);
        }
예제 #5
0
        public void ThrowsIfBoardHasEnded()
        {
            var repository = Repository.CreatePopulatedRepository();
            var service = new MatchService(repository, null);

            var board = repository.GetBoardByIdWithCompetitors(1);
            board.End = DateTime.Now.AddDays(-1);

            Assert.Throws<ServiceException>(() => service.GenerateMatch(1, "User1", "User2"));
        }