Files
WireMock.Net-wiremock/src/WireMock.Net.Minimal/WebSockets/WebSocketMessageConditionBuilder.cs
Stef Heyenrath ecb3e249cc match
2026-02-11 15:19:32 +01:00

37 lines
1.1 KiB
C#

// Copyright © WireMock.Net
using WireMock.Matchers;
using Stef.Validation;
namespace WireMock.WebSockets;
internal class WebSocketMessageConditionBuilder : IWebSocketMessageConditionBuilder
{
private readonly WebSocketBuilder _parent;
private readonly IMatcher _matcher;
public WebSocketMessageConditionBuilder(WebSocketBuilder parent, IMatcher matcher)
{
_parent = Guard.NotNull(parent);
_matcher = Guard.NotNull(matcher);
}
public IWebSocketBuilder SendMessage(Action<IWebSocketMessageBuilder> configure)
{
Guard.NotNull(configure);
var messageBuilder = new WebSocketMessageBuilder();
configure(messageBuilder);
return _parent.AddConditionalMessage(_matcher, messageBuilder);
}
public IWebSocketBuilder SendMessages(Action<IWebSocketMessagesBuilder> configure)
{
Guard.NotNull(configure);
var messagesBuilder = new WebSocketMessagesBuilder();
configure(messagesBuilder);
return _parent.AddConditionalMessages(_matcher, messagesBuilder.Messages);
}
}