fix(claude-do): merge fix(worker): Port-Konflikt beim Start laut melden statt stil

ClaudeDo-Task: 1eb4cfcd-a31e-4216-8c05-88cd662a211b
This commit is contained in:
mika kuns
2026-09-10 13:33:28 +02:00
3 changed files with 85 additions and 8 deletions
@@ -0,0 +1,38 @@
using ClaudeDo.Worker.Lifecycle;
using Xunit;
namespace ClaudeDo.Worker.Tests.Lifecycle;
public sealed class WorkerStartupFailureTests
{
[Fact]
public void FormatBindFailureMessage_IncludesBothPorts_WhenExternalMcpEnabled()
{
var message = WorkerStartupFailure.FormatBindFailureMessage(
new IOException("Failed to bind to address http://127.0.0.1:47821: address already in use."),
signalRPort: 47821,
externalMcpPort: 47822);
Assert.Contains("47821", message);
Assert.Contains("47822", message);
Assert.Contains("address already in use", message);
}
[Fact]
public void FormatBindFailureMessage_OmitsExternalPort_WhenDisabled()
{
var message = WorkerStartupFailure.FormatBindFailureMessage(
new IOException("boom"),
signalRPort: 47821,
externalMcpPort: 0);
Assert.Contains("47821", message);
Assert.DoesNotContain("0", message);
}
[Fact]
public void ExitCode_IsNonZero()
{
Assert.NotEqual(0, WorkerStartupFailure.ExitCode);
}
}