public async void Create_ShouldReturnOk_IfTournamentCreated() { var testDate = new DateTime(2020, 1, 1); var request = new CreateTournamentRequest() { Date = testDate }; mockTournamentService.Setup(x => x.Create(testDate)); var result = Assert.IsType <OkResult>(await tournamentController.CreateTournament(request)); mockTournamentService.VerifyAll(); }
public void CallingPostWithValidDataShouldReturnOkAndObject() { var model = new TournamentDto { Name = "Test tournament", Date = DateTimeOffset.Now.AddDays(2) }; var mockRepository = new Mock <ITournamentRepository>(); mockRepository.Setup(r => r.Add(It.IsAny <TournamentDto>())) .Returns <TournamentDto>((data) => new Tournament { Name = data.Name, Date = data.Date.Value }); var ctrl = new TournamentController(mockRepository.Object, null, null, null); var result = ctrl.CreateTournament(model); Assert.IsAssignableFrom <OkObjectResult>(result); var tournament = (result as OkObjectResult).Value as TournamentDto; Assert.Equal(model.Name, tournament.Name); Assert.Equal(model.Date.Value, tournament.Date); }
public void TestCreateTournament() { // Arrange int TEST_STYLE_ID = 1; int TEST_NUM_OF_STATIONS = 4; var request = new CreateTournamentRequest(TEST_TOURNAMENT_ID, TEST_STYLE_ID, TEST_NUM_OF_STATIONS); var expectedResponse = new Response <EmptyResponse>(); var mockClient = new Mock <ITournamentClient>(); mockClient.Setup(client => client.CreateTournament(request)) .Returns(expectedResponse.WithSuccess()); // Act var tournamentController = new TournamentController( requestFieldExtractor, mockClient.Object); var result = tournamentController.CreateTournament(request) as OkObjectResult; var response = result.Value as Response <EmptyResponse>; // Assert Assert.NotNull(response); Assert.True(response.IsSuccessStatusCode); }
public void CallingPostWithInvalidInputDataShouldReturn400() { var mockRepository = new Mock <ITournamentRepository>(); var ctrl = new TournamentController(mockRepository.Object, null, null, null); ctrl.ModelState.AddModelError("", "error"); var result = ctrl.CreateTournament(new TournamentDto()); Assert.IsAssignableFrom <BadRequestResult>(result); }