Stumps.Rules.HeaderRule.IsMatch C# (CSharp) Method

IsMatch() public method

Determines whether the specified request matches the rule.
public IsMatch ( IStumpsHttpRequest request ) : bool
request IStumpsHttpRequest The to evaluate.
return bool
        public bool IsMatch(IStumpsHttpRequest request)
        {
            if (request == null || request.Headers == null)
            {
                return false;
            }

            var match = false;

            foreach (var headerName in request.Headers.HeaderNames)
            {

                var nameMatches = _nameTextMatch.IsMatch(headerName);

                if (!nameMatches)
                {
                    continue;
                }

                var valueMatches = _valueTextMatch.IsMatch(request.Headers[headerName]);

                if (!valueMatches)
                {
                    continue;
                }

                match = true;
                break;

            }

            return match;
        }

Usage Example

示例#1
0
        public void IsMatch_WithRegexNameAndExactValue_ReturnsExpected(
            string headerName, string headerValue, bool expectedResult)
        {
            var rule = new HeaderRule("regex:he.*me", "headervalue");

            var request = CreateWithHeaders(headerName, headerValue);

            Assert.AreEqual(expectedResult, rule.IsMatch(request));
        }
All Usage Examples Of Stumps.Rules.HeaderRule::IsMatch