Resolve test server paths deterministically (#1735)

Copilot-Session: ad8afb00-2809-4785-8781-014a90c8abf1
This commit is contained in:
Pranav Senthilnathan 2026-07-25 22:30:22 -07:00 • committed by GitHub
commit 5f5d5eac50
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 9 additions and 5 deletions

View file

@ -16,6 +16,8 @@ public class ClientIntegrationTestFixture
public ClientIntegrationTestFixture() public ClientIntegrationTestFixture()
{ {
const string ServerEverythingVersion = "2026.1.26"; const string ServerEverythingVersion = "2026.1.26";
string testServerExecutable = Path.Combine(AppContext.BaseDirectory, "TestServer.exe");
string testServerDll = Path.Combine(AppContext.BaseDirectory, "TestServer.dll");
EverythingServerTransportOptions = new() EverythingServerTransportOptions = new()
{ {
@ -27,14 +29,14 @@ public class ClientIntegrationTestFixture
TestServerTransportOptions = new() TestServerTransportOptions = new()
{ {
Command = RuntimeInformation.IsOSPlatform(OSPlatform.Windows) ? "TestServer.exe" : PlatformDetection.IsMonoRuntime ? "mono" : "dotnet", Command = RuntimeInformation.IsOSPlatform(OSPlatform.Windows) ? testServerExecutable : PlatformDetection.IsMonoRuntime ? "mono" : "dotnet",
Name = "TestServer", Name = "TestServer",
}; };
if (!RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) if (!RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
{ {
// Change to Arguments to "mcp-server-everything" if you want to run the server locally after creating a symlink // Change to Arguments to "mcp-server-everything" if you want to run the server locally after creating a symlink
TestServerTransportOptions.Arguments = [PlatformDetection.IsMonoRuntime ? "TestServer.exe" : "TestServer.dll"]; TestServerTransportOptions.Arguments = [PlatformDetection.IsMonoRuntime ? testServerExecutable : testServerDll];
} }
} }

View file

@ -154,6 +154,8 @@ public class StdioClientTransportTests(ITestOutputHelper testOutputHelper) : Log
} }
string cliArgument = $"--cli-arg={cliArgumentValue}"; string cliArgument = $"--cli-arg={cliArgumentValue}";
string testServerExecutable = Path.Combine(AppContext.BaseDirectory, "TestServer.exe");
string testServerDll = Path.Combine(AppContext.BaseDirectory, "TestServer.dll");
StdioClientTransportOptions options = new() StdioClientTransportOptions options = new()
{ {
@ -161,14 +163,14 @@ public class StdioClientTransportTests(ITestOutputHelper testOutputHelper) : Log
Command = (PlatformDetection.IsMonoRuntime, PlatformDetection.IsWindows) switch Command = (PlatformDetection.IsMonoRuntime, PlatformDetection.IsWindows) switch
{ {
(true, _) => "mono", (true, _) => "mono",
(_, true) => "TestServer.exe", (_, true) => testServerExecutable,
_ => "dotnet", _ => "dotnet",
}, },
Arguments = (PlatformDetection.IsMonoRuntime, PlatformDetection.IsWindows) switch Arguments = (PlatformDetection.IsMonoRuntime, PlatformDetection.IsWindows) switch
{ {
(true, _) => ["TestServer.exe", cliArgument], (true, _) => [testServerExecutable, cliArgument],
(_, true) => [cliArgument], (_, true) => [cliArgument],
_ => ["TestServer.dll", cliArgument], _ => [testServerDll, cliArgument],
}, },
}; };