public async Task ContestQueryInteractor_GetContestByNameAsync_HappyPath() { var id = "sdlfkj32rsdf"; var date = DateTimeOffset.Now; var name = "2017 SASS April"; var rounds = new Dictionary <int, Round>(); var numOfFlyoffRounds = 0; var contest = new Contest { Id = id, StartDate = date, Name = name, NumberOfFlyoffRounds = numOfFlyoffRounds, Rounds = rounds }; mockContestRepository.Setup(c => c.ReadAsync(It.IsAny <string>())).Returns(Task.FromResult(new Result <Contest>(contest))); var ContestQueryInteractor = new ContestQueryInteractor(mockContestRepository.Object, mockLogger.Object); var result = await ContestQueryInteractor.GetContestByNameAsync(contest.Name); Assert.IsFalse(result.IsFaulted); Assert.IsNotNull(result.Value); Assert.AreEqual(id, result.Value.Id); Assert.AreEqual(name, result.Value.Name); Assert.AreEqual(date, result.Value.StartDate); Assert.AreEqual(numOfFlyoffRounds, result.Value.NumberOfFlyoffRounds); Assert.AreEqual(rounds.Count, result.Value.Rounds.Count); Assert.AreEqual(0, result.Value.NumberOfPilots); Assert.AreEqual(1, result.Value.SuggestedNumberOfPilotsPerGroup); }
public async Task ContestQueryInteractor_GetContestByNameAsync_RepositoryFailure_Exception() { var id = "345fswejsdf"; var date = DateTimeOffset.Now; var name = "2017 SASS April"; var rounds = new Dictionary <int, Round>(); var numOfFlyoffRounds = 0; var contest = new Contest { Id = id, StartDate = date, Name = name, NumberOfFlyoffRounds = numOfFlyoffRounds, Rounds = rounds }; var exceptionMessage = "Derp"; mockContestRepository.Setup(c => c.ReadAsync(It.IsAny <string>())).Throws(new Exception(exceptionMessage)); var contestQueryInteractor = new ContestQueryInteractor(mockContestRepository.Object, mockLogger.Object); var result = await contestQueryInteractor.GetContestByNameAsync(contest.Name); Assert.IsTrue(result.IsFaulted); Assert.IsNull(result.Value); Assert.IsNotNull(result.Error.Exception); Assert.AreEqual(exceptionMessage, result.Error.ErrorMessage); }
public async Task ContestQueryInteractor_GetContestByNameAsync_RepositoryFailure_NullReturned() { var id = "234wdfsdfsa"; var date = DateTimeOffset.Now; var name = "2017 SASS April"; var numOfFlyoffRounds = 0; var contest = new Contest { Id = id, StartDate = date, Name = name, NumberOfFlyoffRounds = numOfFlyoffRounds, Rounds = new Dictionary <int, Round>() }; mockContestRepository.Setup(c => c.ReadAsync(It.IsAny <string>())).Returns <Contest>(x => Task.FromResult(new Result <Contest>(null))); var contestQueryInteractor = new ContestQueryInteractor(mockContestRepository.Object, mockLogger.Object); var result = await contestQueryInteractor.GetContestByNameAsync(contest.Name); Assert.IsTrue(result.IsFaulted); Assert.IsNull(result.Value); }
public async Task ContestQueryInteractor_GetContestByNameAsync_NullParameters() { var ContestQueryInteractor = new ContestQueryInteractor(mockContestRepository.Object, mockLogger.Object); await ContestQueryInteractor.GetContestByNameAsync(null); }