コード例 #1
0
 private void ValidateCommandModel(CreateConfigurationDto createConfiguration)
 {
     if (createConfiguration == null)
     {
         throw new InvalidInputException($"{nameof(createConfiguration)} has invalid data");
     }
 }
コード例 #2
0
        private void Validate(IEnumerable <Entity.Configuration> configurations,
                              CreateConfigurationDto createConfiguration)
        {
            var isExists = configurations.Any(config => config.Key == createConfiguration.Key);

            if (isExists)
            {
                throw new RecordAlreadyExistsException($"{createConfiguration.Key} already exists");
            }
        }
コード例 #3
0
 private void AddConfiguration(CreateConfigurationDto createConfiguration)
 {
     _spiderDbContext.Configurations.Add(new Entity.Configuration
     {
         EnvironmentId = createConfiguration.EnvironmentId,
         IsActive      = createConfiguration.IsActive,
         Key           = createConfiguration.Key,
         Value         = createConfiguration.Value,
         Description   = createConfiguration.Description
     });
 }
コード例 #4
0
        CreateConfigurationCommandHandler_Handel_ShouldThrowExceptionIfEnvironmentAlreadyHaveConfigurationKey()
        {
            var configurations = await TestData.Read <IEnumerable <Entity.Configuration> >("configuration");

            Context.Configurations.AddRange(configurations);
            await Context.SaveChangesAsync(CancellationToken.None);

            var createConfiguration = new CreateConfigurationDto
            {
                Key           = "ConnectionString",
                IsActive      = true,
                EnvironmentId = Guid.Parse("692F14FC-7EAD-4130-B6E9-3566BFA8E89F")
            };
            await Assert.ThrowsAsync <RecordAlreadyExistsException>(() =>
                                                                    _configurationCommandHandler.Handle(new CreateConfigurationCommand(createConfiguration),
                                                                                                        CancellationToken.None));
        }
コード例 #5
0
        CreateConfigurationCommandHandler_Handel_ShouldAddNewConfigurationKeyInEnvironmentConfiguration()
        {
            var configurations = await TestData.Read <IEnumerable <Entity.Configuration> >("configuration");

            Context.Configurations.AddRange(configurations);
            await Context.SaveChangesAsync(CancellationToken.None);

            var createConfiguration = new CreateConfigurationDto
            {
                Key           = "RequestTimeOut",
                IsActive      = true,
                Value         = "30",
                EnvironmentId = Guid.Parse("692F14FC-7EAD-4130-B6E9-3566BFA8E89F")
            };
            await _configurationCommandHandler.Handle(new CreateConfigurationCommand(createConfiguration),
                                                      CancellationToken.None);

            var savedConfiguration = Context.Configurations.FirstOrDefault(config =>
                                                                           config.EnvironmentId == Guid.Parse("692F14FC-7EAD-4130-B6E9-3566BFA8E89F") &&
                                                                           string.Equals(config.Key, "RequestTimeOut", StringComparison.CurrentCultureIgnoreCase));

            Assert.Equal("RequestTimeOut", savedConfiguration?.Key);
        }
コード例 #6
0
 public CreateConfigurationCommand(CreateConfigurationDto configuration)
 {
     Configuration = configuration;
 }
コード例 #7
0
        public async Task <IActionResult> AddConfiguration(CreateConfigurationDto createConfiguration)
        {
            await _configurationService.CreateConfiguration(createConfiguration);

            return(Ok());
        }
コード例 #8
0
 public async Task CreateConfiguration(CreateConfigurationDto createConfiguration)
 {
     await Mediator.Send(new CreateConfigurationCommand(createConfiguration));
 }