mirror of
				https://github.com/nsnail/Ocelot.git
				synced 2025-11-04 20:10:50 +08:00 
			
		
		
		
	Fix brace line spacing and remove multiple concurrent whitespace characters
SA1025, SA1505, SA1508, SA-1509, SA1513
This commit is contained in:
		@@ -47,6 +47,7 @@ namespace Ocelot.Authorisation
 | 
			
		||||
                        });
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            return new OkResponse<bool>(true);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,6 @@ using Ocelot.Configuration.File;
 | 
			
		||||
 | 
			
		||||
namespace Ocelot.Cache
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
    public class RegionCreator : IRegionCreator
 | 
			
		||||
    {
 | 
			
		||||
        public string Create(FileReRoute reRoute)
 | 
			
		||||
 
 | 
			
		||||
@@ -8,6 +8,7 @@ namespace Ocelot.Cache
 | 
			
		||||
        {
 | 
			
		||||
            Value = value;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public List<string> Value {get;private set;}
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -39,6 +39,7 @@ namespace Ocelot.Claims.Middleware
 | 
			
		||||
                    return;
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            await _next.Invoke(context);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
@@ -7,6 +7,7 @@
 | 
			
		||||
            Host = host;
 | 
			
		||||
            Port = port;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public string Host { get; private set; }
 | 
			
		||||
        public int Port { get; private set; }
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
@@ -34,6 +34,4 @@ namespace Ocelot.Configuration.File
 | 
			
		||||
        /// </summary>
 | 
			
		||||
        public int HttpStatusCode { get;  set; } = 429;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -6,7 +6,6 @@ using System.Threading.Tasks;
 | 
			
		||||
 | 
			
		||||
namespace Ocelot.Configuration.File
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
    public class FileRateLimitRule
 | 
			
		||||
    {
 | 
			
		||||
        public FileRateLimitRule()
 | 
			
		||||
@@ -38,6 +37,7 @@ namespace Ocelot.Configuration.File
 | 
			
		||||
            {
 | 
			
		||||
                return string.Empty;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            var sb = new StringBuilder();
 | 
			
		||||
            sb.Append(
 | 
			
		||||
                $"{nameof(Period)}:{Period},{nameof(PeriodTimespan)}:{PeriodTimespan:F},{nameof(Limit)}:{Limit},{nameof(ClientWhitelist)}:[");
 | 
			
		||||
 
 | 
			
		||||
@@ -24,6 +24,5 @@ namespace Ocelot.Configuration
 | 
			
		||||
        public int TimeoutValue { get; private set; }
 | 
			
		||||
 | 
			
		||||
        public TimeoutStrategy TimeoutStrategy { get; private set; }
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -9,8 +9,8 @@ namespace Ocelot.Configuration
 | 
			
		||||
            IsCached = isCached;
 | 
			
		||||
            IsQos = isQos;
 | 
			
		||||
            EnableRateLimiting = isEnableRateLimiting;
 | 
			
		||||
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public bool IsAuthenticated { get; private set; }
 | 
			
		||||
        public bool IsAuthorised { get; private set; }
 | 
			
		||||
        public bool IsCached { get; private set; }
 | 
			
		||||
 
 | 
			
		||||
@@ -34,7 +34,6 @@ namespace Ocelot.Configuration.Repository
 | 
			
		||||
                _polling = true;
 | 
			
		||||
                await Poll();
 | 
			
		||||
                _polling = false;
 | 
			
		||||
 | 
			
		||||
            }, null, 0, 1000);
 | 
			
		||||
        }
 | 
			
		||||
        
 | 
			
		||||
 
 | 
			
		||||
@@ -9,7 +9,6 @@ using Ocelot.ServiceDiscovery;
 | 
			
		||||
 | 
			
		||||
namespace Ocelot.Configuration.Repository
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
    public class ConsulFileConfigurationRepository : IFileConfigurationRepository
 | 
			
		||||
    {
 | 
			
		||||
        private readonly ConsulClient _consul;
 | 
			
		||||
 
 | 
			
		||||
@@ -9,7 +9,6 @@ namespace Ocelot.Configuration.Validator
 | 
			
		||||
    {
 | 
			
		||||
        public FileValidationFailedError(string message) : base(message, OcelotErrorCode.FileValidationFailedError)
 | 
			
		||||
        {
 | 
			
		||||
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -67,6 +67,7 @@ namespace Ocelot.Configuration.Validator
 | 
			
		||||
            {
 | 
			
		||||
                return true;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            var schemes = await _authenticationSchemeProvider.GetAllSchemesAsync();
 | 
			
		||||
 | 
			
		||||
            var supportedSchemes = schemes.Select(scheme => scheme.Name).ToList();
 | 
			
		||||
 
 | 
			
		||||
@@ -154,7 +154,6 @@ namespace Ocelot.DependencyInjection
 | 
			
		||||
 | 
			
		||||
            // We add this here so that we can always inject something into the factory for IoC..
 | 
			
		||||
            _services.AddSingleton<IServiceTracer, FakeServiceTracer>();
 | 
			
		||||
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public IOcelotAdministrationBuilder AddAdministration(string path, string secret)
 | 
			
		||||
 
 | 
			
		||||
@@ -11,6 +11,7 @@ namespace Ocelot.DownstreamRouteFinder
 | 
			
		||||
            TemplatePlaceholderNameAndValues = templatePlaceholderNameAndValues;
 | 
			
		||||
            ReRoute = reRoute;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public List<PlaceholderNameAndValue> TemplatePlaceholderNameAndValues { get; private set; }
 | 
			
		||||
        public ReRoute ReRoute { get; private set; }
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
@@ -6,6 +6,7 @@ namespace Ocelot.DownstreamRouteFinder.UrlMatcher
 | 
			
		||||
        {
 | 
			
		||||
            Match = match; 
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public bool Match {get;private set;}
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -7,6 +7,7 @@ namespace Ocelot.DownstreamRouteFinder.UrlMatcher
 | 
			
		||||
            Name = name;
 | 
			
		||||
            Value = value;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public string Name {get;private set;}
 | 
			
		||||
        public string Value {get;private set;}
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
@@ -50,6 +50,7 @@ namespace Ocelot.DownstreamRouteFinder.UrlMatcher
 | 
			
		||||
 | 
			
		||||
                    counterForTemplate = endOfPlaceholder;
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                counterForPath++;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
@@ -90,6 +91,7 @@ namespace Ocelot.DownstreamRouteFinder.UrlMatcher
 | 
			
		||||
 | 
			
		||||
            return variableName;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        private int GetNextCounterPosition(string urlTemplate, int counterForTemplate, char delimiter)
 | 
			
		||||
        {                        
 | 
			
		||||
            var closingPlaceHolderPositionOnTemplate = urlTemplate.IndexOf(delimiter, counterForTemplate);
 | 
			
		||||
 
 | 
			
		||||
@@ -100,6 +100,7 @@ namespace Ocelot.Errors.Middleware
 | 
			
		||||
                message =
 | 
			
		||||
                    $"{message}, inner exception message {e.InnerException.Message}, inner exception stack {e.InnerException.StackTrace}";
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            return $"{message} RequestId: {context.HttpContext.TraceIdentifier}";
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
@@ -26,6 +26,7 @@ namespace Ocelot.Headers
 | 
			
		||||
                return $"{downstreamUrl}/";
 | 
			
		||||
            });
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public Response Replace(HttpResponseMessage response, List<HeaderFindAndReplace> fAndRs, HttpRequestMessage httpRequestMessage)
 | 
			
		||||
        {
 | 
			
		||||
            foreach (var f in fAndRs)
 | 
			
		||||
 
 | 
			
		||||
@@ -9,6 +9,7 @@ namespace Ocelot.LoadBalancer.LoadBalancers
 | 
			
		||||
            HostAndPort = hostAndPort;
 | 
			
		||||
            Connections = connections;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public ServiceHostAndPort HostAndPort { get; private set; }
 | 
			
		||||
        public int Connections { get; private set; }
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
@@ -6,6 +6,7 @@ namespace Ocelot.Logging
 | 
			
		||||
    {
 | 
			
		||||
        IOcelotLogger CreateLogger<T>();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /// <summary>
 | 
			
		||||
    /// Thin wrapper around the DotNet core logging framework, used to allow the scopedDataRepository to be injected giving access to the Ocelot RequestId
 | 
			
		||||
    /// </summary>
 | 
			
		||||
 
 | 
			
		||||
@@ -38,6 +38,5 @@
 | 
			
		||||
        /// This allows the user to implement there own query string manipulation logic
 | 
			
		||||
        /// </summary>
 | 
			
		||||
        public Func<DownstreamContext, Func<Task>, Task> PreQueryStringBuilderMiddleware { get; set; }        
 | 
			
		||||
        
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -8,8 +8,8 @@ namespace Ocelot.Raft
 | 
			
		||||
        public FakeCommand(string value)
 | 
			
		||||
        {
 | 
			
		||||
            this.Value = value;
 | 
			
		||||
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public string Value { get; private set; }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -37,6 +37,7 @@ namespace Ocelot.Raft
 | 
			
		||||
                _peers.Add(httpPeer);
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public List<IPeer> Get()
 | 
			
		||||
        {
 | 
			
		||||
            return _peers;
 | 
			
		||||
 
 | 
			
		||||
@@ -68,6 +68,7 @@ namespace Ocelot.Raft
 | 
			
		||||
                {
 | 
			
		||||
                    SetToken();
 | 
			
		||||
                }                
 | 
			
		||||
 | 
			
		||||
                var json = JsonConvert.SerializeObject(appendEntries, _jsonSerializerSettings);
 | 
			
		||||
                var content = new StringContent(json);
 | 
			
		||||
                content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json");
 | 
			
		||||
@@ -94,6 +95,7 @@ namespace Ocelot.Raft
 | 
			
		||||
            {
 | 
			
		||||
                SetToken();
 | 
			
		||||
            }   
 | 
			
		||||
 | 
			
		||||
            var json = JsonConvert.SerializeObject(command, _jsonSerializerSettings);
 | 
			
		||||
            var content = new StringContent(json);
 | 
			
		||||
            content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json");
 | 
			
		||||
 
 | 
			
		||||
@@ -24,6 +24,7 @@ namespace Ocelot.Raft
 | 
			
		||||
                    FileStream fs = File.Create(_path);
 | 
			
		||||
                    fs.Dispose();
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                using(var connection = new SqliteConnection($"Data Source={_path};"))
 | 
			
		||||
                {
 | 
			
		||||
                    connection.Open();
 | 
			
		||||
@@ -59,6 +60,7 @@ namespace Ocelot.Raft
 | 
			
		||||
                            }
 | 
			
		||||
                        }
 | 
			
		||||
                    }
 | 
			
		||||
 | 
			
		||||
                    return result;
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
@@ -88,6 +90,7 @@ namespace Ocelot.Raft
 | 
			
		||||
                            }
 | 
			
		||||
                        }
 | 
			
		||||
                    }
 | 
			
		||||
 | 
			
		||||
                    return result;
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
@@ -113,6 +116,7 @@ namespace Ocelot.Raft
 | 
			
		||||
                            }
 | 
			
		||||
                        }
 | 
			
		||||
                    }
 | 
			
		||||
 | 
			
		||||
                    return result;
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
@@ -222,7 +226,6 @@ namespace Ocelot.Raft
 | 
			
		||||
                                };
 | 
			
		||||
                                var log = JsonConvert.DeserializeObject<LogEntry>(data, jsonSerializerSettings);
 | 
			
		||||
                                logsToReturn.Add((id, log));
 | 
			
		||||
 | 
			
		||||
                            }
 | 
			
		||||
                        }
 | 
			
		||||
                    }
 | 
			
		||||
@@ -230,7 +233,6 @@ namespace Ocelot.Raft
 | 
			
		||||
 | 
			
		||||
                return logsToReturn;
 | 
			
		||||
            }        
 | 
			
		||||
          
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public long GetTermAtIndex(int index)
 | 
			
		||||
@@ -256,9 +258,11 @@ namespace Ocelot.Raft
 | 
			
		||||
                        }
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                return result;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public void Remove(int indexOfCommand)
 | 
			
		||||
        {
 | 
			
		||||
            lock(_lock)
 | 
			
		||||
 
 | 
			
		||||
@@ -7,7 +7,6 @@ using System.Threading.Tasks;
 | 
			
		||||
 | 
			
		||||
namespace Ocelot.RateLimit
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
    public class ClientRateLimitProcessor
 | 
			
		||||
    {
 | 
			
		||||
        private readonly IRateLimitCounterHandler _counterHandler;
 | 
			
		||||
@@ -39,7 +38,5 @@ namespace Ocelot.RateLimit
 | 
			
		||||
        {
 | 
			
		||||
            return _core.ConvertToTimeSpan(timeSpan);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -34,6 +34,7 @@ namespace Ocelot.RateLimit
 | 
			
		||||
            {
 | 
			
		||||
                return JsonConvert.DeserializeObject<RateLimitCounter>(stored);
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            return null;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -38,6 +38,7 @@ namespace Ocelot.RateLimit.Middleware
 | 
			
		||||
                await _next.Invoke(context);
 | 
			
		||||
                return;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            // compute identity from request
 | 
			
		||||
            var identity = SetIdentity(context.HttpContext, options);
 | 
			
		||||
 | 
			
		||||
@@ -70,8 +71,8 @@ namespace Ocelot.RateLimit.Middleware
 | 
			
		||||
 | 
			
		||||
                    return;
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            //set X-Rate-Limit headers for the longest period
 | 
			
		||||
            if (!options.DisableRateLimitHeaders)
 | 
			
		||||
            {
 | 
			
		||||
@@ -103,6 +104,7 @@ namespace Ocelot.RateLimit.Middleware
 | 
			
		||||
            {
 | 
			
		||||
                return true;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            return false;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
@@ -134,8 +136,5 @@ namespace Ocelot.RateLimit.Middleware
 | 
			
		||||
 | 
			
		||||
            return Task.CompletedTask;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -62,6 +62,7 @@ namespace Ocelot.RateLimit
 | 
			
		||||
                var expirationTime = ConvertToTimeSpan(rule.Period);
 | 
			
		||||
                _counterHandler.Set(counterId, counter, expirationTime);
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            return counter;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
@@ -92,7 +93,6 @@ namespace Ocelot.RateLimit
 | 
			
		||||
                    rule.Period,
 | 
			
		||||
                    rule.Limit.ToString(),
 | 
			
		||||
                    (DateTime.UtcNow + ConvertToTimeSpan(rule.Period)).ToUniversalTime().ToString("o", DateTimeFormatInfo.InvariantInfo));
 | 
			
		||||
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            return headers;
 | 
			
		||||
@@ -142,6 +142,5 @@ namespace Ocelot.RateLimit
 | 
			
		||||
                    throw new FormatException($"{timeSpan} can't be converted to TimeSpan, unknown type {type}");
 | 
			
		||||
            }
 | 
			
		||||
        }  
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -55,7 +55,6 @@ namespace Ocelot.Requester
 | 
			
		||||
            {
 | 
			
		||||
                _cacheHandlers.Set(cacheKey, httpClient, TimeSpan.FromHours(24));
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        private IHttpClient GetHttpClient(string cacheKey, IHttpClientBuilder builder, DownstreamContext request)
 | 
			
		||||
 
 | 
			
		||||
@@ -41,6 +41,7 @@ namespace Ocelot.Requester
 | 
			
		||||
            {
 | 
			
		||||
                connectionQueue.TryDequeue(out client);
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            return client;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -35,7 +35,7 @@ namespace Ocelot.Requester
 | 
			
		||||
            {
 | 
			
		||||
                request.Headers.Remove(prefix_spanId);
 | 
			
		||||
                request.Headers.TryAddWithoutValidation(prefix_spanId, span.SpanContext.SpanId);
 | 
			
		||||
            };
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            span.Tags.Client().Component("HttpClient")
 | 
			
		||||
                .HttpMethod(request.Method.Method)
 | 
			
		||||
 
 | 
			
		||||
@@ -50,7 +50,6 @@ namespace Ocelot.Responder
 | 
			
		||||
                httpContext.Response.StatusCode = (int)response.StatusCode;
 | 
			
		||||
 | 
			
		||||
                return Task.CompletedTask;
 | 
			
		||||
 | 
			
		||||
            }, context);
 | 
			
		||||
 | 
			
		||||
            using (Stream stream = new MemoryStream(content))
 | 
			
		||||
 
 | 
			
		||||
@@ -29,7 +29,6 @@ namespace Ocelot.Responder.Middleware
 | 
			
		||||
            _responder = responder;
 | 
			
		||||
            _codeMapper = codeMapper;
 | 
			
		||||
            _logger = loggerFactory.CreateLogger<ResponderMiddleware>();
 | 
			
		||||
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public async Task Invoke(DownstreamContext context)
 | 
			
		||||
 
 | 
			
		||||
@@ -8,6 +8,7 @@ namespace Ocelot.Responses
 | 
			
		||||
        public ErrorResponse(Error error) : base(new List<Error>{error})
 | 
			
		||||
        {
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public ErrorResponse(List<Error> errors) : base(errors)
 | 
			
		||||
        {
 | 
			
		||||
        }
 | 
			
		||||
 
 | 
			
		||||
@@ -8,8 +8,8 @@ namespace Ocelot.Responses
 | 
			
		||||
        public ErrorResponse(Error error) 
 | 
			
		||||
            : base(new List<Error> {error})
 | 
			
		||||
        {            
 | 
			
		||||
            
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public ErrorResponse(List<Error> errors) 
 | 
			
		||||
            : base(errors)
 | 
			
		||||
        {
 | 
			
		||||
 
 | 
			
		||||
@@ -15,6 +15,5 @@ namespace Ocelot.Responses
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public T Data { get; private set; }        
 | 
			
		||||
        
 | 
			
		||||
    }
 | 
			
		||||
} 
 | 
			
		||||
@@ -16,6 +16,7 @@ namespace Ocelot.Values
 | 
			
		||||
            Version = version;
 | 
			
		||||
            Tags = tags;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public string Id { get; private set; }
 | 
			
		||||
 | 
			
		||||
        public string Name { get; private set; }
 | 
			
		||||
 
 | 
			
		||||
@@ -356,7 +356,6 @@ namespace Ocelot.AcceptanceTests
 | 
			
		||||
                                    "CustomerId", "LocationId", "UserType", "UserId"
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
 | 
			
		||||
                        })
 | 
			
		||||
                        .AddInMemoryClients(new List<Client>
 | 
			
		||||
                        {
 | 
			
		||||
@@ -437,7 +436,6 @@ namespace Ocelot.AcceptanceTests
 | 
			
		||||
                                    "CustomerId", "LocationId", "UserType", "UserId", "Role"
 | 
			
		||||
                                }
 | 
			
		||||
                            },
 | 
			
		||||
 | 
			
		||||
                        })
 | 
			
		||||
                        .AddInMemoryClients(new List<Client>
 | 
			
		||||
                        {
 | 
			
		||||
@@ -450,7 +448,6 @@ namespace Ocelot.AcceptanceTests
 | 
			
		||||
                                AccessTokenType = tokenType,
 | 
			
		||||
                                Enabled = true,
 | 
			
		||||
                                RequireClientSecret = false,
 | 
			
		||||
 | 
			
		||||
                            }
 | 
			
		||||
                        })
 | 
			
		||||
                        .AddTestUsers(users);
 | 
			
		||||
 
 | 
			
		||||
@@ -75,7 +75,6 @@ namespace Ocelot.AcceptanceTests
 | 
			
		||||
                        QuotaExceededMessage = "",
 | 
			
		||||
                        RateLimitCounterPrefix = "",
 | 
			
		||||
                         HttpStatusCode = 428
 | 
			
		||||
 | 
			
		||||
                    },
 | 
			
		||||
                     RequestIdKey ="oceclientrequest"
 | 
			
		||||
                }
 | 
			
		||||
@@ -172,7 +171,5 @@ namespace Ocelot.AcceptanceTests
 | 
			
		||||
 | 
			
		||||
            _builder.Start();
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -352,7 +352,6 @@ namespace Ocelot.AcceptanceTests
 | 
			
		||||
                    app.UsePathBase(basePath);
 | 
			
		||||
                    app.Run(context =>
 | 
			
		||||
                    {
 | 
			
		||||
 | 
			
		||||
                        if(string.IsNullOrEmpty(basePath))
 | 
			
		||||
                        {
 | 
			
		||||
                            context.Response.StatusCode = statusCode;
 | 
			
		||||
 
 | 
			
		||||
@@ -71,7 +71,6 @@ namespace Ocelot.AcceptanceTests
 | 
			
		||||
 | 
			
		||||
        class FakeHandler : DelegatingHandler
 | 
			
		||||
        {  
 | 
			
		||||
  
 | 
			
		||||
            public DateTime TimeCalled { get; private set; }
 | 
			
		||||
 | 
			
		||||
            protected override async Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
 | 
			
		||||
@@ -111,6 +110,5 @@ namespace Ocelot.AcceptanceTests
 | 
			
		||||
 | 
			
		||||
            _builder.Start();
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -160,7 +160,6 @@ namespace Ocelot.AcceptanceTests
 | 
			
		||||
                        {
 | 
			
		||||
                            await context.Response.WriteAsync(exception.StackTrace);
 | 
			
		||||
                        }                   
 | 
			
		||||
                   
 | 
			
		||||
                    });
 | 
			
		||||
                })
 | 
			
		||||
                .Build();
 | 
			
		||||
 
 | 
			
		||||
@@ -52,7 +52,6 @@ namespace Ocelot.AcceptanceTests
 | 
			
		||||
                            TimeoutValue = 500,
 | 
			
		||||
                            DurationOfBreak = 1000
 | 
			
		||||
                        },                        
 | 
			
		||||
                        
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
            };
 | 
			
		||||
 
 | 
			
		||||
@@ -360,7 +360,6 @@ namespace Ocelot.AcceptanceTests
 | 
			
		||||
                        {
 | 
			
		||||
                            await context.Response.WriteAsync(exception.StackTrace);
 | 
			
		||||
                        }                  
 | 
			
		||||
                   
 | 
			
		||||
                    });
 | 
			
		||||
                })
 | 
			
		||||
                .Build();
 | 
			
		||||
 
 | 
			
		||||
@@ -144,6 +144,7 @@ namespace Ocelot.AcceptanceTests
 | 
			
		||||
 | 
			
		||||
            _ocelotClient = _ocelotServer.CreateClient();
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
        public void GivenIHaveAddedXForwardedForHeader(string value)
 | 
			
		||||
        {
 | 
			
		||||
 
 | 
			
		||||
@@ -8,7 +8,6 @@ namespace Ocelot.Benchmarks
 | 
			
		||||
        {
 | 
			
		||||
            var switcher = new BenchmarkSwitcher(new[] {
 | 
			
		||||
                   typeof(UrlPathToUrlPathTemplateMatcherBenchmarks),
 | 
			
		||||
 | 
			
		||||
               });
 | 
			
		||||
 | 
			
		||||
            switcher.Run(args);
 | 
			
		||||
 
 | 
			
		||||
@@ -124,7 +124,6 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
                    {
 | 
			
		||||
                        Host = "127.0.0.1",
 | 
			
		||||
                    }
 | 
			
		||||
 | 
			
		||||
                },
 | 
			
		||||
                ReRoutes = new List<FileReRoute>()
 | 
			
		||||
                {
 | 
			
		||||
 
 | 
			
		||||
@@ -45,6 +45,7 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
            _builders = new List<IWebHost>();
 | 
			
		||||
            _threads = new List<Thread>();
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public void Dispose()
 | 
			
		||||
        {
 | 
			
		||||
            foreach (var builder in _builders)
 | 
			
		||||
@@ -194,7 +195,6 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
            var stopwatch = Stopwatch.StartNew();
 | 
			
		||||
            while(stopwatch.ElapsedMilliseconds < 10000)
 | 
			
		||||
            {
 | 
			
		||||
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
@@ -204,7 +204,6 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
            var stopwatch = Stopwatch.StartNew();
 | 
			
		||||
            while(stopwatch.ElapsedMilliseconds < 2000)
 | 
			
		||||
            {
 | 
			
		||||
 | 
			
		||||
            }
 | 
			
		||||
            
 | 
			
		||||
            bool CommandCalledOnAllStateMachines()
 | 
			
		||||
@@ -225,6 +224,7 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
                                index.ShouldBe(1);
 | 
			
		||||
                            }
 | 
			
		||||
                        }
 | 
			
		||||
 | 
			
		||||
                        _httpClientForAssertions.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", _token.AccessToken);
 | 
			
		||||
                        var result = _httpClientForAssertions.GetAsync($"{peer.HostAndPort}/administration/configuration").Result;
 | 
			
		||||
                        var json = result.Content.ReadAsStringAsync().Result;
 | 
			
		||||
@@ -248,6 +248,7 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
                            response.ReRoutes[i].UpstreamPathTemplate.ShouldBe(expecteds.Configuration.ReRoutes[i].UpstreamPathTemplate);
 | 
			
		||||
                            response.ReRoutes[i].UpstreamHttpMethod.ShouldBe(expecteds.Configuration.ReRoutes[i].UpstreamHttpMethod);
 | 
			
		||||
                        }
 | 
			
		||||
 | 
			
		||||
                        passed++;
 | 
			
		||||
                    }
 | 
			
		||||
 | 
			
		||||
@@ -384,7 +385,6 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
            var stopwatch = Stopwatch.StartNew();
 | 
			
		||||
            while(stopwatch.ElapsedMilliseconds < 20000)
 | 
			
		||||
            {
 | 
			
		||||
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
@@ -195,6 +195,7 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
                result.Result.ShouldBe(result.Random);
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public void Dispose()
 | 
			
		||||
        {
 | 
			
		||||
            _builder?.Dispose();
 | 
			
		||||
@@ -208,7 +209,6 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
            {
 | 
			
		||||
                Result = result;
 | 
			
		||||
                Random = random;
 | 
			
		||||
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            public int Result { get; private set; }
 | 
			
		||||
 
 | 
			
		||||
@@ -89,7 +89,7 @@ namespace Ocelot.UnitTests.Authentication
 | 
			
		||||
            {
 | 
			
		||||
                string text = reader.ReadToEnd();
 | 
			
		||||
                return text;
 | 
			
		||||
            };
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -28,7 +28,6 @@ namespace Ocelot.UnitTests.Authorization
 | 
			
		||||
            this.Given(x => x.GivenAClaimsPrincipal(new ClaimsPrincipal(new ClaimsIdentity(new List<Claim>
 | 
			
		||||
                {
 | 
			
		||||
                    new Claim("UserType", "registered"),
 | 
			
		||||
 | 
			
		||||
                }))))
 | 
			
		||||
                .And(x => x.GivenARouteClaimsRequirement(new Dictionary<string, string>
 | 
			
		||||
                {
 | 
			
		||||
 
 | 
			
		||||
@@ -110,7 +110,6 @@ namespace Ocelot.UnitTests.Cache
 | 
			
		||||
        private void GivenThereAreNoErrors()
 | 
			
		||||
        {
 | 
			
		||||
            _downstreamContext.Errors = new List<Error>();
 | 
			
		||||
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        private void ThenTheCacheGetIsCalledCorrectly()
 | 
			
		||||
 
 | 
			
		||||
@@ -129,7 +129,6 @@ namespace Ocelot.UnitTests.Claims
 | 
			
		||||
 | 
			
		||||
        private void ThenTheResultIsError()
 | 
			
		||||
        {
 | 
			
		||||
 | 
			
		||||
            _result.IsError.ShouldBe(true);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -79,6 +79,7 @@ namespace Ocelot.UnitTests.Configuration
 | 
			
		||||
        {
 | 
			
		||||
            _result.Count.ShouldBeGreaterThan(0);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        private void GivenTheFollowingDictionary(Dictionary<string,string> claimsToThings)
 | 
			
		||||
        {
 | 
			
		||||
            _claimsToThings = claimsToThings;
 | 
			
		||||
 
 | 
			
		||||
@@ -981,6 +981,7 @@ namespace Ocelot.UnitTests.Configuration
 | 
			
		||||
                 .And(x => x.ThenTheErrorMessageAtPositionIs(0, "When not using service discovery DownstreamHostAndPorts must be set and not empty or Ocelot cannot find your service!"))
 | 
			
		||||
                .BDDfy();
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        [Fact]
 | 
			
		||||
        public void configuration_is_not_valid_when_host_and_port_is_empty()
 | 
			
		||||
        {
 | 
			
		||||
 
 | 
			
		||||
@@ -34,6 +34,7 @@ namespace Ocelot.UnitTests.Configuration
 | 
			
		||||
            _repo.Setup(x => x.Get()).ReturnsAsync(new OkResponse<FileConfiguration>(_fileConfig));
 | 
			
		||||
            _poller = new ConsulFileConfigurationPoller(_factory.Object, _repo.Object, _setter.Object);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public void Dispose()
 | 
			
		||||
        {
 | 
			
		||||
            _poller.Dispose();
 | 
			
		||||
@@ -49,7 +50,6 @@ namespace Ocelot.UnitTests.Configuration
 | 
			
		||||
        [Fact]
 | 
			
		||||
        public void should_call_setter_when_gets_new_config()
 | 
			
		||||
        {
 | 
			
		||||
 | 
			
		||||
            var newConfig = new FileConfiguration {
 | 
			
		||||
                ReRoutes = new List<FileReRoute>
 | 
			
		||||
                {   
 | 
			
		||||
 
 | 
			
		||||
@@ -824,7 +824,6 @@ namespace Ocelot.UnitTests.Configuration
 | 
			
		||||
                result.DownstreamReRoute[0].ClaimsToHeaders.Count.ShouldBe(expected.DownstreamReRoute[0].ClaimsToHeaders.Count);
 | 
			
		||||
                result.DownstreamReRoute[0].ClaimsToQueries.Count.ShouldBe(expected.DownstreamReRoute[0].ClaimsToQueries.Count);
 | 
			
		||||
                result.DownstreamReRoute[0].RequestIdKey.ShouldBe(expected.DownstreamReRoute[0].RequestIdKey);           
 | 
			
		||||
            
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -33,13 +33,11 @@ namespace Ocelot.UnitTests.Configuration
 | 
			
		||||
                UpstreamHeaderTransform = new Dictionary<string, string>
 | 
			
		||||
                {
 | 
			
		||||
                    {"Test", "Test, Chicken"},
 | 
			
		||||
 | 
			
		||||
                    {"Moop", "o, a"}
 | 
			
		||||
                },
 | 
			
		||||
                 DownstreamHeaderTransform = new Dictionary<string, string>
 | 
			
		||||
                {
 | 
			
		||||
                    {"Pop", "West, East"},
 | 
			
		||||
 | 
			
		||||
                    {"Bop", "e, r"}
 | 
			
		||||
                }
 | 
			
		||||
            };
 | 
			
		||||
 
 | 
			
		||||
@@ -7,7 +7,6 @@ using Xunit;
 | 
			
		||||
 | 
			
		||||
namespace Ocelot.UnitTests.Configuration
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
    public class HttpHandlerOptionsCreatorTests
 | 
			
		||||
    {
 | 
			
		||||
        private readonly IHttpHandlerOptionsCreator _httpHandlerOptionsCreator;
 | 
			
		||||
 
 | 
			
		||||
@@ -38,6 +38,7 @@ namespace Ocelot.UnitTests.DependencyInjection
 | 
			
		||||
            _services.AddSingleton<IConfiguration>(_configRoot);
 | 
			
		||||
            _maxRetries = 100;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        private Exception _ex;
 | 
			
		||||
 | 
			
		||||
        [Fact]
 | 
			
		||||
@@ -102,9 +103,7 @@ namespace Ocelot.UnitTests.DependencyInjection
 | 
			
		||||
        [Fact]
 | 
			
		||||
        public void should_set_up_administration_with_identity_server_options()
 | 
			
		||||
        {
 | 
			
		||||
            Action<IdentityServerAuthenticationOptions> options = o => {
 | 
			
		||||
               
 | 
			
		||||
            };
 | 
			
		||||
            Action<IdentityServerAuthenticationOptions> options = o => {};
 | 
			
		||||
 | 
			
		||||
            this.Given(x => WhenISetUpOcelotServices())
 | 
			
		||||
                .When(x => WhenISetUpAdministration(options))
 | 
			
		||||
 
 | 
			
		||||
@@ -192,7 +192,6 @@ namespace Ocelot.UnitTests.Errors
 | 
			
		||||
 | 
			
		||||
        private void ThenTheResponseIsError()
 | 
			
		||||
        {
 | 
			
		||||
 | 
			
		||||
            _downstreamContext.HttpContext.Response.StatusCode.ShouldBe(500);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -130,7 +130,6 @@ namespace Ocelot.UnitTests.Headers
 | 
			
		||||
 | 
			
		||||
        private void ThenTheResultIsError()
 | 
			
		||||
        {
 | 
			
		||||
 | 
			
		||||
            _result.IsError.ShouldBe(true);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -80,7 +80,6 @@ namespace Ocelot.UnitTests.Headers
 | 
			
		||||
 | 
			
		||||
            _downstreamContext.TemplatePlaceholderNameAndValues = dR.TemplatePlaceholderNameAndValues;
 | 
			
		||||
            _downstreamContext.DownstreamReRoute = dR.ReRoute.DownstreamReRoute[0];
 | 
			
		||||
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        private void ThenTheIHttpContextRequestHeaderReplacerIsCalledCorrectly()
 | 
			
		||||
 
 | 
			
		||||
@@ -22,6 +22,7 @@ namespace Ocelot.UnitTests.Headers
 | 
			
		||||
        {
 | 
			
		||||
            _replacer = new HttpResponseHeaderReplacer();
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        [Fact]
 | 
			
		||||
        public void should_replace_headers()
 | 
			
		||||
        {
 | 
			
		||||
 
 | 
			
		||||
@@ -27,7 +27,6 @@ namespace Ocelot.UnitTests.Infrastructure
 | 
			
		||||
        [Fact]
 | 
			
		||||
        public void get_returns_correct_key_from_http_context()
 | 
			
		||||
        {
 | 
			
		||||
 | 
			
		||||
            this.Given(x => x.GivenAHttpContextContaining("key", "string"))
 | 
			
		||||
                .When(x => x.GetIsCalledWithKey<string>("key"))
 | 
			
		||||
                .Then(x => x.ThenTheResultIsAnOkResponse<string>("string"))
 | 
			
		||||
@@ -83,6 +82,5 @@ namespace Ocelot.UnitTests.Infrastructure
 | 
			
		||||
            _result.ShouldBeOfType<OkResponse<T>>();
 | 
			
		||||
            ((OkResponse<T>)_result).Data.ShouldBe(resultValue);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -91,7 +91,6 @@ namespace Ocelot.UnitTests.LoadBalancer
 | 
			
		||||
            hostAndPortTwo.Data.DownstreamHost.ShouldBe("127.0.0.2");
 | 
			
		||||
            _leastConnection.Release(hostAndPortOne.Data);
 | 
			
		||||
            _leastConnection.Release(hostAndPortTwo.Data);
 | 
			
		||||
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        private async Task LeaseDelayAndRelease()
 | 
			
		||||
 
 | 
			
		||||
@@ -188,7 +188,6 @@ namespace Ocelot.UnitTests.LoadBalancer
 | 
			
		||||
        {
 | 
			
		||||
            _downstreamContext.IsError.ShouldBeTrue();
 | 
			
		||||
            _downstreamContext.Errors.ShouldBe(_getHostAndPortError.Errors);
 | 
			
		||||
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        private void ThenTheDownstreamUrlIsReplacedWith(string expectedUri)
 | 
			
		||||
 
 | 
			
		||||
@@ -58,7 +58,6 @@ namespace Ocelot.UnitTests.Middleware
 | 
			
		||||
        private void WhenIMultiplex()
 | 
			
		||||
        {
 | 
			
		||||
            _multiplexer.Multiplex(_context, _reRoute, _pipeline).GetAwaiter().GetResult();
 | 
			
		||||
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        private void ThePipelineIsCalled(int expected)
 | 
			
		||||
 
 | 
			
		||||
@@ -36,7 +36,6 @@ namespace Ocelot.UnitTests.Request
 | 
			
		||||
 | 
			
		||||
        public DownstreamRequestInitialiserMiddlewareTests()
 | 
			
		||||
        {
 | 
			
		||||
 | 
			
		||||
            _httpContext = new Mock<HttpContext>();
 | 
			
		||||
            _httpRequest = new Mock<HttpRequest>();
 | 
			
		||||
            _requestMapper = new Mock<IRequestMapper>();
 | 
			
		||||
 
 | 
			
		||||
@@ -9,13 +9,13 @@ namespace Ocelot.UnitTests.Requester
 | 
			
		||||
    {
 | 
			
		||||
        public FakeDelegatingHandler()
 | 
			
		||||
        {
 | 
			
		||||
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public FakeDelegatingHandler(int order)
 | 
			
		||||
        {
 | 
			
		||||
            Order = order;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public int Order {get;private set;}
 | 
			
		||||
        public DateTime TimeCalled {get;private set;}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -132,7 +132,6 @@ namespace Ocelot.UnitTests.ServiceDiscovery
 | 
			
		||||
            {     
 | 
			
		||||
                _registeredServices[serviceNameAndAddress.Name] = new List<Service>(){ serviceNameAndAddress };
 | 
			
		||||
            }          
 | 
			
		||||
            
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user