public static string Execute(string pathString, HttpRequestDurationsOptions options) { var result = pathString.ToLowerInvariant(); if (options.IncludeCustomNormalizePath) { result = options.CustomNormalizePath.Aggregate(result, (current, normalizePath) => normalizePath.Key.Replace(current, normalizePath.Value)); } return(result); }
public void Int_Right_WithSlash(uint id) // ID - can't be less 0 { var pathString = $"/path/to/{id}/"; var options = new HttpRequestDurationsOptions { CustomNormalizePath = new Dictionary <Regex, string> { { _intRegex, _intValue } } }; var path = NormalizePath.Execute(pathString, options); Assert.Equal($"/path/to/id/", path); }
public void Int_Center(uint id) { var pathString = $"/path/to/{id}/next"; var options = new HttpRequestDurationsOptions { CustomNormalizePath = new Dictionary <Regex, string> { { _intRegex, _intValue } } }; var path = NormalizePath.Execute(pathString, options); Assert.Equal($"/path/to/id/next", path); }
public void Guid_Right_WithSlash(string guid) { var pathString = $"/path/to/{guid}/"; var options = new HttpRequestDurationsOptions { CustomNormalizePath = new Dictionary <Regex, string> { { _guidRegex, _guidValue } } }; var path = NormalizePath.Execute(pathString, options); Assert.Equal($"/path/to/guid/", path); }