Skip to content

Commit 6306a21

Browse files
committed
Fix port numbers used by SSE server tests
1 parent a509f47 commit 6306a21

2 files changed

Lines changed: 8 additions & 3 deletions

File tree

tests/ModelContextProtocol.TestSseServer/Program.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -377,10 +377,12 @@ public static async Task MainAsync(string[] args, ILoggerProvider? loggerProvide
377377
{
378378
Console.WriteLine("Starting server...");
379379

380+
int port = args.Length > 0 && uint.TryParse(args[0], out var parsedPort) ? (int)parsedPort : 3001;
381+
380382
var builder = WebApplication.CreateSlimBuilder(args);
381383
builder.WebHost.ConfigureKestrel(options =>
382384
{
383-
options.ListenLocalhost(3001);
385+
options.ListenLocalhost(port);
384386
});
385387

386388
ConfigureSerilog(builder.Logging);

tests/ModelContextProtocol.Tests/SseServerIntegrationTestFixture.cs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,16 +17,19 @@ public class SseServerIntegrationTestFixture : IAsyncDisposable
1717

1818
public SseServerIntegrationTestFixture()
1919
{
20+
// Ensure that test suites running against different TFMs and possibly concurrently use different port numbers.
21+
int port = 3001 + Environment.Version.Major;
22+
2023
DefaultConfig = new McpServerConfig
2124
{
2225
Id = "test_server",
2326
Name = "TestServer",
2427
TransportType = TransportTypes.Sse,
2528
TransportOptions = [],
26-
Location = "http://localhost:3001/sse"
29+
Location = $"http://localhost:{port}/sse"
2730
};
2831

29-
_serverTask = Program.MainAsync([], new XunitLoggerProvider(_delegatingTestOutputHelper), _stopCts.Token);
32+
_serverTask = Program.MainAsync([port.ToString()], new XunitLoggerProvider(_delegatingTestOutputHelper), _stopCts.Token);
3033
}
3134

3235
public static McpClientOptions CreateDefaultClientOptions() => new()

0 commit comments

Comments
 (0)