Files
WireMock.Net-wiremock/src/WireMock.Net/RequestBuilders/Request.ClientIP.cs
Stef Heyenrath 97a749d54a Fix some SonarCloud issues (#1058)
* Fix some SonarCloud issues

* added some xml comments
2024-02-17 13:32:28 +01:00

48 lines
1.3 KiB
C#

using System;
using Stef.Validation;
using WireMock.Matchers;
using WireMock.Matchers.Request;
namespace WireMock.RequestBuilders;
public partial class Request
{
/// <inheritdoc />
public IRequestBuilder WithClientIP(params IStringMatcher[] matchers)
{
return WithClientIP(MatchOperator.Or, matchers);
}
/// <inheritdoc />
public IRequestBuilder WithClientIP(MatchOperator matchOperator, params IStringMatcher[] matchers)
{
Guard.NotNullOrEmpty(matchers);
_requestMatchers.Add(new RequestMessageClientIPMatcher(MatchBehaviour.AcceptOnMatch, MatchOperator.Or, matchers));
return this;
}
/// <inheritdoc />
public IRequestBuilder WithClientIP(params string[] clientIPs)
{
return WithClientIP(MatchOperator.Or, clientIPs);
}
/// <inheritdoc />
public IRequestBuilder WithClientIP(MatchOperator matchOperator, params string[] clientIPs)
{
Guard.NotNullOrEmpty(clientIPs);
_requestMatchers.Add(new RequestMessageClientIPMatcher(MatchBehaviour.AcceptOnMatch, matchOperator, clientIPs));
return this;
}
/// <inheritdoc />
public IRequestBuilder WithClientIP(params Func<string, bool>[] funcs)
{
Guard.NotNullOrEmpty(funcs);
_requestMatchers.Add(new RequestMessageClientIPMatcher(funcs));
return this;
}
}