Summary

Class:WireMock.Matchers.Request.RequestMessageMethodMatcher
Assembly:WireMock.Net
File(s):C:\Users\azureuser\Documents\Github\WireMock.Net\src\WireMock.Net\Matchers\Request\RequestMessageMethodMatcher.cs
Covered lines:14
Uncovered lines:0
Coverable lines:14
Total lines:45
Line coverage:100%

Metrics

MethodCyclomatic complexity NPath complexity Sequence coverage Branch coverage
GetMatchingScore(...)0010
IsMatch(...)0010
.ctor(...)0010

File(s)

C:\Users\azureuser\Documents\Github\WireMock.Net\src\WireMock.Net\Matchers\Request\RequestMessageMethodMatcher.cs

#LineLine coverage
 1using System;
 2using System.Linq;
 3using JetBrains.Annotations;
 4using WireMock.Validation;
 5
 6namespace WireMock.Matchers.Request
 7{
 8    /// <summary>
 9    /// The request verb matcher.
 10    /// </summary>
 11    internal class RequestMessageMethodMatcher : IRequestMatcher
 12    {
 13        private readonly MatchBehaviour _matchBehaviour;
 14
 15        /// <summary>
 16        /// The methods
 17        /// </summary>
 29218        public string[] Methods { get; }
 19
 20        /// <summary>
 21        /// Initializes a new instance of the <see cref="RequestMessageMethodMatcher"/> class.
 22        /// </summary>
 23        /// <param name="matchBehaviour">The match behaviour.</param>
 24        /// <param name="methods">The methods.</param>
 25825        public RequestMessageMethodMatcher(MatchBehaviour matchBehaviour, [NotNull] params string[] methods)
 25826        {
 25827            Check.NotNull(methods, nameof(methods));
 25828            _matchBehaviour = matchBehaviour;
 29
 25830            Methods = methods;
 25831        }
 32
 33        /// <inheritdoc cref="IRequestMatcher.GetMatchingScore"/>
 34        public double GetMatchingScore(RequestMessage requestMessage, RequestMatchResult requestMatchResult)
 29235        {
 29236            double score = MatchBehaviourHelper.Convert(_matchBehaviour, IsMatch(requestMessage));
 29237            return requestMatchResult.AddScore(GetType(), score);
 29238        }
 39
 40        private double IsMatch(RequestMessage requestMessage)
 29241        {
 29242            return MatchScores.ToScore(Methods.Contains(requestMessage.Method, StringComparer.OrdinalIgnoreCase));
 29243        }
 44    }
 45}