diff --git a/src/Ocelot/DependencyInjection/ConfigurationBuilderExtensions.cs b/src/Ocelot/DependencyInjection/ConfigurationBuilderExtensions.cs index daa7b113..00cb0578 100644 --- a/src/Ocelot/DependencyInjection/ConfigurationBuilderExtensions.cs +++ b/src/Ocelot/DependencyInjection/ConfigurationBuilderExtensions.cs @@ -1,10 +1,9 @@ -using System; -using System.Collections.Generic; -using Microsoft.Extensions.Configuration; -using Microsoft.Extensions.Configuration.Memory; - namespace Ocelot.DependencyInjection { + using System; + using System.Collections.Generic; + using Microsoft.Extensions.Configuration; + using Microsoft.Extensions.Configuration.Memory; using System.IO; using System.Linq; using System.Text.RegularExpressions; @@ -16,12 +15,16 @@ namespace Ocelot.DependencyInjection [Obsolete("Please set BaseUrl in ocelot.json GlobalConfiguration.BaseUrl")] public static IConfigurationBuilder AddOcelotBaseUrl(this IConfigurationBuilder builder, string baseUrl) { - var memorySource = new MemoryConfigurationSource(); - memorySource.InitialData = new List> + var memorySource = new MemoryConfigurationSource { - new KeyValuePair("BaseUrl", baseUrl) + InitialData = new List> + { + new KeyValuePair("BaseUrl", baseUrl) + } }; + builder.Add(memorySource); + return builder; } @@ -35,11 +38,12 @@ namespace Ocelot.DependencyInjection .Where(path => reg.IsMatch(path)).Where(x => x.Count(s => s == '.') == 3) .ToList(); - FileConfiguration ocelotConfig = new FileConfiguration(); + var fileConfiguration = new FileConfiguration(); foreach (var file in files) { - if(files.Count > 1 && file == "./ocelot.json") + // windows and unix sigh... + if(files.Count > 1 && (file == "./ocelot.json" || file == ".\\ocelot.json")) { continue; } @@ -48,16 +52,17 @@ namespace Ocelot.DependencyInjection var config = JsonConvert.DeserializeObject(lines); - if(file == "./ocelot.global.json") + // windows and unix sigh... + if (file == "./ocelot.global.json" || file == ".\\ocelot.global.json") { - ocelotConfig.GlobalConfiguration = config.GlobalConfiguration; + fileConfiguration.GlobalConfiguration = config.GlobalConfiguration; } - ocelotConfig.Aggregates.AddRange(config.Aggregates); - ocelotConfig.ReRoutes.AddRange(config.ReRoutes); + fileConfiguration.Aggregates.AddRange(config.Aggregates); + fileConfiguration.ReRoutes.AddRange(config.ReRoutes); } - var json = JsonConvert.SerializeObject(ocelotConfig); + var json = JsonConvert.SerializeObject(fileConfiguration); File.WriteAllText("ocelot.json", json); diff --git a/test/Ocelot.UnitTests/Configuration/FileConfigurationRepositoryTests.cs b/test/Ocelot.UnitTests/Configuration/FileConfigurationRepositoryTests.cs index afff32f9..5b0e93db 100644 --- a/test/Ocelot.UnitTests/Configuration/FileConfigurationRepositoryTests.cs +++ b/test/Ocelot.UnitTests/Configuration/FileConfigurationRepositoryTests.cs @@ -12,14 +12,14 @@ using Ocelot.Configuration.Repository; namespace Ocelot.UnitTests.Configuration { - public class FileConfigurationRepositoryTests : IDisposable + public class FileConfigurationRepositoryTests { private readonly Mock _hostingEnvironment = new Mock(); private IFileConfigurationRepository _repo; private FileConfiguration _result; private FileConfiguration _fileConfiguration; - - // This is a bit dirty and it is dev.dev so that the configuration tests + + // This is a bit dirty and it is dev.dev so that the ConfigurationBuilderExtensionsTests // cant pick it up if they run in parralel..sigh these are not really unit // tests but whatever... private string _environmentName = "DEV.DEV"; @@ -225,10 +225,5 @@ namespace Ocelot.UnitTests.Configuration ReRoutes = reRoutes }; } - - public void Dispose() - { - File.Delete($"./ocelot.{_environmentName}.json"); - } } } diff --git a/test/Ocelot.UnitTests/Configuration/HeaderFindAndReplaceCreatorTests.cs b/test/Ocelot.UnitTests/Configuration/HeaderFindAndReplaceCreatorTests.cs index df37ca8b..a8f8644a 100644 --- a/test/Ocelot.UnitTests/Configuration/HeaderFindAndReplaceCreatorTests.cs +++ b/test/Ocelot.UnitTests/Configuration/HeaderFindAndReplaceCreatorTests.cs @@ -149,6 +149,7 @@ namespace Ocelot.UnitTests.Configuration .Then(x => ThenTheFollowingDownstreamIsReturned(downstream)) .BDDfy(); } + [Fact] public void should_add_trace_id_header() { diff --git a/test/Ocelot.UnitTests/DependencyInjection/ConfigurationBuilderExtensionsTests.cs b/test/Ocelot.UnitTests/DependencyInjection/ConfigurationBuilderExtensionsTests.cs index 90018b3e..7c29977d 100644 --- a/test/Ocelot.UnitTests/DependencyInjection/ConfigurationBuilderExtensionsTests.cs +++ b/test/Ocelot.UnitTests/DependencyInjection/ConfigurationBuilderExtensionsTests.cs @@ -1,16 +1,14 @@ -using Microsoft.Extensions.Configuration; -using Ocelot.DependencyInjection; -using Shouldly; -using TestStack.BDDfy; -using Xunit; - -namespace Ocelot.UnitTests.DependencyInjection +namespace Ocelot.UnitTests.DependencyInjection { - using System; using System.Collections.Generic; using System.IO; using Newtonsoft.Json; using Ocelot.Configuration.File; + using Microsoft.Extensions.Configuration; + using Ocelot.DependencyInjection; + using Shouldly; + using TestStack.BDDfy; + using Xunit; public class ConfigurationBuilderExtensionsTests {