Пример #1
0
        private double IsMatch(RequestMessage requestMessage)
        {
            if (requestMessage.Headers == null)
            {
                return(MatchBehaviourHelper.Convert(_matchBehaviour, MatchScores.Mismatch));
            }

            // Check if we want to use IgnoreCase to compare the Header-Name and Header-Value(s)
            var headers = !_ignoreCase ? requestMessage.Headers : new Dictionary <string, WireMockList <string> >(requestMessage.Headers, StringComparer.OrdinalIgnoreCase);

            if (Funcs != null)
            {
                return(MatchScores.ToScore(Funcs.Any(f => f(headers.ToDictionary(entry => entry.Key, entry => entry.Value.ToArray())))));
            }

            if (Matchers == null)
            {
                return(MatchScores.Mismatch);
            }

            if (!headers.ContainsKey(Name))
            {
                return(MatchBehaviourHelper.Convert(_matchBehaviour, MatchScores.Mismatch));
            }

            WireMockList <string> list = headers[Name];

            return(Matchers.Max(m => list.Max(value => m.IsMatch(value)))); // TODO : is this correct ?
        }
Пример #2
0
        private double IsMatch(RequestMessage requestMessage)
        {
            if (requestMessage.Headers == null)
            {
                return(MatchScores.Mismatch);
            }

            if (Funcs != null)
            {
                return(MatchScores.ToScore(Funcs.Any(f => f(requestMessage.Headers.ToDictionary(entry => entry.Key, entry => entry.Value.ToArray())))));
            }

            if (Matchers == null)
            {
                return(MatchScores.Mismatch);
            }

            if (!requestMessage.Headers.ContainsKey(Name))
            {
                return(MatchScores.Mismatch);
            }

            WireMockList <string> list = requestMessage.Headers[Name];

            return(Matchers.Max(m => list.Max(value => m.IsMatch(value)))); // TODO : is this correct ?
        }