This commit is contained in:
Stef Heyenrath
2026-02-11 08:10:52 +01:00
parent 842a4e0aeb
commit cbd73eed0b
7 changed files with 10 additions and 74 deletions

View File

@@ -97,10 +97,6 @@ internal class WebSocketResponseProvider : IResponseProvider
{
await HandleCustomAsync(wsContext, _builder.MessageHandler).ConfigureAwait(false);
}
else if (_builder.MessageSequence != null)
{
await HandleSequenceAsync(wsContext, _builder.MessageSequence).ConfigureAwait(false);
}
else
{
// Default: keep connection open until client closes
@@ -216,11 +212,6 @@ internal class WebSocketResponseProvider : IResponseProvider
}
}
private async Task HandleSequenceAsync(WireMockWebSocketContext context, WebSocketMessageSequence sequence)
{
await sequence.ExecuteAsync(context).ConfigureAwait(false);
}
private async Task HandleProxyAsync(WireMockWebSocketContext context, ProxyAndRecordSettings settings)
{
using var clientWebSocket = new ClientWebSocket();

View File

@@ -1,7 +1,6 @@
// Copyright © WireMock.Net
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using Stef.Validation;
using WireMock.Settings;
@@ -23,9 +22,6 @@ internal class WebSocketBuilder : IWebSocketBuilder
/// <inheritdoc />
public Func<WebSocketMessage, IWebSocketContext, Task>? MessageHandler { get; private set; }
/// <inheritdoc />
public WebSocketMessageSequence? MessageSequence { get; private set; }
/// <inheritdoc />
public ProxyAndRecordSettings? ProxySettings { get; private set; }
@@ -65,7 +61,7 @@ internal class WebSocketBuilder : IWebSocketBuilder
return this;
}
public IWebSocketBuilder WithMessage(Action<IWebSocketMessageBuilder> configure)
public IWebSocketBuilder SendMessage(Action<IWebSocketMessageBuilder> configure)
{
Guard.NotNull(configure);
var messageBuilder = new WebSocketMessageBuilder();
@@ -82,7 +78,7 @@ internal class WebSocketBuilder : IWebSocketBuilder
});
}
public IWebSocketBuilder WithMessages(Action<IWebSocketMessagesBuilder> configure)
public IWebSocketBuilder SendMessages(Action<IWebSocketMessagesBuilder> configure)
{
Guard.NotNull(configure);
var messagesBuilder = new WebSocketMessagesBuilder();
@@ -109,15 +105,6 @@ internal class WebSocketBuilder : IWebSocketBuilder
return this;
}
public IWebSocketBuilder WithMessageSequence(Action<IWebSocketMessageSequenceBuilder> configure)
{
var sequenceBuilder = new WebSocketMessageSequenceBuilder();
configure(sequenceBuilder);
MessageSequence = sequenceBuilder.Build();
IsEcho = false;
return this;
}
public IWebSocketBuilder WithBroadcast()
{
IsBroadcast = true;

View File

@@ -1,14 +0,0 @@
// Copyright © WireMock.Net
using System.Threading.Tasks;
namespace WireMock.WebSockets;
// Placeholder classes for future implementation
internal class WebSocketMessageSequence
{
public Task ExecuteAsync(WireMockWebSocketContext context)
{
return Task.CompletedTask;
}
}

View File

@@ -1,11 +0,0 @@
// Copyright © WireMock.Net
namespace WireMock.WebSockets;
internal class WebSocketMessageSequenceBuilder : IWebSocketMessageSequenceBuilder
{
public WebSocketMessageSequence Build()
{
return new WebSocketMessageSequence();
}
}

View File

@@ -28,14 +28,14 @@ public interface IWebSocketBuilder
/// </summary>
/// <param name="configure">Action to configure the message</param>
[PublicAPI]
IWebSocketBuilder WithMessage(Action<IWebSocketMessageBuilder> configure);
IWebSocketBuilder SendMessage(Action<IWebSocketMessageBuilder> configure);
/// <summary>
/// Configure and send multiple messages in response to any received message
/// </summary>
/// <param name="configure">Action to configure the messages</param>
[PublicAPI]
IWebSocketBuilder WithMessages(Action<IWebSocketMessagesBuilder> configure);
IWebSocketBuilder SendMessages(Action<IWebSocketMessagesBuilder> configure);
/// <summary>
/// Handle incoming WebSocket messages
@@ -43,12 +43,6 @@ public interface IWebSocketBuilder
[PublicAPI]
IWebSocketBuilder WithMessageHandler(Func<WebSocketMessage, IWebSocketContext, Task> handler);
/// <summary>
/// Define a sequence of messages to send
/// </summary>
[PublicAPI]
IWebSocketBuilder WithMessageSequence(Action<IWebSocketMessageSequenceBuilder> configure);
/// <summary>
/// Enable broadcast mode for this mapping
/// </summary>

View File

@@ -1,11 +0,0 @@
// Copyright © WireMock.Net
namespace WireMock.WebSockets;
/// <summary>
/// WebSocket Message Sequence Builder interface (placeholder for future implementation)
/// </summary>
public interface IWebSocketMessageSequenceBuilder
{
// Future: Methods for building message sequences
}

View File

@@ -72,7 +72,7 @@ public class WebSocketIntegrationTests(ITestOutputHelper output)
)
.RespondWith(Response.Create()
.WithWebSocket(ws => ws
.WithMessage(m => m.WithText(responseMessage))
.SendMessage(m => m.WithText(responseMessage))
)
);
@@ -117,7 +117,7 @@ public class WebSocketIntegrationTests(ITestOutputHelper output)
)
.RespondWith(Response.Create()
.WithWebSocket(ws => ws
.WithMessage(m => m.WithText(responseMessage))
.SendMessage(m => m.WithText(responseMessage))
)
);
@@ -161,7 +161,7 @@ public class WebSocketIntegrationTests(ITestOutputHelper output)
)
.RespondWith(Response.Create()
.WithWebSocket(ws => ws
.WithMessage(m => m.WithBytes(responseBytes))
.SendMessage(m => m.WithBytes(responseBytes))
)
);
@@ -207,7 +207,7 @@ public class WebSocketIntegrationTests(ITestOutputHelper output)
)
.RespondWith(Response.Create()
.WithWebSocket(ws => ws
.WithMessage(m => m.WithBytes(responseBytes))
.SendMessage(m => m.WithBytes(responseBytes))
)
);
@@ -258,7 +258,7 @@ public class WebSocketIntegrationTests(ITestOutputHelper output)
)
.RespondWith(Response.Create()
.WithWebSocket(ws => ws
.WithMessage(m => m.WithJson(responseData))
.SendMessage(m => m.WithJson(responseData))
)
);
@@ -311,7 +311,7 @@ public class WebSocketIntegrationTests(ITestOutputHelper output)
)
.RespondWith(Response.Create()
.WithWebSocket(ws => ws
.WithMessage(m => m.WithJson(responseData))
.SendMessage(m => m.WithJson(responseData))
)
);