public async Task UpdateConfigurationCommandHandler_Handel_ShouldUpdateEnvironmentConfiguration() { var configurations = await TestData.Read <IEnumerable <Entity.Configuration> >("Configuration"); Context.Configurations.AddRange(configurations); await Context.SaveChangesAsync(CancellationToken.None); var configurationDto = new UpdateConfigurationDto { Key = "FeatureToggle", IsActive = true, Value = "True", Id = Guid.Parse("79401745-04A6-4296-A6F5-435BD98DCBDC"), EnvironmentId = Guid.Parse("692F14FC-7EAD-4130-B6E9-3566BFA8E89F") }; var command = new UpdateConfigurationCommand(configurationDto); await _updateConfigurationCommandHandler.Handle(command, CancellationToken.None); var updatedConfiguration = Context.Configurations.FirstOrDefault(config => config.Id == Guid.Parse("79401745-04A6-4296-A6F5-435BD98DCBDC")); Assert.Equal("FeatureToggle", updatedConfiguration?.Key); Assert.Equal("True", updatedConfiguration?.Value); }
public async Task UpdateConfigurationCommandHandler_Handel_ShouldThrowExceptionIfEnvironmentAlreadyHaveSameKey() { var configurations = await TestData.Read <IEnumerable <Entity.Configuration> >("Configuration"); Context.Configurations.AddRange(configurations); await Context.SaveChangesAsync(CancellationToken.None); var configurationDto = new UpdateConfigurationDto(); configurationDto.Key = "ConnectionString"; configurationDto.Id = Guid.Parse("79401745-04A6-4296-A6F5-435BD98DCBDC"); configurationDto.EnvironmentId = Guid.Parse("692F14FC-7EAD-4130-B6E9-3566BFA8E89F"); var command = new UpdateConfigurationCommand(configurationDto); await Assert.ThrowsAsync <RecordAlreadyExistsException>(() => _updateConfigurationCommandHandler.Handle(command, CancellationToken.None)); }
public Task <bool> Handle(UpdateConfigurationCommand message, CancellationToken cancellationToken) { if (!message.IsValid()) { NotifyValidationErrors(message); return(Task.FromResult(false)); } var configuration = new Configuration(message.Id, message.Calcular_Dezenas_Sem_Pontuacao, message.Enviar_Email_Manualmente, message.Enviar_Email_Automaticamente, message.Checar_Jogo_Online, message.Valor_Minimo_Para_Envio_Email); var existingConfiguration = _configurationRepository.GetConfigurationById(configuration.Id); if (existingConfiguration != null && existingConfiguration.Id != configuration.Id) { if (!existingConfiguration.Equals(configuration)) { Bus.RaiseEvent(new DomainNotification(message.MessageType, "O ID desta configuração já está sendo usado!")); return(Task.FromResult(false)); } } _configurationRepository.Update(configuration); if (Commit()) { try { Bus.RaiseEvent(new ConfigurationUpdatedEvent(configuration.Id, configuration.Calcular_Dezenas_Sem_Pontuacao, configuration.Enviar_Email_Manualmente, configuration.Enviar_Email_Automaticamente, configuration.Checar_Jogo_Online, configuration.Valor_Minimo_Para_Envio_Email)); } catch (Exception ex) { //throw; } } return(Task.FromResult(true)); }
public async Task <ActionResult <ConfigurationDto> > Put(UpdateConfigurationCommand command) { var configuration = await _configurationService.UpdateConfiguration(command); return(Ok(ConvertToDto(configuration))); }
public async Task <ActionResult> SetConfigurationAsync(UpdateConfigurationCommand command) { await Mediator.Send(command); return(Ok()); }
public async Task <ActionResult <UpdateConfigurationDto> > Set(UpdateConfigurationCommand command) { return(Ok(await Mediator.Send(command))); }