mirror of
https://github.com/wiremock/WireMock.Net.git
synced 2026-04-28 03:07:01 +02:00
ok
This commit is contained in:
@@ -97,10 +97,6 @@ internal class WebSocketResponseProvider : IResponseProvider
|
|||||||
{
|
{
|
||||||
await HandleCustomAsync(wsContext, _builder.MessageHandler).ConfigureAwait(false);
|
await HandleCustomAsync(wsContext, _builder.MessageHandler).ConfigureAwait(false);
|
||||||
}
|
}
|
||||||
else if (_builder.MessageSequence != null)
|
|
||||||
{
|
|
||||||
await HandleSequenceAsync(wsContext, _builder.MessageSequence).ConfigureAwait(false);
|
|
||||||
}
|
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// Default: keep connection open until client closes
|
// 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)
|
private async Task HandleProxyAsync(WireMockWebSocketContext context, ProxyAndRecordSettings settings)
|
||||||
{
|
{
|
||||||
using var clientWebSocket = new ClientWebSocket();
|
using var clientWebSocket = new ClientWebSocket();
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
// Copyright © WireMock.Net
|
// Copyright © WireMock.Net
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Stef.Validation;
|
using Stef.Validation;
|
||||||
using WireMock.Settings;
|
using WireMock.Settings;
|
||||||
@@ -23,9 +22,6 @@ internal class WebSocketBuilder : IWebSocketBuilder
|
|||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
public Func<WebSocketMessage, IWebSocketContext, Task>? MessageHandler { get; private set; }
|
public Func<WebSocketMessage, IWebSocketContext, Task>? MessageHandler { get; private set; }
|
||||||
|
|
||||||
/// <inheritdoc />
|
|
||||||
public WebSocketMessageSequence? MessageSequence { get; private set; }
|
|
||||||
|
|
||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
public ProxyAndRecordSettings? ProxySettings { get; private set; }
|
public ProxyAndRecordSettings? ProxySettings { get; private set; }
|
||||||
|
|
||||||
@@ -65,7 +61,7 @@ internal class WebSocketBuilder : IWebSocketBuilder
|
|||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public IWebSocketBuilder WithMessage(Action<IWebSocketMessageBuilder> configure)
|
public IWebSocketBuilder SendMessage(Action<IWebSocketMessageBuilder> configure)
|
||||||
{
|
{
|
||||||
Guard.NotNull(configure);
|
Guard.NotNull(configure);
|
||||||
var messageBuilder = new WebSocketMessageBuilder();
|
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);
|
Guard.NotNull(configure);
|
||||||
var messagesBuilder = new WebSocketMessagesBuilder();
|
var messagesBuilder = new WebSocketMessagesBuilder();
|
||||||
@@ -109,15 +105,6 @@ internal class WebSocketBuilder : IWebSocketBuilder
|
|||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public IWebSocketBuilder WithMessageSequence(Action<IWebSocketMessageSequenceBuilder> configure)
|
|
||||||
{
|
|
||||||
var sequenceBuilder = new WebSocketMessageSequenceBuilder();
|
|
||||||
configure(sequenceBuilder);
|
|
||||||
MessageSequence = sequenceBuilder.Build();
|
|
||||||
IsEcho = false;
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public IWebSocketBuilder WithBroadcast()
|
public IWebSocketBuilder WithBroadcast()
|
||||||
{
|
{
|
||||||
IsBroadcast = true;
|
IsBroadcast = true;
|
||||||
|
|||||||
@@ -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;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
// Copyright © WireMock.Net
|
|
||||||
|
|
||||||
namespace WireMock.WebSockets;
|
|
||||||
|
|
||||||
internal class WebSocketMessageSequenceBuilder : IWebSocketMessageSequenceBuilder
|
|
||||||
{
|
|
||||||
public WebSocketMessageSequence Build()
|
|
||||||
{
|
|
||||||
return new WebSocketMessageSequence();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -28,14 +28,14 @@ public interface IWebSocketBuilder
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="configure">Action to configure the message</param>
|
/// <param name="configure">Action to configure the message</param>
|
||||||
[PublicAPI]
|
[PublicAPI]
|
||||||
IWebSocketBuilder WithMessage(Action<IWebSocketMessageBuilder> configure);
|
IWebSocketBuilder SendMessage(Action<IWebSocketMessageBuilder> configure);
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Configure and send multiple messages in response to any received message
|
/// Configure and send multiple messages in response to any received message
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="configure">Action to configure the messages</param>
|
/// <param name="configure">Action to configure the messages</param>
|
||||||
[PublicAPI]
|
[PublicAPI]
|
||||||
IWebSocketBuilder WithMessages(Action<IWebSocketMessagesBuilder> configure);
|
IWebSocketBuilder SendMessages(Action<IWebSocketMessagesBuilder> configure);
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Handle incoming WebSocket messages
|
/// Handle incoming WebSocket messages
|
||||||
@@ -43,12 +43,6 @@ public interface IWebSocketBuilder
|
|||||||
[PublicAPI]
|
[PublicAPI]
|
||||||
IWebSocketBuilder WithMessageHandler(Func<WebSocketMessage, IWebSocketContext, Task> handler);
|
IWebSocketBuilder WithMessageHandler(Func<WebSocketMessage, IWebSocketContext, Task> handler);
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Define a sequence of messages to send
|
|
||||||
/// </summary>
|
|
||||||
[PublicAPI]
|
|
||||||
IWebSocketBuilder WithMessageSequence(Action<IWebSocketMessageSequenceBuilder> configure);
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Enable broadcast mode for this mapping
|
/// Enable broadcast mode for this mapping
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
@@ -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
|
|
||||||
}
|
|
||||||
@@ -72,7 +72,7 @@ public class WebSocketIntegrationTests(ITestOutputHelper output)
|
|||||||
)
|
)
|
||||||
.RespondWith(Response.Create()
|
.RespondWith(Response.Create()
|
||||||
.WithWebSocket(ws => ws
|
.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()
|
.RespondWith(Response.Create()
|
||||||
.WithWebSocket(ws => ws
|
.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()
|
.RespondWith(Response.Create()
|
||||||
.WithWebSocket(ws => ws
|
.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()
|
.RespondWith(Response.Create()
|
||||||
.WithWebSocket(ws => ws
|
.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()
|
.RespondWith(Response.Create()
|
||||||
.WithWebSocket(ws => ws
|
.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()
|
.RespondWith(Response.Create()
|
||||||
.WithWebSocket(ws => ws
|
.WithWebSocket(ws => ws
|
||||||
.WithMessage(m => m.WithJson(responseData))
|
.SendMessage(m => m.WithJson(responseData))
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user