public async void ChangeTournamentFlags_ReturnsBadRequest_IfNoFlagsInRequest() { var request = new ChangeTournamentFlagsRequest() { Id = 123 }; var result = Assert.IsType <BadRequestObjectResult>(await tournamentController.ChangeTournamentFlags(request)); }
public async void ChangeTournamentFlags_ChangesFlags_AndReturnsOk() { var isActive = true; var isOpenForRegistration = false; var request = new ChangeTournamentFlagsRequest() { Id = 123, IsActive = isActive, IsOpenForRegistration = isOpenForRegistration, }; mockTournamentService.Setup(x => x.ChangeActiveStatus(request.Id, isActive)); mockTournamentService.Setup(x => x.ChangeOpenForRegistrationStatus(request.Id, isOpenForRegistration)); var result = Assert.IsType <OkResult>(await tournamentController.ChangeTournamentFlags(request)); mockTournamentService.VerifyAll(); }
public async void ChangeTournamentFlags_DoesNotCallChangeOpenForRegistrationStatus_IfIsOpenForRegistrationIsNull() { var isActive = false; bool?isOpenForRegistration = null; var request = new ChangeTournamentFlagsRequest() { Id = 123, IsActive = isActive, IsOpenForRegistration = isOpenForRegistration, }; mockTournamentService.Setup(x => x.ChangeActiveStatus(request.Id, isActive)); mockTournamentService.Setup(x => x.ChangeOpenForRegistrationStatus(request.Id, It.IsAny <bool>())); await tournamentController.ChangeTournamentFlags(request); mockTournamentService.Verify(x => x.ChangeOpenForRegistrationStatus(It.IsAny <int>(), It.IsAny <bool>()), Times.Never()); }
public async void ChangeTournamentFlags_ReturnsError_IfCallToChangeFlagsThrows( bool?isActive, bool?isOpenForRegistration) { var request = new ChangeTournamentFlagsRequest() { Id = 123, IsActive = isActive, IsOpenForRegistration = isOpenForRegistration }; mockTournamentService.Setup(x => x.ChangeActiveStatus(request.Id, It.IsAny <bool>())).ThrowsAsync(new Exception()); mockTournamentService.Setup(x => x.ChangeOpenForRegistrationStatus(request.Id, It.IsAny <bool>())).ThrowsAsync(new Exception()); var result = Assert.IsType <ObjectResult>(await tournamentController.ChangeTournamentFlags(request)); Assert.Equal(StatusCodes.Status500InternalServerError, result.StatusCode); }
public async Task <IActionResult> ChangeTournamentFlags([FromBody] ChangeTournamentFlagsRequest request) { if (!request.IsActive.HasValue && !request.IsOpenForRegistration.HasValue) { return(BadRequest("Must set at least one flag")); } try { if (request.IsActive.HasValue) { await tournamentService.ChangeActiveStatus(request.Id, request.IsActive.Value); } if (request.IsOpenForRegistration.HasValue) { await tournamentService.ChangeOpenForRegistrationStatus(request.Id, request.IsOpenForRegistration.Value); } return(Ok()); } catch (Exception e) { return(StatusCode(StatusCodes.Status500InternalServerError, $"Bad time: {e.Message}")); } }